isobit-ui 1.2.1 → 1.2.2

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/library.js CHANGED
@@ -1 +1 @@
1
- "use strict";var vue=require("vue"),pinia=require("pinia"),axios$2=require("axios"),Observable=require("ol/Observable"),ol$1=require("ol"),FullScreen=require("ol/control/FullScreen"),GeoJSON=require("ol/format/GeoJSON"),VectorLayer=require("ol/layer/Vector"),VectorSource=require("ol/source/Vector"),style=require("ol/style"),Control=require("ol/control/Control");require("ol/ol.css");var PointerInteraction=require("ol/interaction/Pointer"),Feature=require("ol/Feature"),Map=require("ol/Map");require("ol/interaction/Pointer.js"),require("ol/interaction/defaults");var View=require("ol/View"),geom=require("ol/geom");require("ol/interaction/Select");var proj=require("ol/proj"),layer=require("ol/layer"),source=require("ol/source");require("ol/interaction/Translate");var _imports_0=require("@/cdn/images/triangle-down.svg"),vueRouter=require("vue-router"),vueFontawesome=require("@fortawesome/vue-fontawesome"),freeRegularSvgIcons=require("@fortawesome/free-regular-svg-icons"),script$t={name:"InputText"};const _hoisted_1$k={type:"text"};function render$m(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("input",_hoisted_1$k)}script$t.render=render$m,script$t.__file="src/InputText.vue";var script$s={name:"InputTextarea"};function render$l(e,t,l,o,a,n){return" text "}script$s.render=render$l,script$s.__file="src/InputTextarea.vue";const _$1={stores:[],_id:0,axios_get:null,storeFunction:{}},log=(e,...t)=>{e&&console.log(e,...t)};let configApp={};function setupApp({pinia:e,axios:t,router:l}){configApp.pinia=e||pinia.createPinia(),t&&(configApp.axios=t),l&&(configApp.router=l),pinia.setActivePinia(configApp.pinia)}function getConfigApp(){return configApp}function getPiniaInstance(){return pinia.getActivePinia()||configApp.pinia}const id=()=>_$1._id++,num=e=>e=e?""==e?null:Number(""+e):0,date=(e,t)=>{if(e){let l;if(e instanceof Date)l=e;else if("string"==typeof e){let t=e.includes("T")?e.split("T"):e.split(" ");l=t[0].split("-"),t.length>1?(t=t[1].split(":"),l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2]),parseInt(t[0]),parseInt(t[1]),t.length>2?parseInt(t[2]):0)):l.length>2?l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2])):(l=e.split(":"),l=l.length>2?new Date(1981,0,6,parseInt(l[0]),parseInt(l[1]),parseInt(l[2])):new Date(e))}else l=new Date(e);if(1==t)e=l;else if("time"===t)e=pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2);else if("time a"==t)if("string"==typeof e||e instanceof String){let t=(e=e.split(":"))[0];e=pad(t>12?t-12:t,2)+":"+e[1]+":"+e[2]+" "+(t>12?"PM":"AM")}else h=l.getHours(),e=pad(h>12?h-12:h,2)+":"+pad(l.getMinutes(),2)+(l.setSeconds()?":"+pad(l.setSeconds(),2):"")+" "+(h>12?"PM":"AM");else e="date-"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2):"dMY"==t||"date"==t?pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4):"datetime"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2)+"T"+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2):pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4)+" "+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)}return e},whichChild=e=>{let t=0;for(;null!=(e=e.previousElementSibling);)++t;return t},unmask=e=>{e&&(e.style.display="none",e.parentNode&&e.parentNode.removeChild(e))},isObject=e=>e&&"object"==typeof e&&!Array.isArray(e),mergeDeep=function(){let e=arguments[0],t=[];for(let e=1;e<arguments.length;e++)t.push(arguments[e]);if(!t.length)return e;let l,o=t.shift();if(isObject(e)&&isObject(o))for(let t in o)isObject(o[t])?(e[t]||(l={},l[t]={},Object.assign(e,l)),mergeDeep(e[t],o[t])):(l={},l[t]=o[t],Object.assign(e,l));let a=[];return a.push(e),a.concat(t),mergeDeep.apply(null,a)},buildPopupMenu=e=>{let t=e.getAttribute("v--popup");if(!t){e.setAttribute("v--popup",t=id());let l=_$1.storeFunction[t],o=e.querySelectorAll(".v-datatable-header .v-button");o&&o.length&&!l&&window.innerWidth<=700&&setTimeout(function(){l=document.createElement("ul"),l.className="v-popup-2",e.appendChild(l);let a=null;const n=e=>{l.style.display="none";let t=e.target.getAttribute("commandId"),o=document.querySelector("#"+t);"BUTTON"==o.tagName?o.click():o.children[0].click(),unmask(a)};e.style.position="relative";let r=document.createElement("div");r.className="v-mobil v-table-buttons";let s=document.createElement("i");s.className="fa fa-bars fa-w-14",r.appendChild(s),r.onclick=()=>{for(o=e.querySelectorAll(".v-datatable-header .v-button");l.firstChild;)l.removeChild(l.firstChild);for(s=0;s<o.length;s++)if("none"!=o[s].style.display){let e=document.createElement("li");if(o[s].id||(o[s].id="c-"+id()),e.setAttribute("commandId",o[s].id),"BUTTON"==o[s].tagName){if(o[s].disabled)continue;e.appendChild(o[s].children[0].cloneNode(!0)),e.appendChild(document.createTextNode(o[s].value?o[s].value:o[s].title))}else o[s].children[0].children[1]&&(e.appendChild(o[s].children[0].children[1]),e.appendChild(document.createTextNode(o[s].textContent)));e.onclick=n,l.appendChild(e)}a=mask(l),l.style.display="block",a.onclick=()=>{l.style.display="none",unmask(a)}},e.appendChild(r),_$1.storeFunction[t]=l},500)}},resize=()=>{},mask=(e,t)=>{if(!document.body)return;let l,o=document.createElement("div");o.style="top:50%;transform:translate(-50%,-50%);position:absolute;width:100%;z-index:2; display: flex;justify-content: center;";let a=o.style;if(a.left="50%",a.textAlign="center",!1!==e)if(e instanceof Element)o=e;else{if(e){let t=document.createElement("div");t.innerHTML=e,o.append(t),o.style="padding:4px;margin-bottom:5px;color:white;font-size:24px;text-align:center"}l=document.createElement("div"),a=l.style,l.className="loading"}let n=document.createElement("div");a=n.style,a.height="100%",a.top="0px",a.position="absolute",a.left="0",a.zIndex="10000",a.width="100%";let r=document.createElement("div");return r.className="v-overlay",n.appendChild(r),o.style.zIndex="1001",n.appendChild(o),n.className="v-mask",l&&o.appendChild(l),document.body.appendChild(n),n};function normalizeArgs(e,t){const l={buttons:[{label:"OK"}],closeOnEsc:!0,closeOnOutsideClick:!1,fade:!0};return e?"function"==typeof e?(l.onClose=e,Array.isArray(t)&&(l.buttons=normalizeButtons(t)),l):Array.isArray(e)?(l.buttons=normalizeButtons(e),l):{...l,...e,buttons:e.buttons?normalizeButtons(e.buttons):l.buttons}:l}function normalizeButtons(e){return e.map(e=>"string"==typeof e?{label:e}:e)}const MsgBox$1=(e,t,l)=>{const o=normalizeArgs(t,l),a=document.createElement("div");a.className="v-overlay",a.style.zIndex="2000",a.style.opacity="0",a.style.transition="opacity 0.2s ease";const n=document.createElement("div");n.className="v-dialog v-msgbox",n.style.opacity="0",n.style.transform="scale(0.95)",n.style.transition="all 0.2s ease";const r=document.createElement("div");r.className="v-dialog-content v-widget-content";const s=document.createElement("div");let i;s.className="v-msgbox-buttons";let u=null,c=null;e instanceof Element?(i=e,u=e.parentNode,c=e.nextSibling):(i=document.createElement("div"),i.innerHTML=e),r.appendChild(i);const d=async(e=null)=>{let t;o.onClose&&(t=await o.onClose(e)),!1!==t&&(u&&(c?u.insertBefore(i,c):u.appendChild(i)),o.fade?(a.style.opacity="0",n.style.opacity="0",n.style.transform="scale(0.95)",setTimeout(()=>a.remove(),200)):a.remove(),document.removeEventListener("keydown",v))};o.buttons?.length&&(o.buttons.forEach((e,t)=>{const l=document.createElement("button");if(l.type="button",l.className="_ ui-widget ui-state-default ui-corner-all v-button blue v-button-text-icon-left",l.setAttribute("value",e.label),e.icon){l.setAttribute("icon",e.icon);const t=document.createElement("i");t.className="fa "+e.icon,l.appendChild(t)}const o=document.createElement("span");o.textContent=e.label,l.appendChild(o),l.addEventListener("click",()=>d(t)),s.appendChild(l)}),r.appendChild(s)),n.appendChild(r),a.appendChild(n),a.closeDialog=d,document.body.appendChild(a),o.fade&&requestAnimationFrame(()=>{a.style.opacity="1",n.style.opacity="1",n.style.transform="scale(1)"});const v=e=>{o.closeOnEsc&&"Escape"===e.key&&d()};document.addEventListener("keydown",v),o.closeOnOutsideClick&&a.addEventListener("click",e=>{e.target===a&&d(null)});let p=n.querySelector(".v-js-close");if(!p){let e=document.createElement("span");e.className="fa fa-close",p=document.createElement("a"),p.className="v-js-close ui-dialog-titlebar-icon ui-dialog-titlebar-close ui-corner-all",p.appendChild(e),n.style.position="relative",n.appendChild(p),p.addEventListener("click",()=>d())}},configureAxios=e=>{if(e.configured)return;let t;e.configured=1,_$1.axios_get=e.get,e.interceptors.request.use(l=>(e.noInterceptor||(_$1.eeee=l,l.mask?l.mask():t||(t=mask())),l),e=>(t=unmask(t),MsgBox$1("request "+id()+" "+e.message),Promise.reject(e))),e.interceptors.response.use(l=>(t=unmask(t),delete e.noInterceptor,l),l=>{if(console.log("interceptors.response.use.error"),e.noInterceptor)return delete e.noInterceptor,t=unmask(t),Promise.reject(l);if(e.error&&0==e.error(l))t=unmask(t);else{let e,o=l.response;if(o&&("string"==typeof o.data?e=o.data:o.data&&(o.data.data&&(e=o.data.data.message),e||(e=o.data.msg||o.data.message||o.data.detail)),e||(e=o.status+": "+o.statusText)),e||(e=l.message),t=unmask(t),o&&(401==o.status||403==o.status)){const e=app();if(e&&localStorage.getItem("session"))return e.axios.noInterceptor=1,void e.axios.post(e.axios.VITE_LOGIN_PATH+"/validate",{JWT:"YOUR_JWT_HERE"}).catch(t=>{console.log("e.response=",t),t.response.data.success||MsgBox$1("Session terminada!",()=>{e.logout()})})}l.config?.error?l.config.error(l,e):l.request?MsgBox$1("<b>"+l.request.responseURL+"</b><br/><br/>"+e):MsgBox$1(e)}return delete e.error,Promise.reject(l)})},pad=(e,t)=>{if(null!=e){let l=1*e+"";for(;l.length<t;)l="0"+l;return l}},clean=e=>{const t={...e};for(let e in t)""!==t[e]&&null!==t[e]&&"function"!=typeof t[e]&&void 0!==t[e]||delete t[e];return t},sum=e=>(void 0).reduce((t,l)=>t+((l=e?l[e]:l)?Number(l):0),0);function createGetters(){return{get networkStatus(){return _$1.app?.networkStatus||{connected:!0}},get db(){return _$1.app?.db},app:()=>_$1.app,setApp(e){_$1.app=e}}}const app=()=>_$1.app,db=()=>_$1.db,initDB=(e,t)=>{let l=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;if(_$1.IDBTransaction=window.IDBTransaction||window.webkitIDBTransaction||window.msIDBTransaction,_$1.IDBKeyRange=window.IDBKeyRange||window.webkitIDBKeyRange||window.msIDBKeyRange,l){if(l)return _$1.stores=t,new Promise((o,a)=>{l.databases().then(n=>{const r=n.find(e=>"db"===e.name),s=r&&r.version||0;if(s<e){console.log(`Eliminando base de datos (versión actual: ${s}, nueva versión: ${e})`);const n=l.deleteDatabase("db");n.onblocked=e=>{console.error("DELETE DATABASE BLOCKED",e)},n.onerror=e=>{console.error("DELETE DATABASE ERROR",e),a(n.error)},n.onsuccess=()=>{sessionStorage.removeItem("loadedStores");let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}}else{let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}})})}else window.alert("Your browser doesn't support a stable version of IndexedDB.");return l},getStoredList=async(e,t)=>{const l=db();let o;try{o=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==o&&(o={}),!o[e]&&networkStatus.connected){const t=_$1.stores.filter(t=>t[0]==e);if(!t.length)throw`ERROR: store '${e}' no exists!`;let a=t[0];const{src:n}=a[1];if(!n)throw`ERROR: Url for store '${a[0]}' is empty!`;let{data:r}=await _$1.axios_get(n);r=r.data||r,await new Promise((t,n)=>{let s=l.transaction([a[0]],"readwrite"),i=s.objectStore(a[0]);const u=i.clear();u.onsuccess=()=>{r.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},u.onerror=()=>{console.error(`⚠️ Store '${a[0]}' error data!`,a)},s.oncomplete=()=>{o[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(o)),t()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),n()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},getters=createGetters(),{networkStatus:networkStatus,setApp:setApp}=getters,deleteAllCookies=()=>{const e=document.cookie.split(";");for(let t of e){const e=t.split("=")[0].trim();document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`}},useAppStore=pinia.defineStore("connection",()=>{const e=getPiniaInstance(),t=getConfigApp();if(!e)throw new Error("Pinia no ha sido inicializado. Llama a setupPinia() en tu app.");const l=vue.ref(!1),o=vue.ref(!1),a=vue.ref(t.router),n=vue.ref(t.axios),r=vue.ref(null),s=vue.ref(null);l.value="false"!==localStorage.getItem("connected");const i=e=>{setTimeout(()=>{r.value&&(n.value.noInterceptor=1,n.value.post(n.value.VITE_LOGIN_PATH+"/refresh",{}).then(({data:t})=>{const{token:l,user_nicename:o,perms:a}=t;r.value={token:l,people:{display_name:o},perms:a},e(i)}).catch(e=>{console.error(e)}))},6e5)};let u;vue.watch(r,e=>{e&&e.token?(n.value.defaults.headers.common={Authorization:"Bearer "+e.token},localStorage.setItem("session",JSON.stringify(e)),u||(u=i,i(i))):(localStorage.removeItem("session"),u=null)});const c=localStorage.getItem("session");r.value=c?JSON.parse(c):null,vue.watch(l,e=>{localStorage.setItem("connected",String(e))});const d=vue.computed(()=>s.value?.connected),v=vue.computed(()=>!!r.value?.token);return{connected:l,session:r,logout:()=>{r.value=null,deleteAllCookies(),a.value.push("/login")},unauthorized:o,connect:e=>{r.value=e,a.value.push("/admin")},authenticated:v,config:({axios:e,router:t})=>{t&&(a.value=t),e&&(n.value=e,configureAxios(e))},axios:n,router:a,online:d,networkStatusChange:e=>{s.value=e}}});var script$r={name:"VAutocomplete",props:{modelValue:{type:Object,default:null},data:{type:Array,default:()=>null},placeholder:String,label:String,default:Object,store:String,params:Object,autoload:{type:Boolean,default:!1},floating:{type:Boolean,default:!0},src:String,readonly:Boolean,nowrap:Boolean,disabled:Boolean,showSelection:{type:Boolean,default:!0},pagination:{type:Number,default:10}},setup(e,t){const{emit:l,slots:o}=t;useAppStore();const a=vue.ref(0),n=vue.ref(null),r=vue.ref(-1),s=vue.ref(""),i=vue.ref(null),u=vue.ref(!1),c=vue.ref(0),d=vue.ref(""),v=vue.ref(null);vue.watch(()=>e.modelValue,e=>{console.log("==============>",e),n.value=e}),vue.watch(()=>e.data,e=>{i.value=e}),vue.onMounted(()=>{d.value=e.inputClass,e.autoload&&m(),document.addEventListener("click",f)}),vue.onBeforeUnmount(()=>{document.removeEventListener("click",f)});const p=vue.computed(()=>{r.value=-1;const e=s.value?s.value.trim().toLowerCase().split(/[ ,]+/):null;return i.value&&s.value?i.value.filter(t=>{const l=JSON.stringify(t).toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"");return e.every(e=>l.includes(e))}):i.value}),m=async t=>{const{src:o,source:n}=e;let r=Number(e.pagination);if(1===t)a.value+=r;else if(a.value=0,e.data&&e.autoload)return;let d={query:s.value};e.params&&(d=mergeDeep(d,e.params)),axios$2.get((o||e.source)+(r>0?"/"+a.value+"/"+r:""),{params:d}).then(l=>{const o=l.data;console.log(o),o.error?MsgBox(o.error):(i.value=1===t?i.value.concat(o.data?o.data:o):o.data?o.data:o,console.log(i),c.value=o.size,e.autoload||(u.value=!0),console.log("========================="))}).catch(h).then(()=>{l("complete",{data:i.value,query:s.value,target:"me"})})},h=e=>{console.log(e)},f=e=>{const t=v.value;t&&!t.contains(e.target)&&(u.value=!1)};return{query:s,show:u,selected:n,data2:p,focused:r,autocomplete:v,inputClass:d,search:m,remove:()=>{n.value=null,l("update:modelValue",null)},clickout:f,focusout:e=>{},setSelected:e=>{n.value=e,l("update:modelValue",e)},getLabel:t=>{if(e.label){const l=e.label.split(".");for(let e=0;e<l.length;e++)t&&(t=t[l[e]])}return t},hasSlot:(e="default")=>!!o[e]}}};const _hoisted_1$j=["value","disabled"],_hoisted_2$a=["disabled","placeholder"],_hoisted_3$7={class:"v-list"},_hoisted_4$6=["onClick"],_hoisted_5$1={key:0,class:"center yellow",style:{padding:"5px"}};function render$k(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",{class:"v-autocomplete",onFocusout:t[7]||(t[7]=(...e)=>o.focusout&&o.focusout(...e)),ref:"autocomplete",value:e.value,disabled:l.disabled},[o.selected&&l.showSelection?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"v-selection",style:vue.normalizeStyle({whiteSpace:l.nowrap?"nowrap":""})},[vue.renderSlot(e.$slots,"label",{selected:o.selected}),vue.createTextVNode(" "+vue.toDisplayString(o.hasSlot("label")?" ":o.getLabel(o.selected))+"  ",1),l.readonly?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("span",{key:0,onClick:t[0]||(t[0]=(...e)=>o.remove&&o.remove(...e)),class:"remove-icon"},[...t[8]||(t[8]=[vue.createElementVNode("i",{class:"fa fa-times"},null,-1)])]))],4)):vue.createCommentVNode("v-if",!0),o.selected?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("span",{key:1,onClick:t[1]||(t[1]=(...e)=>o.search&&o.search(...e)),class:"search-icon"},[...t[9]||(t[9]=[vue.createElementVNode("i",{class:"fa fa-xs fa-sync"},null,-1)])])),o.selected?vue.createCommentVNode("v-if",!0):vue.withDirectives((vue.openBlock(),vue.createElementBlock("input",{key:2,onKeyup:[t[2]||(t[2]=(...t)=>e.keyup&&e.keyup(...t)),t[3]||(t[3]=vue.withKeys(vue.withModifiers((...e)=>o.search&&o.search(...e),["stop","prevent"]),["enter"]))],class:vue.normalizeClass(o.inputClass),onFocus:t[4]||(t[4]=e=>o.show=!0),disabled:l.disabled,placeholder:l.placeholder,"onUpdate:modelValue":t[5]||(t[5]=e=>o.query=e)},null,42,_hoisted_2$a)),[[vue.vModelText,o.query]]),vue.createVNode(vue.Transition,{name:"fade",persisted:""},{default:vue.withCtx(()=>[vue.withDirectives(vue.createElementVNode("div",{class:"v-resultpane",style:vue.normalizeStyle({zIndex:2,width:"calc(100% - 2px)",position:l.floating?"absolute":"relative"})},[vue.createElementVNode("div",_hoisted_3$7,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(o.data2,(t,l)=>(vue.openBlock(),vue.createElementBlock("div",{key:l,class:vue.normalizeClass({"v-selected":o.selected==t,"v-focused":o.focused==l}),onClick:e=>o.setSelected(t)},[vue.renderSlot(e.$slots,"default",{row:t})],10,_hoisted_4$6))),128)),e.data0&&e.data0.length<e.total?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"center",onClick:t[6]||(t[6]=e=>o.search(1))},"Load more "+vue.toDisplayString(e.total-e.data0.length)+" results...",1)):vue.createCommentVNode("v-if",!0)]),o.data2&&o.data2.length<1?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$1,"No results found.")):vue.createCommentVNode("v-if",!0)],4),[[vue.vShow,o.show&&!o.selected]])]),_:3})],40,_hoisted_1$j)}script$r.render=render$k,script$r.__scopeId="data-v-72884078",script$r.__file="src/v-autocomplete.vue";var script$q={name:"VButton",mounted(){var e=this,t=document.createElement("span"),l=document.createElement("i");t.className="ui-button-text ui-c ",t.innerHTML=e.$attrs.value?e.$attrs.value:"ui-button",e.$el.addEventListener("click",t=>{t.component=e}),e.$attrs.icon?(e.$attrs.value?e.$el.classList.add("v-button-text-icon-left"):e.$el.classList.add("v-button-icon-only"),l.dataset.icon=e.$attrs.icon,l.className="fa "+e.$attrs.icon,e.$el.appendChild(l)):(t=document.createElement("span"),e.$el.classList.add("ui-button-text-only"),e.$el.appendChild(t)),e.$attrs.value&&((t=document.createElement("span")).appendChild(document.createTextNode(e.$attrs.value)),e.$el.appendChild(t)),e.updateIcon()},methods:{updateIcon(){var e=this;setTimeout(function(){var t=e.$el.querySelector("svg");if(t){var l=t.dataset;l.icon||(l.icon=e.$attrs.icon)}},1e3)}}};const _hoisted_1$i={type:"button",class:"_ ui-widget ui-state-default ui-corner-all v-button"};function render$j(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("button",_hoisted_1$i)}script$q.render=render$j,script$q.__file="src/v-button.vue";var script$p={name:"VCalendar",props:{modelValue:null,type:String,required:String,readonly:String,max:String,min:String},setup(e,{emit:t}){const l=vue.ref(null),o=e=>{t("update:modelValue",e),vue.nextTick(()=>{t("changed",e)})},a=t=>{if(!t)return t;if("time"===e.type){const e=t.split(":");return new Date(1981,1,6,parseInt(e[0]),parseInt(e[1]),e.length>2?parseInt(e[2]):0)}if(!isNaN(t))return new Date(Number(t));if("datetime-local"===e.type){let e=t.split("T");const l=e[1].split(":");return e=e[0].split("-"),new Date(parseInt(e[0]),parseInt(e[1])-1,parseInt(e[2]),parseInt(l[0]),parseInt(l[1]),l.length>2?parseInt(l[2]):0)}const l=t.split("-"),o=parseInt(l[0]);return o<100?t:new Date(o,parseInt(l[1])-1,parseInt(l[2]))},n=t=>{if(!l.value)return;const o=a(t);let n="";o&&(n="string"==typeof o?o:"time"===e.type?pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):"datetime-local"===e.type?pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)+"T"+pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)),l.value.value=n};return vue.watch(()=>e.modelValue,e=>{n(e)}),vue.onMounted(()=>{n(e.modelValue)}),{enterD:n=>{const r=n.target.value;let s=a(r);return e.max&&s&&s.getTime()>=a(e.max).getTime()||e.min&&s&&s.getTime()<=a(e.min).getTime()?(t("invalid",{target:l.value,value:s}),void(n.target.value="")):void("time"===e.type?o(pad(s.getHours(),2)+":"+pad(s.getMinutes(),2)+":00"):s&&"function"==typeof s.getTime&&o(s.getTime()))},input:l}}};const _hoisted_1$h=["required","readonly","min","max","type"];function render$i(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",null,[vue.createElementVNode("input",{ref:"input",required:l.required,readonly:l.readonly,min:l.min,max:l.max,type:l.type||"date",onChange:t[0]||(t[0]=(...e)=>o.enterD&&o.enterD(...e))},null,40,_hoisted_1$h)])}script$p.render=render$i,script$p.__file="src/v-calendar.vue";var script$o={name:"VCheckboxGroup",props:{modelValue:{type:[Array,String],default:void 0},required:String,name:String},emits:["update:modelValue"],setup(e,{emit:t}){const l=e.name||"input_"+id(),o=e=>Array.isArray(e)?[...e]:("string"==typeof e||e instanceof String)&&e?e.split("|"):[],a=vue.computed(()=>void 0!==e.modelValue?o(e.modelValue):o(e.value)),n=e=>a.value.some(t=>t==e),r=(e,l)=>{const o=[...a.value];if(l){o.some(t=>t==e)||o.push(e)}else{const t=o.findIndex(t=>t==e);-1!==t&&o.splice(t,1)}t("update:modelValue",o)};return vue.provide("v-checkbox-group",{name:l,isSelected:n,onChange:r}),{nam:l,onChange:r,isSelected:n}}};function render$h(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",null,[vue.renderSlot(e.$slots,"default")])}script$o.render=render$h,script$o.__file="src/v-checkbox-group.vue";var script$n={name:"VCheckbox",props:{value:null,modelValue:null,valueFalse:null,label:null,readonly:null},emits:["update:modelValue","input","change"],setup(e,{emit:t}){const l=vue.ref(null),o=vue.inject("v-checkbox-group",null),a=vue.computed(()=>o?o.isSelected(e.value):void 0!==e.modelValue?null!==e.value&&void 0!==e.value?e.modelValue==e.value:!!e.modelValue:e.value?e.value==e.vmodel:"true"===String(e.vmodel));return{input:l,group:o,checked:a,change:l=>{if(e.readonly)return;const a=l.target.checked;let n;o&&o.onChange(e.value,a),n=a?null===e.value||void 0===e.value||e.value:null!==e.valueFalse&&void 0!==e.valueFalse&&e.valueFalse,t("update:modelValue",n),t("change",n)},getLabel:()=>e.label?e.label:e.value&&"string"==typeof e.value?e.value:"",onClick:t=>{if(e.readonly)return t.preventDefault(),!1}}}};const _hoisted_1$g=["innerHTML"],_hoisted_2$9=["name","readonly","checked","value"];function render$g(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("label",{style:{"font-weight":"normal !important",display:"block"},class:"v-checkbox",onClick:t[2]||(t[2]=(...e)=>o.onClick&&o.onClick(...e))},[vue.createElementVNode("span",{innerHTML:o.getLabel()},null,8,_hoisted_1$g),vue.createElementVNode("input",{ref:"input",type:"checkbox",name:o.group?.name,readonly:!!l.readonly,checked:o.checked,value:l.value,onClick:t[0]||(t[0]=(...e)=>o.onClick&&o.onClick(...e)),onChange:t[1]||(t[1]=(...e)=>o.change&&o.change(...e))},null,40,_hoisted_2$9),t[3]||(t[3]=vue.createElementVNode("span",{class:"checkmark"},null,-1))])}script$n.render=render$g,script$n.__file="src/v-checkbox.vue";var script$m={name:"VDataview",props:{value:Array,filterKey:String,src:String,filters:Object,store:null,itemWidth:null,rowKey:String,rowStyleClass:null,pagination:null,selectable:Boolean,scrollable:Boolean,autoload:{type:Boolean,default:!0}},data:function(){return{data:null,pages:1,page:1,columns:1,w:0,row:{},error:null,size:null,sortKey:"",selected:[],sortOrders:{},rowStyleClassFunc:null}},created(){var me=this;try{me.rowStyleClass&&(eval("me.rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}"),me.rowStyleClassFunc({},{},0))}catch(e){me.rowStyleClassFunc=null,console.log("Error en la expresion rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}")}},updated(){console.log("updated"),this.$emit("updated"),this.resize()},mounted(){var e=this;e.$el.addEventListener("parentResize2",e.resize),e.autoload&&e.load(),e.resize()},methods:{resize(){var e=this;if(e.itemWidth){var t=1+Math.trunc(e.$el.offsetWidth/Number(e.itemWidth));t>6&&(t=6),e.columns=t}},async getStoredList(e){let t=new Promise(t=>{var l=window._.db.transaction(e).objectStore(e).getAll();l.onsuccess=function(){t(l.result)}});return await t},async loadStore(){let e=this,t=e.store;if(null!=t){let l;return window._.db&&(l=await e.getStoredList(t)),l||(l=[]),e.data=e.data?l.concat(e.data):l,console.log("loadStore"),console.log(e.data),e.data}},getRowClass(e,t){var l=this,o=t%l.columns+1,a=["c-w-"+l.columns];return o==l.columns&&a.push("v-last"),l.rowStyleClassFunc?a.push(l.rowStyleClassFunc(e,e,t)):a.push(l.rowStyleClass),a},remove(e){e=e.id?e.id:e;var t=this.data,l=t.map(e=>e.id).indexOf(e);t.splice(l,1)},error2(e,t){this.data=[],this.error=t},load(e){var t=this;if(this.selected=[],t.value)t.data=t.value;else{!0===e&&(t.page=1);var l=t.src;l||(l=t.$root.apiLink(window.location.pathname)),l.endsWith("/")&&(l=l.slice(0,l.length-1)),t.pagination&&(l+="/"+(t.page-1)*t.pagination+"/"+t.pagination),axios.get(l,{error:t.error2,params:t.filters}).then(function(l){if(l.data&&l.data.error)MsgBox(l.data.error);else{var o=t.value?t.value:l.data.data?l.data.data:l.data;t.data||(t.data=[]),t.data=!0===e?o:t.data?t.data.concat(o):t.data,t.size=l.data.size,l.data&&l.data.size&&(t.pages=Math.ceil(l.data.size/t.pagination),t.page>t.pages&&(t.page=1)),t.$emit("loaded",{target:t,response:l})}}).catch(t.error)}}}};const _hoisted_1$f={class:"v-dataview"};function render$f(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$f,[e.data?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(e.data,(t,l)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(n.getRowClass(t,l))},[vue.renderSlot(e.$slots,"default",{row:t,item:t,index:l})],2))),256)):vue.createCommentVNode("v-if",!0),e.data&&!e.data.length?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(["center v-no-results",{error:e.error}])},vue.toDisplayString(e.error?e.error:"No existen registros para mostrar"),3)):vue.createCommentVNode("v-if",!0),e.data&&e.size>e.data.length?(vue.openBlock(),vue.createElementBlock("div",{key:2,onClick:t[0]||(t[0]=t=>n.load(e.page++)),class:"center v-more-results"},"Ver mas resultados")):vue.createCommentVNode("v-if",!0)])}script$m.render=render$f,script$m.__file="src/v-dataview.vue";var script$l={name:"VFieldset",props:{legend:String,closable:null},watch:{closed(e){this.$emit("change",{target:this,closed:e}),this.$emit("input",!e)}},data:()=>({closed:!1}),created(){this.closed=this.closable},mounted(){var e=this;e.$el.addEventListener("parentResize",t=>{t.$target=e,e.$emit("resize",t)})},updated(){var e=this;setTimeout(function(){var t=e.$el.querySelector("legend > * > svg");if(t)try{console.log(),t.dataset.icon=t.parentNode.dataset.icon}catch(e){console.log("icon"),console.log(e)}},50)}};const _hoisted_1$e={class:"v-fieldset"},_hoisted_2$8=["data-icon"],_hoisted_3$6=["innerHTML"],_hoisted_4$5={style:{flex:"1",display:"flex","flex-direction":"column"}};function render$e(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("fieldset",_hoisted_1$e,[l.legend?(vue.openBlock(),vue.createElementBlock("legend",{key:0,onClick:t[0]||(t[0]=e=>a.closed=l.closable&&!a.closed),style:vue.normalizeStyle({cursor:l.closable?"pointer":""})},[l.closable?(vue.openBlock(),vue.createElementBlock("span",{key:0,"data-icon":a.closed?"plus":"minus",style:{margin:"0px 5px 0px 0px"}},[vue.createElementVNode("i",{class:vue.normalizeClass([a.closed?"fa-plus":"fa-minus","fa"])},null,2)],8,_hoisted_2$8)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("span",{innerHTML:l.legend},null,8,_hoisted_3$6)],4)):vue.createCommentVNode("v-if",!0),vue.withDirectives(vue.createElementVNode("div",_hoisted_4$5,[vue.renderSlot(e.$slots,"default")],512),[[vue.vShow,!a.closed]])])}script$l.render=render$e,script$l.__file="src/v-fieldset.vue";var script$k={name:"VForm",props:["header","store","action"],setup(e,t){const{store:l}=e,{slots:o,expose:a}=t,n=vue.ref(null),r=vue.inject("viewCollector"),s={get:()=>({...e})};return vue.provide("formCollector",s),r.push({store:l,type:"v-form",$el:n,$forceUpdate:()=>{}}),a({...e}),()=>{const t=[];return e.header&&t.push(vue.h("div",{class:"v-widget-header v-panel-titlebar"},[vue.h("span",{class:"v-panel-title"},e.header)])),t.push(vue.h("div",{ref:n,class:"v-dialog-content v-widget-content"},[vue.h("form",{action:e.action},o.default())])),vue.h("div",{class:"ui-panel"},t)}},watch:{header(e){this.setTitle(e)}},data:()=>({timer:null}),methods:{setTitle(e){var t=this.$parent.app;t&&setTimeout(()=>{t.title=e},100)},getAbsoluteHeight(e){var t=window.getComputedStyle(e),l=parseFloat(t.marginTop)+parseFloat(t.marginBottom);return Math.ceil(e.offsetHeight+l)}},mounted(){var e=this;e.$el.querySelector("form").addEventListener("submit",t=>{t.preventDefault();var l=e.$parent;return l.refresh&&l.refresh(),!1}),e.setTitle(e.header)},updated(){for(var e=this.$el.querySelectorAll("[type=number]:not(._)"),t=0;t<e.length;t++){var l=()=>{var e=this,t=e.value;if(t){t=n(t),e.max&&t>n(e.max)&&(t=n(e.max)),e.min&&t<n(e.min)&&(t=n(e.min));var l=this.getAttribute("decimal");null!==l&&(t=t.toFixed(1*l)),e.value=t}};e[t].oninput=l,e[t].onblur=l,e[t].classList?e[t].classList.add("_"):e[t].className="_"}e=this.$el.querySelectorAll(".numeric:not(._)");for(t=0;t<e.length;t++)e[t].addEventListener("keyup",e=>{86==e.keyCode&&isNaN(this.value)&&(this.value="")}),e[t].addEventListener("keydown",e=>{console.log("eeeeeee"+e.keyCode),-1!==[46,8,9,27,13,110,88,86].indexOf(e.keyCode)||65===e.keyCode&&(!0===e.ctrlKey||!0===e.metaKey)||e.keyCode>=35&&e.keyCode<=40||(e.shiftKey||e.keyCode<48||e.keyCode>57)&&(e.keyCode<96||e.keyCode>105)&&e.preventDefault()}),e[t].classList?e[t].classList.add("_"):e[t].className="_"},__file:"src/v-form.vue"},script$j={name:"VGroup",props:{required:String,name:String},data:()=>({value:null,nam:null}),updated(){this.update2()},mounted(){this.update2()},created(){this.nam||(this.nam=this.$props.name?this.$props.name:"input_"+window._.id())},methods:{getInputs(e,t){var l=this;return e.children&&Array.from(e.children).forEach(e=>{"INPUT"==e.tagName?t.push(e):e.classList.contains("v-group")||l.getInputs(e,t)}),t},update2(){for(var e=this.getInputs(this.$el,[]),t=0;t<e.length;t++)e[t].value==this.$attrs.value?e[t].checked=!0:e[t].checked=!1},onChange(e){this.value=e,""===e&&(e=null),this.$emit("input",e)}}};const _hoisted_1$d={class:"v-group"};function render$d(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$d,[vue.renderSlot(e.$slots,"default")])}script$j.render=render$d,script$j.__file="src/v-group.vue";var script$i={name:"VLayerControl",data:()=>({loaded:null,map:null,district:null,dl:null}),setup({baseURL:e="https://web.regionancash.gob.pe"},{emit:t}){const l=vue.ref(),o=vue.inject("collector"),a=vue.ref(),n=vue.ref();let r,s;return o.push(o=>{(o=>{n.value=o;let i=new ol$1.Collection;l.value=i;let u=document.createElement("i");u.setAttribute("class","fa fa-expand"),o.addControl(new FullScreen({label:u,tipLabel:"Fullscreen"}));let c=new VectorSource({url:e+"/fs/geo/02.geojson",format:new GeoJSON}),d=a.value=new VectorLayer({source:c,style:e=>new style.Style({fill:new style.Fill({color:"rgba(255, 0, 0, 0.0)"}),stroke:new style.Stroke({color:"#4073CE",width:1}),text:new style.Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new style.Fill({color:"#4073CE"}),stroke:new style.Stroke({color:"#4073CE",width:.5})})}),id:"provinces"});d.onChange=e=>{let t=e.feature;s!=t.getId()&&(i.clear(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:200,callback:()=>{}}))};let v=c.on("change",()=>{let e,t=c.getFeatures();for(let l=0;l<t.length;l++)if(1*t[l].id_==1*e){d.onChange({feature:t[l]});break}Observable.unByKey(v)}),p=new VectorLayer({preload:1/0,source:new VectorSource,id:"districts",style:e=>new style.Style({fill:new style.Fill({color:"rgba(16, 110, 138, 0.0)"}),stroke:new style.Stroke({color:"#194300",width:1}),text:new style.Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new style.Fill({color:"#194300"}),stroke:new style.Stroke({color:"#194300",width:.5})})})});o.on("moveend",()=>{if(r){if(r.id_<1e4){p.setSource(new VectorSource({url:e+"/fs/geo/"+r.id_+".geojson",format:new GeoJSON}));let t=p.getSource().on("change",()=>{Observable.unByKey(t)})}t("scope",{feature:r,target:{}}),r=null}}),d.onSelect=e=>{me.$emit("select",e)},o.addLayer(d),o.addLayer(new VectorLayer({id:"district",source:new VectorSource,style:new style.Style({fill:new style.Fill({color:"rgba(255, 150, 150, 0.0)"}),stroke:new style.Stroke({color:"#4073CE",width:1})})})),new style.Style({fill:new style.Fill({color:"rgba(16, 110, 138, 5.0)"})}),new style.Style({fill:new style.Fill({color:"rgba(255, 150, 150, 0.0)"})}),p.onChange=e=>{let t=e.feature;s!=t.getId()&&(2==i.getLength()&&i.pop(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:300}))},p.onSelect=e=>{t("select",e)},o.addLayer(p),t("render",{map:o})})(o)}),{}}};function render$c(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",null,[vue.renderSlot(e.$slots,"default")])}script$i.render=render$c,script$i.__file="src/v-layer-control.vue";var script$h={name:"VMapControl",setup(e,{emit:t}){const{visible:l}=e,o=vue.ref(null),a=vue.ref(!!l),n=vue.inject("collector"),r=vue.ref(null);n.push(e=>{e.addControl(new Control({element:o.value})),r.value=!0});const s=vue.ref();return{el:o,ready:r,visible0:a,enter:e=>{e.stopPropagation(),s.value?clearTimeout(s.value):t("click",e),s.value=setTimeout(()=>{s.value=null},500)}}},props:{icon:String,visible:{default:1}},computed:{slotPassed(){return!!this.$slots.default}},data:()=>({slotUsed:!1}),updated(){var e=this.$el.querySelectorAll(":scope > :not(.v-map-control-button)").length;0==e&&(e=this.$el.textContent.trim().length),this.slotUsed=e},methods:{toggle(){this.visible0=!this.visible0}}};const _hoisted_1$c={ref:"el",class:"ol-unselectable ol-control"};function render$b(e,t,l,o,a,n){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$c,[vue.renderSlot(e.$slots,"default"),a.slotUsed?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("button",{key:0,class:"v-map-control-button",onClick:t[0]||(t[0]=vue.withModifiers((...e)=>o.enter&&o.enter(...e),["prevent"]))},[l.icon?(vue.openBlock(),vue.createElementBlock("i",{key:0,class:vue.normalizeClass(["fa fa-xs",l.icon])},null,2)):vue.createCommentVNode("v-if",!0)]))],512)),[[vue.vShow,o.ready&&!0]])}script$h.render=render$b,script$h.__file="src/v-map-control.vue";class Drag extends PointerInteraction{constructor(){super({handleDownEvent:handleDownEvent,handleDragEvent:handleDragEvent,handleMoveEvent:handleMoveEvent,handleUpEvent:handleUpEvent}),this.layers_=[],this.coordinate_=null,this.listeners_=[],this.cursor_="pointer",this.feature_=null,this.previousCursor_=void 0}addLayers(e){e.forEach(e=>{this.layers_.push(e)})}$on(e,t){this.listeners_.push(t)}}function handleDownEvent(e){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return[e,t]});return o&&(this.coordinate_=e.coordinate,this.feature_=o[0]),!!o}function handleDragEvent(e){const t=e.coordinate[0]-this.coordinate_[0],l=e.coordinate[1]-this.coordinate_[1];this.feature_.getGeometry().translate(t,l),this.coordinate_[0]=e.coordinate[0],this.coordinate_[1]=e.coordinate[1]}function handleMoveEvent(e){if(this.cursor_){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return e}),a=e.map.getTargetElement();o?a.style.cursor!=this.cursor_&&(this.previousCursor_=a.style.cursor,a.style.cursor=this.cursor_):void 0!==this.previousCursor_&&(a.style.cursor=this.previousCursor_,this.previousCursor_=void 0)}}function handleUpEvent(){return this.listeners_.forEach(e=>{e({feature:this.feature,coordinate:this.coordinate_})}),this.coordinate_=null,this.feature_=null,!1}var script$g={name:"VMap",setup(e,{emit:t,expose:l}){const o=vue.ref(null),a=vue.ref(null),n=vue.ref(null),r=vue.ref(null),s=vue.reactive([]);vue.provide("collector",{remove(e){s.splice(s.indexOf(e),1)},push(e){s.push(e)}});const i=e=>{a.value.addLayer(e),t("addlayer",e)},u=(e,l)=>{let o,n;e=e||{};const r=a.value;e.lon&&e.lat?(n=[e.lon,e.lat],o=new geom.Point(n[0]>-100?proj.fromLonLat(n):n)):o=new geom.Point(r.getView().getCenter()),n=o.flatCoordinates;const s=n[0]<-1e4?proj.toLonLat(n):n;t("translateend",{lon:s[0],lat:s[1]}),e.geometry=o;const i=new Feature(e);i.data=e,"object"==typeof e.style?i.setStyle(e.style):i.setStyle(r.styleMap[e.style?e.style:"default"]),n=o.flatCoordinates,n=n[0]<-1e4?proj.toLonLat(n):n,t("translateend",{lon:n[0],lat:n[1]});const u=e.layer||"default";let c=r.getLayerById(u);if(c?c.getSource().addFeatures(i):r.addLayer(c=new VectorLayer({id:u,source:new VectorSource({features:new ol$1.Collection([i])})})),e.draggable){let e=r.drag;e||(r.drag=e=new Drag,e.$on("up",({coordinate:e,feature:l})=>{const o=proj.toLonLat(e);t("translateend",{lon:o[0],lat:o[1],feature:l})}),r.addInteraction(e),e.addLayers([c]))}return l&&r.getView().animate(Object.assign({center:i.getGeometry().getCoordinates(),zoom:17,duration:500},l)),i},c=e=>{const l={default:new style.Style({image:new style.Circle({radius:8,stroke:new style.Stroke({color:"#8a0000",width:2}),fill:new style.Fill({color:"#ff0000"})})}),star:[new style.Style({image:new style.RegularShape({fill:new style.Fill({color:"#ff0000"}),stroke:new style.Stroke({color:"#8a0000",width:2}),points:5,radius:10,radius2:4,angle:0})})]};let o=((e,t)=>{t||(t=window.location.href);const l=new RegExp("[?&]"+e+"=([^&#]*)").exec(t);return l&&l[1]||0})("location"),i=-1;if(o){let e=o.split("/");o=[parseFloat(e[0]),parseFloat(e[1])],i=e[2],n.value=!0}else o=!1;const c=new Map({target:e,layers:[new layer.Tile({source:new source.OSM})],view:new View({center:[0,0],zoom:2})});c.getLayerById=function(e="default"){let t;return c.getLayers().forEach(l=>{l.get("id")!==e||(t=l)}),t},c.styleMap=l,n.value?(c.getView().setCenter(o),console.log("en el momento de cargar moved to pageLocation="+o),c.getView().setZoom(i||12),a.value=c,console.log("distarar evento buid pageLocation="+o),t("build",m)):(c.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],c.getSize()),a.value=c,t("build",{map:c}),s.forEach(e=>{e(c)})),c.getView().getZoom(),c.on("moveend",()=>{r.value&&(r.value(m),r.value=null),c.getView().getZoom()}),c.on("singleclick",e=>{let t=c.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(t){let l=t[1],o=t[0];if(e.feature=o,e.map=c,e.preventDefault(),l.onSelect)return void l.onSelect(e)}}),c.on("dblclick",e=>{let l=c.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(l){let o=l[1];if(l=l[0],e.feature=l,e.map=c,o.onChange)return void o.onChange(e);t("change",l),c.getView().animate({center:l.getGeometry().getCoordinates(),zoom:17,duration:500},()=>{for(let t=0;t<m.$children.length;t++){let t=m.$children[0];t.open&&t.open(e)}})}}),a.value=c,setTimeout(()=>{c.updateSize(),c.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],c.getSize()),a.value=c,t("build",{map:c,addFeature:u})},100)};return vue.watch(o,e=>{e&&vue.nextTick(()=>{t("beforeBuild"),c(e)})}),l({addFeature:u,addLayer:i,map:a,empty:(e="default")=>{if(e=a.value.getLayerById(e)){const t=e.getSource();if(t instanceof VectorSource){return 0===t.getFeatures().length}}return!0}}),{el:o,addLayer:i,addFeature:u}},data:()=>({moved:!1,map:null,movingCompleted:null,styleMap:null,coordinate:{}})};const _hoisted_1$b={ref:"el"};function render$a(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[vue.renderSlot(e.$slots,"default")],512)}script$g.render=render$a,script$g.__file="src/v-map.vue";var script$f={name:"VNumber",props:{value:Number,max:Number,min:Number,delay:Number},setup(e,t){const{emit:l}=t,o=vue.ref(null);vue.onMounted(()=>{o.value=e.value}),vue.onUpdated(()=>{o.value=t.attrs.modelValue});return{v:o,handleInput:t=>{let a=o.value;const n=t.target.getAttribute("decimal");null!==a?(a=num(a),e.max&&a>num(e.max)&&(a=num(e.max)),e.min&&a<num(e.min)&&(a=num(e.min)),null!==n&&(a=a.toFixed(Number(n)))):a=null,o.value=t.target.value;let r=_$1.calendarTimer;r&&clearTimeout(r),e.delay?_$1.calendarTimer=setTimeout(()=>{l("input",a),_$1.calendarTimer=null},13===t.keyCode?0:e.delay):l("input",a)}}}};function render$9(e,t,l,o,a,n){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("input",{type:"number",onKeyup:t[0]||(t[0]=vue.withKeys((...e)=>o.handleInput&&o.handleInput(...e),["enter"])),"onUpdate:modelValue":t[1]||(t[1]=e=>o.v=e),onInput:t[2]||(t[2]=(...e)=>o.handleInput&&o.handleInput(...e)),class:"_"},null,544)),[[vue.vModelText,o.v,void 0,{number:!0}]])}script$f.render=render$9,script$f.__file="src/v-number.vue";var script$e={setup(e,t){const l=e,{valueField:o,displayField:a,store:n,name:r,src:s}=l,i=vue.toRef(e,"filter"),u=useAppStore(),{expose:c,emit:d}=t,v=vue.ref([]),p=vue.ref([]),m=vue.ref([]),h=vue.ref(null),f=vue.inject("collect");o&&(m.value=o.split("."));const g=vue.computed(()=>{const e=(l.data||[]).concat(p.value||[]),t=i.value;return t?"string"==typeof t?e.filter(e=>JSON.stringify(e).toLowerCase().includes(t.toLowerCase())):"object"==typeof t?e.filter(e=>Object.entries(t).every(([t,l])=>null==l||""===l||String(e[t]??"").toLowerCase().includes(String(l).toLowerCase()))):e:e});vue.watch(g,e=>{});const y=(e,t)=>{const l=m.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};let $=o,b=a;b||(b=$);const w=async(e=null,t=null,o=!1)=>{if(!o&&t&&e&&v.value.push([e,t]),!(v.value.length>1)){if(p.value=[],n){const t=await getStoredList(n);console.log(n,e),e&&Object.keys(e).length?p.value=t.filter(t=>Object.entries(e).every(([e,l])=>String(t[e]??"").startsWith(l))):p.value.push(...t)}for(s&&(l.filters&&(e=mergeDeep(e||{},l.filters)),r&&console.log(r+".options.load ",JSON.stringify(e)),await u.axios.get(s,{params:e}).then(e=>{let o=e.data.data?e.data.data:e.data;d("loaded",{target:l,data:o}),p.value=p.value.concat(o),f(p),h.value=1,t&&t()}).catch(l.error)),f(g),o||v.value.shift();v.value.length;){const e=v.value.shift()||[];await w(e[0],e[1],!0)}}};return w.getObjectByIndex=e=>{const t=g.value;return t?t[e]:null},w.getValueByIndex=e=>{const t=g.value;return t?y(t[e],1):null},w.getIndexByValue=(e,t)=>{e&&e.id?e=e.id:e&&e.code&&(e=e.code);for(let l=0;l<g.value.length;l++){const o=g.value[l];if(y(o)==e)return t&&t(l,o),l}return t&&t(-1),-1},f.push(w),vue.onUpdated(()=>{f((l.data||[]).concat(p.value))}),vue.onUnmounted(()=>{f.remove(w)}),c({load:w}),{filterList:g,getValueField:y,vf:$,df:b}},name:"VOptions",props:{url:String,src:String,name:String,displayField:String,data:Array,store:null,valueField:String,filters:null,filter:null,mode:null},updated(){let e=this;!e.loaded&&e.data&&(e.data2=e.data)},methods:{getParentE(){return this.$el.parentElement.parentElement},getSelectedItem(){let e=this.$el.parentElement;return this.filterList[e.selectedIndex-1]}}};const _hoisted_1$a=["value"];function render$8(e,t,l,o,a,n){return vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(o.filterList,(t,l)=>(vue.openBlock(),vue.createElementBlock("option",{key:l,value:o.vf?o.getValueField(t):t.id||t.code||JSON.stringify(t)},[vue.renderSlot(e.$slots,"default",{item:t},()=>[vue.createTextVNode(vue.toDisplayString(o.df?t[o.df]:t),1)])],8,_hoisted_1$a))),128)}script$e.render=render$8,script$e.__file="src/v-options.vue";var ol=window.ol,_=window._,axios$1=window.axios,script$d={name:"VOverlay",props:{value:{value:Object},src:String,width:{default:400},header:String},data:()=>({coordinate:null,overlay:null,location:null,ele:null,c:0}),created(){var e=this;e.$parent.$on("beforeBuild",t=>{console.log(t),e.overlay=new ol.Overlay({element:e.$el,positioning:"bottom-right"})}),e.$parent.$on("build",t=>{t.map.addOverlay(e.overlay)})},mounted(){var e=this;e.header&&e.$el.childNodes[0].addEventListener("mousedown",function(t){const l=e.$el.parentElement;var o=window.getComputedStyle(l),a=parseFloat(o.left),n=parseFloat(o.top),r=t.clientX,s=t.clientY,i=l.parentElement;function u(e){l.style.left=a+e.clientX-r+"px",l.style.top=n+e.clientY-s+"px"}i.addEventListener("mousemove",u,!1),i.addEventListener("mouseup",function(){i.removeEventListener("mousemove",u,!1)},!1)},!1)},methods:{close(){this.overlay&&this.overlay.setPosition()},hasSlot(e="default"){return!!this.$slots[e]||!!this.$scopedSlots[e]},load(){var e=this;axios$1.get(_.remoteServer+e.src).then(t=>{e.$emit("input",t.data)})},open(e){for(var t=this,l=e.map,o=e.feature,a=t.overlay,n=a.element,r=t.$parent.$children,s=0;s<r.length;s++)r[s].close&&(r[s].$el.style.opacity=0,r[s].close());e.coordinate?t.coordinate=e.coordinate:(e.coordinate=l.getView().getCenter(),t.coordinate=null),a.setPosition(e.coordinate);var i=l.getView().getCenter(),u=l.getView().getResolution(),c=o?o.getGeometry().getCoordinates():[null],d=l.getPixelFromCoordinate(Number(c[0])?c:e.coordinate);if(this.src)axios$1.get(_.remoteServer+this.src).then(e=>{t.$emit("input",e.data),t.c++,setTimeout(function(){var e=l.viewport_.offsetWidth,o=l.viewport_.offsetHeight,r=n.children[0].children[1];r.scrollTop=0;var s=n.offsetHeight;r.style.height=s+100>=o?o-100-n.children[0].children[0].offsetHeight+"px":"300px",s=n.offsetHeight;var c=1*t.width,v=e<=c+40?e-40:c;if(n.style.zIndex=10,n.style.width=v+"px",v/=2,l.getView().animate({center:[i[0]+(d[0]+v+20>=e?+(d[0]+v+20-e):d[0]-20-v<0?-v+d[0]-20:0)*u,i[1]+(d[1]<s?s-d[1]:0)*u],duration:500}),d[0]=d[0]+v-0,d[1]=d[1]-12,a.setPosition(l.getCoordinateFromPixel(d)),t.$el.style.opacity=1,_.mobil)for(var p=a.getElement().querySelectorAll("a:not(._)"),m=0;m<p.length;m++)p[m].addEventListener("click",_.open2)},400)}).catch(e=>{console.log(e)});else{var v=l.viewport_.offsetWidth,p=l.viewport_.offsetHeight,m=n.children[0].children[1];m.scrollTop=0;var h=n.offsetHeight;console.log(n.offsetHeight),m.style.height=h+100>=p?p-100-n.children[0].children[0].offsetHeight+"px":"300px",h=n.offsetHeight;var f=1*t.width,g=v<=f+40?v-40:f;if(n.style.zIndex=10,n.style.width=g+"px",g/=2,l.getView().animate({center:[i[0]+(d[0]+g+20>=v?+(d[0]+g+20-v):d[0]-20-g<0?-g+d[0]-20:0)*u,i[1]+(d[1]<h?h-d[1]:0)*u],duration:500}),d[0]=d[0]+g-0,d[1]=d[1]-12,a.setPosition(l.getCoordinateFromPixel(d)),t.$el.parentNode.style.opacity=0,t.$el.style.opacity=1,t.$el.parentNode.style.top=(p-t.$el.offsetHeight)/2+"px",t.$el.parentNode.style.opacity=1,_.mobil){var y=a.getElement().querySelectorAll("a:not(._)");for(s=0;s<y.length;s++)y[s].addEventListener("click",_.open2)}t.$emit("opened",{target:t})}}}};const _hoisted_1$9={class:"v-ol-overlay"},_hoisted_2$7={key:0,class:"v-panel-titlebar"},_hoisted_3$5={key:2,style:{"text-align":"center"}};function render$7(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$9,[l.header?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$7,[vue.createElementVNode("span",{class:"v-icon v-icon-close",onClick:t[0]||(t[0]=(...e)=>n.close&&n.close(...e))},[...t[1]||(t[1]=[vue.createElementVNode("i",{class:"fa fa-times"},null,-1)])]),vue.createTextVNode(vue.toDisplayString(l.header),1)])):vue.createCommentVNode("v-if",!0),(vue.openBlock(),vue.createElementBlock("div",{class:"v-ol-body",key:"c-"+a.c,style:{padding:"10px"}},[l.value?vue.renderSlot(e.$slots,"default",{key:0,value:l.value}):vue.createCommentVNode("v-if",!0)])),n.hasSlot("footer")&&l.value?(vue.openBlock(),vue.createElementBlock("footer",{key:"f-"+a.c},[vue.renderSlot(e.$slots,"footer",{value:l.value})])):vue.createCommentVNode("v-if",!0),a.coordinate?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$5,[...t[2]||(t[2]=[vue.createElementVNode("img",{src:_imports_0,width:"20",height:"18"},null,-1)])])):vue.createCommentVNode("v-if",!0)])}script$d.render=render$7,script$d.__file="src/v-overlay.vue";var script$c={name:"VPanel",props:{header:String}};const _hoisted_1$8={class:"ui-panel"},_hoisted_2$6={key:0,class:"v-panel-titlebar v-widget-header ui-helper-clearfix ui-corner-all"},_hoisted_3$4={class:"v-panel-title"},_hoisted_4$4={class:"v-panel-content v-dialog-content v-widget-content"};function render$6(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$8,[l.header?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$6,[vue.createElementVNode("span",_hoisted_3$4,vue.toDisplayString(l.header),1)])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",_hoisted_4$4,[vue.renderSlot(e.$slots,"default")])])}script$c.render=render$6,script$c.__file="src/v-panel.vue";var script$b={__name:"v-popup",props:{width:{type:String,default:"600px"},name:{type:String,default:null}},emits:["success","close"],setup(e,{expose:t,emit:l}){const o=e,a=l,n=vueRouter.useRouter(),r=vue.ref(!1),s=vue.shallowRef(null),i=vue.ref({}),u=vue.inject("viewCollector"),c=vue.inject("refresh",null),d=async(e=null,t=null)=>{if(!e)return s.value=null,i.value=t??{},void(r.value=!0);const l=await(async e=>{let t=n.getRoutes().find(t=>t.name===e),l={};if(!t){const o=n.resolve(e);t=o.matched.at(-1),l=o.params}if(!t)throw new Error(`No existe la ruta "${e}"`);let o=t.components?.default??t.component;if(!o)throw new Error(`La ruta "${e}" no tiene componente`);if("function"==typeof o){const e=await o();o=e.default??e}return{component:o,params:l}})(e);s.value=l.component,i.value={...l.params,...t??{}},r.value=!0},v=e=>{r.value=!1,a("close",e),s.value=null},p=async(e=null)=>{e?.success&&c?.(),v(e)};return u.push({open:d,props:o,type:"v-popup"}),t({open:d,close:v}),(t,l)=>(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[r.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"popup-overlay",onClick:vue.withModifiers(v,["self"])},[vue.createElementVNode("div",{class:"popup",style:vue.normalizeStyle({width:e.width})},[vue.createElementVNode("button",{type:"button",class:"popup-close",onClick:v}," ✕ "),vue.createCommentVNode(" Componente cargado por ruta "),s.value?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(s.value),vue.mergeProps({key:0},i.value,{callback:p}),null,16)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createCommentVNode(" Si no hay componente, mostrar slot "),vue.renderSlot(t.$slots,"default",{close:v,callback:p})],2112))],4)])):vue.createCommentVNode("v-if",!0)]))},__file:"src/v-popup.vue"},script$a={name:"VRadio",props:{value:String,label:String,className:String},methods:{getClass(){return"v-radio "+this.className}},mounted(){var e=this,t=e.$el.querySelector("input");e.$parent&&e.$parent.nam&&(t.name=e.$parent.nam),t.onclick=function(){}},updated(){this.$el.querySelector("input")}};const _hoisted_1$7=["value"];function render$5(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("label",{class:vue.normalizeClass(n.getClass())},[vue.createTextVNode(vue.toDisplayString(l.label?l.label:l.value)+" ",1),vue.createElementVNode("input",{type:"radio",value:l.value},null,8,_hoisted_1$7),t[0]||(t[0]=vue.createElementVNode("span",{class:"checkmark"},null,-1)),vue.renderSlot(e.$slots,"default")],2)}script$a.render=render$5,script$a.__file="src/v-radio.vue";var script$9={__name:"v-radio-group",props:{required:String,name:String,modelValue:String,items:{type:Array},type:{type:String,default:"radio"},label:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(l.modelValue),{proxy:n}=vue.getCurrentInstance(),r=new Set,s=(e,t)=>(e.children&&Array.from(e.children).forEach(e=>{"INPUT"===e.tagName?t.push(e):e.classList&&e.classList.contains("v-group")||s(e,t)}),t),i=()=>{const e=s(n.$el,[]);let t=l.name;t||(t="input_"+Date.now().toString(36)+Math.random().toString(36).substring(2,15));const o=""===n.$props.required||n.$props.required;let i=!1;for(let l=0;l<e.length;l++)e[l].name=t,r.has(e[l])||(e[l].addEventListener("change",u),r.add(e[l])),e[l].checked=null!=a.value&&e[l].value===String(a.value),e[l].checked&&(i=!0),e[l].required=o,o&&(a.value?e[l].nextElementSibling.classList.remove("required"):e[l].nextElementSibling.classList.add("required"));i&&removeError(e[0].parentNode.parentNode)},u=e=>{let t=e.target.value;""===t&&(t=null),a.value=t,o("update:modelValue",t)};vue.watch(()=>l.modelValue,e=>{a.value=e,i()}),vue.onMounted(()=>{i()}),vue.onUpdated(()=>{i()});const c=()=>{const e=[];return n.$slots.default&&e.push(...n.$slots.default()),l.items&&e.push(...l.items.map(e=>vue.h(script$a,{className:l.required&&!l.modelValue?"required":null,...e,modelValue:a.value,"onUpdate:modelValue":u}))),vue.h("div",{class:"v-radio-group"},[l.label&&vue.h("label",l.label),...e])};return(e,t)=>(vue.openBlock(),vue.createBlock(c))},__file:"src/v-radio-group.vue"},script$8={name:"VSelect",setup(e,t){const{slots:l,emit:o}=t,{valueField:a,disabled:n,readonly:r,autoload:s,name:i}=e,u=vue.ref([]),c=vue.ref([]),d=vue.ref(null),v=vue.ref([]),p=[],m=vue.ref(!(s+""=="false"||1*s==0)),h=vue.ref(null),f=e=>{null!=e&&""!==e?Array.isArray(e)?_.value=[...e]:_.value=String(e).split(","):_.value=[]},g=t=>{const l=vue.unref(t)||[];u.value=Array.isArray(l)?l.filter(e=>null!=e):[],vue.nextTick(()=>{e.multiple?f(e.modelValue):y(e.modelValue||d.value)})},y=t=>{let l=t||e.modelValue;if(h.value){let t=h.value,a=t.selectedIndex;l&&""!==l||(t.selectedIndex=0),log(i,"value===",l);const n=l?""+(l.id||l.code||l):l;for(let e=0;e<t.length;e++)t[e].value===n&&(t.selectedIndex=e);const r=p;for(let n=0;n<r.length;n++){if(!r[n].getValueByIndex)continue;let s=r[n].getValueByIndex(a-1);r[n].getIndexByValue(l,(a,c)=>{if(a>-1){let c=r[n].getObjectByIndex(a),v=Number(s);v=isNaN(v)?s?!!l&&(l.id?l.id==s.id:l==s):!l:v==Number(l),d.value!=e.modelValue&&(log(i,"select.value",l,"object=",c),e.modelValue&&(d.value=e.modelValue),v||(log(i,"select.updateSelect="+l+" "+JSON.stringify(u.value.length)),t.selectedIndex=a+1,o("update:modelValue",l,{value:l,select:t,object:c}),vue.nextTick(()=>{o("input",l,{value:l,select:t,object:c})})))}else e.modelValue&&(d.value=e.modelValue),log(i,"select.updateselect.not fout",a),o("update:modelValue",null,null),vue.nextTick(()=>{o("input",null,{value:null})}),t.selectedIndex=0})}}};g.remove=e=>{const t=p.filter(t=>t!==e);p.length=0,t.forEach(e=>p.push(e))},g.push=e=>{p.push(e)},a&&(c.value=a.split(".")),vue.provide("collect",g);const $=(e,t)=>{const l=c.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};vue.watch(()=>e.modelValue,(t,l)=>{t!=l&&(e.multiple?f(t):y())}),vue.watch(()=>e.disabled,(e,t)=>{b(e,t)});const b=(e,t)=>{e=!!e,t=!!t;let l=v.value;log(i,"activate.newVal=",e,"oldVal=",t),!e&&!e===t&&l.length&&w(l[0],l[1])},w=(t,l)=>{e.disabled?(log(i,"select.load.params=",t),v.value=[t,l],p.forEach(e=>{e(t,l)})):(v.value=[],p.forEach(e=>{e(t,l)}))};vue.onMounted(()=>{m.value&&w()});const k=vue.ref(!1),_=vue.ref([]),x=vue.ref(!1),S=vue.ref(""),V=()=>{k.value=!1},E=()=>{const e=[..._.value].map(String).sort(),t=[...S.value].map(String).sort();if(e.length!==t.length||e.some((e,l)=>e!==t[l])){const t=e.length?e.join(","):null;o("update:modelValue",t)}V()},C=()=>{_.value&&_.value.length&&_.value.join(","),console.log(_)};return{options:u,getValueField:$,onChange:e=>{e.stopPropagation();let t=e.target.value;const l=h.value;log(i,"select.onchange=",t),t&&""!==t||(t=null,l.selectedIndex=0);let a,n=0;const r=u.value;for(let e=0;e<p.length;e++){if(n=p[e].getValueByIndex(l.selectedIndex-1),-1!=n){a=p[e].getObjectByIndex(l.selectedIndex-1);break}n=0}n?(log(i,"change=found=",n),t=n):r.length&&(l.selectedIndex=0),o("update:modelValue",t,{value:t,select:l,object:a}),vue.nextTick(()=>{o("input",t,{value:t,select:l,object:a})})},selectRef:h,load:w,lastLoad:v,autoload_:m,expand:t=>{if(e.readonly)return t.preventDefault(),!1},show:k,sel:_,sela:x,toggle:()=>{k.value||(S.value=[..._.value]),k.value=!k.value,k.value||E()},close:V,apply:E,selectAll:e=>{console.log("selectAll.checked=",e),_.value=e?u.value.map(e=>$(e)):[],C()},checkboxInput:C}},props:{modelValue:null,required:null,readonly:null,multiple:null,label:null,name:null,disabled:null,autoload:null,valueField:null},data:()=>({data:[],popup:null,tmp:[],sel2:[]}),watch:{show(e){if(e){let e=this.$refs.button,t=this.popup;t||(t=this.$refs.popup,t.style.position="absolute",document.body.append(t));let l=e.getBoundingClientRect();const o=t.children[0];window.innerWidth<400?(t.style.padding="40px",t.style.height="100%",o.style.height="100%"):(t.style.top=l.bottom+0+"px",t.style.left=l.left+0+"px",t.style.maxHeight=window.innerHeight-l.bottom-30+"px",o.style.maxHeight=t.style.maxHeight),o.style.display="flex",o.style.flexDirection="column"}}}};const _hoisted_1$6={class:"v-select",style:{position:"relative"}},_hoisted_2$5=["required","disabled","click"],_hoisted_3$3={ref:"popup",class:"v-popup"},_hoisted_4$3={class:"center"};function render$4(e,t,l,o,a,n){const r=vue.resolveComponent("v-checkbox"),s=vue.resolveComponent("v-checkbox-group"),i=vue.resolveComponent("v-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$6,[l.readonly?vue.createCommentVNode("v-if",!0):vue.withDirectives((vue.openBlock(),vue.createElementBlock("select",{key:0,style:{width:"100%"},ref:"selectRef",onChange:t[0]||(t[0]=(...e)=>o.onChange&&o.onChange(...e)),required:l.required,disabled:l.disabled,click:o.expand},[vue.renderSlot(e.$slots,"default")],40,_hoisted_2$5)),[[vue.vShow,!l.multiple]]),l.multiple?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createElementVNode("div",{class:vue.normalizeClass(["v-widget-header v-button v-filter",{"v-selected":o.show||o.sel.length}]),ref:"button",style:{"padding-top":"7px","padding-bottom":"7px"},onClick:t[1]||(t[1]=(...e)=>o.toggle&&o.toggle(...e))},[o.sel.length?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(" ("+vue.toDisplayString(o.sel.length)+") ",1)],64)):vue.createCommentVNode("v-if",!0),t[4]||(t[4]=vue.createTextVNode("   ",-1))],2),vue.withDirectives(vue.createElementVNode("div",_hoisted_3$3,[vue.createElementVNode("div",null,[vue.createElementVNode("div",null,[vue.createVNode(r,{modelValue:o.sela,"onUpdate:modelValue":t[2]||(t[2]=e=>o.sela=e),onChange:o.selectAll},null,8,["modelValue","onChange"])]),vue.createVNode(s,{class:"v-select-checkbox-group",style:{"overflow-y":"auto"},modelValue:o.sel,"onUpdate:modelValue":t[3]||(t[3]=e=>o.sel=e),onInput:o.checkboxInput},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(o.options,e=>(vue.openBlock(),vue.createBlock(r,{value:e.id,label:e.name},null,8,["value","label"]))),256))]),_:1},8,["modelValue","onInput"]),vue.createElementVNode("div",_hoisted_4$3,[vue.createVNode(i,{icon:"fa-sync",value:"Filtrar",onClick:o.apply},null,8,["onClick"])])])],512),[[vue.vShow,o.show]])],64)):vue.createCommentVNode("v-if",!0),l.readonly?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:2},[vue.createTextVNode(vue.toDisplayString(l.label?l.label:"---"),1)],64)):vue.createCommentVNode("v-if",!0)])}script$8.render=render$4,script$8.__file="src/v-select.vue";var script$7={name:"VSwitch",props:{modelValue:{type:Boolean,default:null}},emits:["update:modelValue"],data:()=>({options:["NO","SI"]}),computed:{selected(){return!0===this.modelValue?"SI":!1===this.modelValue?"NO":null}},methods:{onChange(e){this.$emit("update:modelValue","SI"===e||"NO"!==e&&null)}}};const _hoisted_1$5=["data-value"],_hoisted_2$4=["onClick"];function render$3(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",{class:"v-switch","data-value":String(l.modelValue)},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.options,e=>(vue.openBlock(),vue.createElementBlock("div",{key:e,onClick:t=>n.onChange(e),class:vue.normalizeClass({"v-selected":e===n.selected})},vue.toDisplayString(e),11,_hoisted_2$4))),128))],8,_hoisted_1$5)}script$7.render=render$3,script$7.__file="src/v-switch.vue";var script$6={name:"VTable",emits:["dblclick","row-select","loaded"],setup(e,t){const{autoload:l,src:o,rowKey:a="id",store:n,groups:r}=e,s=useAppStore(),i=vue.inject("viewCollector"),u=vue.inject("formCollector"),c=vue.ref(1),d=vue.ref(0),v=vue.ref(null),p=vue.ref(1),m=vue.ref([]),h=vue.ref([]),f=vue.ref(null),g=vue.ref(1),y=vue.computed(()=>{const t=e,l=h.value;let o,a;return l.sum=sum,l.filter(e=>{for(var l in t.filters)if(o=t.filters[l],"function"==typeof o){if(!o(e))return 0}else if(o&&"string"==typeof o&&l in e&&(a=e[l],"string"==typeof a&&(a=a.toUpperCase().normalize("NFD").replace(/[\u0300-\u036f]/g,""),!a.includes(o.toUpperCase()))))return 0;return 1})}),$=vue.computed(()=>{let e=y.value;return e=f?e.sort((e,t)=>{t=(t=t[f])||0,e=e[f];const l=Number(e);return l&&(e=l),e<t?-1*g:e>t?1*g:0}):e,e.sum=sum,e}),b=vue.computed(()=>{const e=function(e){return this.reduce((t,l)=>"number"==typeof e||"string"==typeof e?t+(l[e]||0):t,0)};Array.prototype.sum=e;const t={},l=r;return l?$.value.forEach(o=>{const a=o[l];if(!t[a]){const l=[];l.sum=e,t[a]=l}t[a].push(o)}):$.value.length&&(t[""]=$),Object.entries(t).map(([e,t])=>({name:e,values:t}))}),w=vue.ref(1),k=vue.ref(1),{slots:_,expose:x,emit:S}=t;vue.watch(()=>e.value,t=>{e.src||(h.value=Array.isArray(t)?t:[])},{immediate:!0,deep:!0});const V=vue.getCurrentInstance(),E=async()=>{if(null!=n){let e;db&&(e=await getStoredList(n)),e||(e=[]),h.value=h.value?e.concat(h.value):e}return h.value},C=(e,t,l)=>{c.value&&0==whichChild(e.target)||N(t,l,1)},N=(e,t,l)=>{-10===t?y.value.length===m.value.length?m.value=[]:m.value=y.value.map(e=>e):l?c.value||!m.value.includes(e)?m.value=[e]:(m.value=[],e=null):m.value.includes(e)?(m.value.splice(m.value.indexOf(e),1),e=null):m.value.push(e),S("row-select",{target:this,current:e,selection:m})},B=e=>m.value.includes(e),I=t=>{const l=[];return e.selectable&&B(t)&&l.push("v-selected"),e.rowStyleClass&&("string"==typeof e.rowStyleClass?l.push(e.rowStyleClass):e.rowStyleClass&&l.push(e.rowStyleClass(t))),l},L=(e,t)=>{T(e,t)},T=(e,t)=>{(w.value!=e||t)&&(w.value=e,F())};let A=""+e.selectable;c.value="false"!=A&&"0"!=A?1:0,A=""+e.scrollable,d.value=e.scrollable&&"false"!=A&&"0"!=A?1:0;const F=()=>{const t=e;if(m.value=[],t.value&&(h.value=[],h.value=t.value,S("loaded",{target:t}),S("row-select",{}),t.remoteLoaded=1,t.loaded=1,p.value++),o){let e=o;e.endsWith("/")&&(e=e.slice(0,e.length-1));const l=t.pagination;if(l&&(e+="/"+(w.value-1)*l+"/"+l),networkStatus.connected){let a;if(t.gql){const e=t.gql,n="query{"+Object.keys(e)[0]+"(offset:"+(w.value-1)*l+" limit:"+l+"){\ndata{"+e[Object.keys(e)[0]]+"}\nsize\n}\n}";a=s.axios.post(o,{query:n})}else a=s.axios.get(e,{params:clean(t.filters)});a.then(e=>{if(e.data&&e.data.error)MsgBox(e.data.error);else{let o=e.data;t.gql&&(o=e.data.data[Object.keys(t.gql)[0]]),h.value=o.data||o,o&&o.hasOwnProperty("size")&&l&&(k.value=Math.ceil(o.size/l),w.value>k.value&&(w.value=1),t.size=o.size),E(),S("loaded",{target:t}),S("row-select",{}),t.remoteLoaded=1,t.loaded=1,p.value++}}).catch(t.error)}else{h.value=[];const e=E();e.then&&e.then(e=>{h.value=e}),S("row-select",{target:t})}}p.value++,t.loaded=1},D=vue.computed(()=>m.value.length);F.rowSelectedCount=D,F.src=o,u&&(F.getForm=u.get),F.rowKey=a,F.rowSelect=N;const q=e=>v.value===e;F.is=q,F.remove=e=>{const t=h.value.findIndex(t=>t===e);-1!==t&&h.value.splice(t,1)},F.selected=m,F.type="v-table",i.push(F);const M=e=>{13===e.keyCode&&(e.preventDefault(),F())};return vue.onMounted(()=>{!0===l&&F(),setTimeout(()=>{const e=V.proxy,t=e.$el.querySelectorAll(".v-cloned-header div > span"),l=Math.max(...Array.from(t).map(e=>e.offsetHeight));t.forEach(e=>{e.style.height=l+"px"});e.$el.querySelectorAll("v-filter").forEach(e=>{e.querySelectorAll("input").forEach(e=>e.addEventListener("keyup",M))})},100)}),vue.onUnmounted(()=>{i.remove(F)}),x({load:F,rowSelectedCount:D,j_is:q}),()=>{let t=0;const l=_.default({row:{}}),o=[];l.forEach((e,l)=>{const a=e.props;e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{a.filter=t,e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{a.footer=t,e.children.shift()})),t+=a.width?Number(a.width):0,o.push({filter:a.filter,header:a.header,width:a.width})}),t+=c.value?42:0;const a=vue.h("div",{className:"v-datatable-scrollable-header-box",style:"left: 0px;"},vue.h("table",{className:"v-cloned-header v-table",style:{width:`${t}px`}},[c.value?vue.h("th",{width:42},[vue.h("span",{onclick(){N(null,-10)},className:"v-check"},vue.h(vueFontawesome.FontAwesomeIcon,{icon:m.value.length?freeRegularSvgIcons.faSquareCheck:freeRegularSvgIcons.faSquare,class:"fa-lg"}))]):null,o.map(e=>vue.h("th",e,vue.h("div",[vue.h("span",{style:"display: flex;justify-content: center;align-items: center;"},[e.header]),vue.h("v-filter",e.filter?.children)])))]));return vue.h("div",{ref:v,className:"v-datatable "+e.class},[_.header?vue.h("div",{className:"v-datatable-header v-widget-header ui-corner-top"},_.header()):null,e.pagination?vue.h("div",{className:"v-paginator v-paginator-top v-widget-header v-paginator-pages center"},[vue.h(script$q,{value:"|<",disabled:w.value<=1,onClick:()=>L(1)}),vue.h(script$q,{value:"<",disabled:w.value<=1,onClick:()=>L(w.value-1)}),vue.h("div",{style:"padding:3px 8px;display:inline-block"},[vue.h("input",{type:"number",style:"width:60px",value:w.value,onInput:e=>L(Number(e.target.value),!0)}),"/"+k.value]),vue.h(script$q,{value:">",disabled:w.value==k.value,onClick:()=>L(w.value+1)}),vue.h(script$q,{value:">|",disabled:w.value==k.value,onClick:()=>L(k.value)})]):null,vue.h("div",{className:"v-widget-header v-datatable-scrollable-header",style:"position: relative; margin-right: 0px;"},a),vue.h("div",{className:"v-datatable-scrollable-body",style:"overflow-y: auto; flex:1",onScroll(e){const t=e.currentTarget.scrollLeft;a.el.style.transform="translateX(-"+t+"px)"}},[vue.h("table",{className:"v-table",style:{width:`${t}px`}},[vue.h("thead",{className:"v-head-cloned"},[c.value?vue.h("th",{width:42}):null,...o.map(e=>vue.h("th",{width:e.width}))]),vue.h("tbody",{className:"v-datatable-data",key:p.value},b.value.length<1?vue.h("td",{colspan:o.length+(c.value?1:0)},e.emptyMessage):[b.value.map(e=>[_["header-group"]?vue.h("tr",{className:"v-header-group"},[_["header-group"]({group:e})]):null,(e.values.value||e.values).map((e,t)=>{const l=_.default({row:e,index:t});return l.forEach((e,t)=>{e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{e.children.shift()}))}),vue.h("tr",{class:I(e),onDblclick(l){C(l,e,t),S("dblclick",l)},onclick(l){C(l,e,t)}},[c.value?vue.h("td",{className:"center"},vue.h("span",{onclick(){N(e,t)},className:"v-check"},vue.h(vueFontawesome.FontAwesomeIcon,{icon:B(e)?freeRegularSvgIcons.faSquareCheck:freeRegularSvgIcons.faSquare,class:"fa-lg"}))):null,...l])}),_["footer-group"]?vue.h("tr",{className:"v-footer-group"},[c.value?vue.h("td"):null,_["footer-group"]({group:e})]):null,_["extra-group"]?_["extra-group"]({group:e,groups:b.value}):null])])])])])}},props:{class:null,value:Array,filterKey:String,reflow:null,summary:null,src:String,gql:null,filters:Object,store:null,width:null,emptyMessage:{default:"No existen registros"},groups:{default:""},rowKey:{default:"id"},rowStyleClass:null,pagination:null,selectable:{default:!0},scrollable:null,autoload:{default:!0}},data:()=>({resizeAfterUpddate:0,active:0,keyBody:1,row:{},kt:0,size:null,sortKey:"",paginatio_:0,remoteLoaded:null,loaded:!1,sortOrders:{},rowStyleClassFunc:null}),created(){const me=this;me.$parent.tabs||(me.active=1),me.paginatio_=me.pagination?me.pagination:0,me.rowStyleClass&&eval("me.rowStyleClassFunc=function(row){return "+me.rowStyleClass+"}")},beforeUpdate(){this.active&&this.value},filters:{capitalize:e=>e?e.charAt(0).toUpperCase()+e.slice(1):e},methods:{hasSlot(e){return!!this.$slots[e]},sortBy(){},filter(){alert(12)}},__file:"src/v-table.vue"},script$5={name:"VTabview",data:()=>({tabs:[],height:0,currentTabIndex:0,k:0}),methods:{load(e){var t=new Event("command",{bubbles:!1});t.name="refresh",t.target=this.$el,this.$el.children[1+this.currentTabIndex].dispatchEvent(t)},reset(){this.load(this.k++)}},watch:{currentTabIndex(e){var t=this,l=t.$el.children[e+1];if(t.$children[e+1],l){var o=new Event("tabChange",{bubbles:!1});o.$target=t,l.dispatchEvent(o),t.$el.style.height=t.height+"px",(o=new Event("parentResize",{bubbles:!1})).height=t.$el.offsetHeight-25,l.style.height=o.height+"px",setTimeout(()=>{l.dispatchEvent(o)},2)}}},updated(){for(var e=this.$el.children,t=1;t<e.length;t++)e[t].tagName&&(t-1===this.currentTabIndex&&(e[t].style.display="flex",e[t].style.flex="1",e[t].style.flexDirection="column"),t-1===this.currentTabIndex?e[t].classList.remove("hide"):(e[t].style.display="none",e[t].classList.add("hide"))),console.log(e[t])},mounted(){for(var e=this,t=e.$el.children,l=1;l<t.length;l++)t[l].style.display="none",e.tabs.push({title:""+t[l].getAttribute("tab")});e.$el.addEventListener("parentResize",l=>{e.$el.style.height=l.height+1+"px",e.height=l.height+1;var o=new Event("parentResize",{bubbles:!1});o.height=e.$el.offsetHeight-25,o.target=e.$el,o.$target=e;for(var a=1;a<t.length;a++)"none"!=t[a].style.display&&(console.log("Se envia el alto "+o.height),t[a].style.height=o.height+"px",t[a].dispatchEvent(o));e.$emit("resize",o)}),t[1+e.currentTabIndex].setAttribute("active",1);var o=new Event("tabChange",{bubbles:!1});o.$target=e,t[1+e.currentTabIndex].dispatchEvent(o)}};const _hoisted_1$4={class:"v-tab-nav"},_hoisted_2$3=["onClick"];function render$2(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",{class:"v-tabview",style:vue.normalizeStyle({height:a.height+"px"})},[vue.createElementVNode("ul",_hoisted_1$4,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.tabs,(e,t)=>(vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass({"v-selected":t==a.currentTabIndex}),key:t,onClick:e=>a.currentTabIndex=t},vue.toDisplayString(e.title),11,_hoisted_2$3))),128))]),vue.renderSlot(e.$slots,"default")],4)}script$5.render=render$2,script$5.__file="src/v-tabview.vue";var script$4={name:"VTextarea",props:{modelValue:String},setup(e,{emit:t}){const l=vue.ref(null),o=()=>{l.value&&(l.value.style.height="auto",l.value.value&&(l.value.style.height=`${l.value.scrollHeight}px`))},a=()=>{vue.nextTick(o)};return vue.watch(()=>e.modelValue,a,{immediate:!0}),vue.onMounted(()=>{const e=l.value;e&&(e.addEventListener("change",o),e.addEventListener("cut",a),e.addEventListener("paste",a),e.addEventListener("drop",a),e.addEventListener("keydown",a),a())}),{textarea:l,updateValue:e=>{t("update:modelValue",e.target.value),a()}}}};const _hoisted_1$3=["value"];function render$1(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("textarea",{ref:"textarea",value:l.modelValue,onInput:t[0]||(t[0]=(...e)=>o.updateValue&&o.updateValue(...e))},null,40,_hoisted_1$3)}script$4.render=render$1,script$4.__file="src/v-textarea.vue";const _hoisted_1$2={style:{cursor:"pointer"}},_hoisted_2$2=["disabled"],_hoisted_3$2=["data-icon"],_hoisted_4$2=["value"];var script$3={__name:"v-uploader",props:{value:String,onlyicon:Boolean,click:Function,icon:String,domain:String,dst:String,disabled:{type:Boolean,default:!1}},emits:["update:value","input"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(0),n=vue.ref(!1);function r(){l.disabled||l.click&&l.click()}function s(e){if(l.disabled)return void(e.target.value="");const t=e.target.files?.[0];t&&(a.value=0,function(e,t){if(l.disabled)return;const r=new FormData;if(t=t||e.name.replace(/[^\w\s.]/gi,""),r.append("filename",t),r.append("file",e,t),l.dst){const e=l.dst.endsWith("\\")?l.dst+t:l.dst+"\\"+t;r.append("dst",e)}n.value=!0,axios$2.post((l.domain||"")+"/api/file/upload",r,{headers:{"Content-Type":"multipart/form-data"},onUploadProgress:e=>{a.value=Math.round(100*e.loaded/(e.total||1))}}).then(e=>{o("input",e.data),o("update:value",e.data)}).catch(e=>{console.error("Upload error:",e)}).finally(()=>{n.value=!1})}(t))}return(t,l)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["v-uploader",[e.onlyicon?"":"v-button ui-widget ui-state-default ui-corner-all",{disabled:e.disabled}]]),style:vue.normalizeStyle({padding:e.onlyicon?"0px":""}),onClick:r},[vue.createElementVNode("label",_hoisted_1$2,[e.click?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("input",{key:0,type:"file",disabled:e.disabled,onChange:s},null,40,_hoisted_2$2)),vue.createElementVNode("i",{class:vue.normalizeClass(["fa",e.icon||"fa-upload"]),"data-icon":e.icon,style:vue.normalizeStyle({marginRight:e.onlyicon||!e.value?"":"10px"})},null,14,_hoisted_3$2),vue.createTextVNode(" "+vue.toDisplayString(e.onlyicon?"":e.value??"Adjuntar Archivo")+" ",1),n.value?(vue.openBlock(),vue.createElementBlock("progress",{key:1,max:"100",value:a.value,style:{width:"100%"}},null,8,_hoisted_4$2)):vue.createCommentVNode("v-if",!0)])],6))},__file:"src/v-uploader.vue"},script$2={name:"VItem",setup:({href:e},{emit:t})=>({click:()=>{e?useAppStore().router.push({path:e}):t("click")}}),props:{icon:String,style:Object,label:String,href:String}};function render(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("li",{onClick:t[0]||(t[0]=(...e)=>o.click&&o.click(...e)),style:vue.normalizeStyle(l.style)},[vue.createElementVNode("i",{class:vue.normalizeClass(["fa",l.icon])},null,2),vue.createTextVNode(vue.toDisplayString(l.label)+" ",1),vue.renderSlot(e.$slots,"label")],4),vue.createElementVNode("ul",null,[vue.renderSlot(e.$slots,"default")])],64)}script$2.render=render,script$2.__file="src/v-item.vue";const _hoisted_1$1={style:{padding:"20px"}},_hoisted_2$1={class:"v-form"},_hoisted_3$1=["onUpdate:modelValue"],_hoisted_4$1={style:{"padding-top":"5px"},class:"right"};var script$1={__name:"v-filter-date",props:{modelValue:{type:String,default:null},name:{type:String,default:""},min:{type:String,default:null},max:{type:String,default:null}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(null),n=vue.ref(!1),r=vue.ref(null);const s=vue.ref([{operator:"=",value:null}]);let i=null;const u=vue.computed(()=>!!l.modelValue),c=vue.ref(""),d=vue.computed(()=>{const e=l.name||c.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function v(){c.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map($).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await vue.nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function p(){n.value=!1,i&&(unmask(i),i=null)}function m(){s.value.push({operator:"=",value:null})}function h(e){return e||null}function f(){const e=h(s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>{const t=function(e){if(!e)return null;return date(e,"date-")||null}(e.value);return t?`${e.operator}${t}`:null}).filter(Boolean).join("&"));e!==h(l.modelValue)&&o("update:modelValue",e),p()}function g(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],p()}function y(){p()}function $(e){const t=e.match(/^(>=|<=|>|<|=)(\d{4}-\d{2}-\d{2})$/);return t?{operator:t[1],value:t[2]}:null}return(t,l)=>{const o=vue.resolveComponent("v-button"),i=vue.resolveComponent("v-calendar"),c=vue.resolveComponent("center"),p=vue.resolveComponent("v-panel");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(o,{ref_key:"button",ref:r,class:vue.normalizeClass(["v-filter",{"v-selected":u.value}]),icon:"fa-calendar",onClick:vue.withModifiers(v,["prevent","stop"])},null,8,["class"]),(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[vue.withDirectives(vue.createVNode(p,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:d.value},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1,[vue.createElementVNode("div",_hoisted_2$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.value,(t,a)=>(vue.openBlock(),vue.createElementBlock("div",{key:a,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[vue.withDirectives(vue.createElementVNode("select",{"onUpdate:modelValue":e=>t.operator=e,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...l[0]||(l[0]=[vue.createElementVNode("option",{value:">="},">=",-1),vue.createElementVNode("option",{value:">"},">",-1),vue.createElementVNode("option",{value:"="},"=",-1),vue.createElementVNode("option",{value:"<"},"<",-1),vue.createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3$1),[[vue.vModelSelect,t.operator]]),vue.createVNode(i,{modelValue:t.value,"onUpdate:modelValue":e=>t.value=e,style:{flex:"1"},min:e.min,max:e.max},null,8,["modelValue","onUpdate:modelValue","min","max"]),vue.createVNode(o,{icon:"fa-trash",onClick:vue.withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(a),["prevent"])},null,8,["onClick"])]))),128)),vue.createElementVNode("div",_hoisted_4$1,[vue.createVNode(o,{icon:"fa-plus",onClick:vue.withModifiers(m,["prevent"])})])]),vue.createVNode(c,{style:{"padding-top":"20px"}},{default:vue.withCtx(()=>[vue.createVNode(o,{icon:"fa-check",value:"Aceptar",onClick:f}),vue.createVNode(o,{icon:"fa-times",value:"Limpiar",onClick:g}),vue.createVNode(o,{icon:"fa-ban",value:"Cancelar",onClick:vue.withModifiers(y,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vue.vShow,n.value]])]))],64)}},__file:"src/v-filter-date.vue"};const _hoisted_1={style:{padding:"20px"}},_hoisted_2={class:"v-form"},_hoisted_3=["onUpdate:modelValue"],_hoisted_4=["onUpdate:modelValue"],_hoisted_5={style:{"padding-top":"5px"},class:"right"};var script={__name:"v-filter-number",props:{modelValue:{type:String,default:null},name:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(null),n=vue.ref(!1),r=vue.ref(null);const s=vue.ref([{operator:"=",value:null}]);let i=null;const u=vue.computed(()=>!!l.modelValue),c=vue.ref(""),d=vue.computed(()=>{const e=l.name||c.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function v(){c.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map(y).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await vue.nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function p(){n.value=!1,i&&(unmask(i),i=null)}function m(){s.value.push({operator:"=",value:null})}function h(){const e=s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>`${e.operator}${e.value}`).join("&");o("update:modelValue",e||null),p()}function f(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],p()}function g(){p()}function y(e){const t=e.match(/^(>=|<=|>|<|=)(-?\d+(?:\.\d+)?)$/);return t?{operator:t[1],value:t[2]}:null}return(e,t)=>{const l=vue.resolveComponent("v-button"),o=vue.resolveComponent("center"),i=vue.resolveComponent("v-panel");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(l,{ref_key:"button",ref:r,class:vue.normalizeClass(["v-filter",{"v-selected":u.value}]),icon:"fa-hashtag",onClick:vue.withModifiers(v,["prevent","stop"])},null,8,["class"]),(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[vue.withDirectives(vue.createVNode(i,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:d.value},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1,[vue.createElementVNode("div",_hoisted_2,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.value,(e,o)=>(vue.openBlock(),vue.createElementBlock("div",{key:o,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[vue.withDirectives(vue.createElementVNode("select",{"onUpdate:modelValue":t=>e.operator=t,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...t[0]||(t[0]=[vue.createElementVNode("option",{value:">="},">=",-1),vue.createElementVNode("option",{value:">"},">",-1),vue.createElementVNode("option",{value:"="},"=",-1),vue.createElementVNode("option",{value:"<"},"<",-1),vue.createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3),[[vue.vModelSelect,e.operator]]),vue.withDirectives(vue.createElementVNode("input",{"onUpdate:modelValue":t=>e.value=t,type:"number",style:{width:"120px",flex:"1"}},null,8,_hoisted_4),[[vue.vModelText,e.value]]),vue.createVNode(l,{icon:"fa-trash",onClick:vue.withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(o),["prevent"])},null,8,["onClick"])]))),128)),vue.createElementVNode("div",_hoisted_5,[vue.createVNode(l,{icon:"fa-plus",onClick:vue.withModifiers(m,["prevent"])})])]),vue.createVNode(o,{style:{"padding-top":"20px"}},{default:vue.withCtx(()=>[vue.createVNode(l,{icon:"fa-check",value:"Aceptar",onClick:h}),vue.createVNode(l,{icon:"fa-times",value:"Limpiar",onClick:f}),vue.createVNode(l,{icon:"fa-ban",value:"Cancelar",onClick:vue.withModifiers(g,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vue.vShow,n.value]])]))],64)}},__file:"src/v-filter-number.vue"},components={InputTextarea:script$s,VItem:script$2,InputText:script$t,VAutocomplete:script$r,VButton:script$q,VCalendar:script$p,VFilterDate:script$1,VFilterNumber:script,VCheckboxGroup:script$o,VCheckbox:script$n,VDataview:script$m,VFieldset:script$l,VForm:script$k,VGroup:script$j,VLayerControl:script$i,VMapControl:script$h,VMap:script$g,VNumber:script$f,VOptions:script$e,VOverlay:script$d,VPanel:script$c,VPopup:script$b,VRadioGroup:script$9,VRadio:script$a,VSelect:script$8,VSwitch:script$7,VTable:script$6,VTabview:script$5,VTextarea:script$4,VUploader:script$3};const VForm=components.VForm,IsobitUI={install(e){setApp(e),e.BUILT_ON=(void 0).VITE_APP_BUILT_ON;for(const t in components)if(components.hasOwnProperty(t)){const l=components[t];e.component(l.name||t,l)}}};setTimeout(resize,400),window.addEventListener("resize",()=>{setTimeout(resize,400)});const removeError=e=>{let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)},ui=e=>{const l={computed:{user:()=>_$1.app.session,perms(){return this.session?.perms||this.session?.allcaps||{}}},data(){return{app2:null,ui:this,_session:null,x_connected_:null,row:{},networkStatus:{connected:null}}},methods:{get(e){let t=this.$el.querySelector("form").action;window.location.href=this.apiLink(t)+"/"+e},async sync(e){let t=this,l=t.$el.querySelector("form").getAttribute("action");if(!l){l=t.$el.parentNode.getAttribute("path");let e=l.split("/");e="edit"==e[e.length-1]?e.splice(0,e.length-2):e.splice(0,e.length-1),l=t.apiLink(e.join("/"))}let o=t.$children[0].$children[0];l=o.src;let a=await t.getStoredList(o.store),n=o.selected,r=[],s=[];for(let e=0;e<n.length;e++){let t=o.data[n[e]];if(t.tmpId&&!t.synchronized)for(let e=0;e<a.length;e++)if(a[e].tmpId==t.tmpId){let t=JSON.clone(a[e]);delete t.synchronized,s.push(t),r.push(e)}}r.length>0&&axios.post(l+"/bulk"+(e.sufix?e.sufix:""),s).then(function(e){let l=e.data;for(let e=0;e<l.length;e++){if(l[e].errors){MsgBox$1(JSON.stringify(l[e].errors));break}if(l[e].error){MsgBox$1(l[e].error);break}for(let t=0;t<a.length;t++)(l[e].ext&&l[e].ext.tmpId==a[t].tmpId||l[e].tmpId==a[t].tmpId)&&(log("ui.ok"),l[e].ext&&a.ext&&(a[t].ext.error=l[e].ext.error),l[e].id&&(a[t].id=l[e].id),a[t].synchronized=1,emit("sync",l[e],a[t]))}t.setStoredList(o.store,a),t.refresh()}).catch(function(e){e.response?MsgBox$1(e.response.data):console.log(e)})}}};e||(e={data:{o:{}}});const{setup:o,...a}=e,n=o;return e={mixins:[l,a],setup(e,l){const o=useAppStore();setApp(o),o.config(getConfigApp());const a=e;let r=vueRouter.useRouter();const s=vue.getCurrentInstance(),u=vue.reactive([]),c={remove(e){u.splice(u.indexOf(e),1)},push(e){u.push(e)}},d=e=>{},v=async e=>{const t=s.proxy,l=_$1.db;let a;try{a=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==a&&(a={}),!a[e]&&t.connected){let t=_$1.stores.filter(t=>t[0]==e)[0];if(!t[2])throw`ERROR: Url for store '${t[0]}' is empty!`;let{data:n}=await o.axios.get(t[2]);n=n.data||n,await new Promise((o,r)=>{let s=l.transaction([t[0]],"readwrite"),i=s.objectStore(t[0]);const u=i.clear();u.onsuccess=()=>{n.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},u.onerror=()=>{console.error(`⚠️ Store '${t[0]}' error data!`,t)},s.oncomplete=()=>{a[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(a)),o()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),r()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},p=()=>{u.find(e=>"v-table"==e.type)()};vue.provide("refresh",p);const m=(e,t,l)=>{let o=u.find(e=>"v-popup"==e.type);if(console.log(e),e.open)e.open();else if(o&&(e instanceof String||"string"==typeof e))o.open(e);else if(!(e.$el||e instanceof HTMLElement)){let t=e,l=t.target;return"string"==typeof t?l=t:"ION-ITEM"==l.tagName&&l.href?(t.preventDefault(),l=l.href):(t.preventDefault(),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l=l.pathname),void(r.path!==l&&r.push(l))}},h=(e,t,l)=>{"string"==typeof t&&(t={body:t});let a="string"==typeof l?{fileName:l}:l;a||(a={}),(""+t?o.axios.post(e,t,{responseType:"blob"}):o.axios({method:"post",url:e,data:t,headers:{"Content-Type":"multipart/form-data"}})).then(e=>{const t=window.URL.createObjectURL(new Blob([e.data])),l=document.createElement("a");if(l.href=t,!a.fileName){const t=e.headers["content-disposition"];if(t&&-1!==t.indexOf("attachment")){const e=/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/.exec(t);null!=e&&e[1]&&(a.fileName=e[1].replace(/['"]/g,"").trim())}else console.warn("content-disposition: attachment; filename = <filename>; header no es accesible o no esta definido correctamente")}l.setAttribute("download",a.fileName),document.body.appendChild(l),l.click()})},f=n=>{const r=n?.target?.closest("form"),c=r?.closest(".v-msgbox")?.closest(".v-overlay");let d=u.filter(e=>"v-form"===e.type).find(e=>e.$el?.children?.[0]===r);d||(d=u.find(e=>"v-form"===e.type));const p=s.proxy;d.$forceUpdate();let m=d.$el,h=m.querySelector("form");if(y(h)){let n=h.getAttribute("action"),r=p.data||p.o,s=JSON.parse(JSON.stringify(r));if(p.process&&(s=p.process(s)),"object"!=typeof s||Array.isArray(s)||null===s)return;if(console.log("action/componet==",n,p,l),n&&o.connected)o.axios.post(n,s).then(t=>{let l=t.data;if(s.tmpId){alert(12);let e=a.$children[0].store,t=window._.db.transaction([e],"readwrite").objectStore(e),o=t.get(s.tmpId);l.id&&(s.id=l.id,r.id=s.id),o.onsuccess=function(){let e;r.synchronized=1,s.synchronized=1,e=o.result?t.put(s):t.add(s),e.onerror=e=>{console.error(e)},a.$emit("sync",l,s)},o.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}o&&o.toast?o.toast("El registro fue grabado exitosamente!",()=>{console.log(e),p.close({success:!0,data:l}),c?.closeDialog?.(1)}):MsgBox$1("El registro fue grabado exitosamente! msg",()=>{w({success:!0,data:l}),c?.closeDialog?.(1)})}).catch(function(e){if(e.response){let l,o;if("string"==typeof e.response.data)MsgBox$1(e.response.data);else{l=e.response.data.propertyViolations;for(let e=0;e<l.length;e++){let t=l[e];o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message)}for(l=e.response.data.fieldViolations,i=0;i<l.length;i++)t=l[i],o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message+", valor="+t.value);MsgBox$1("Verifique el formulario, aun tiene campos obligatorio completar."),"v-dialog"==a.$el.parentNode.className&&a.$el.parentNode.parentNode.scroll({top:0,behavior:"smooth"})}}});else{console.log("se guarda localmente");const e=u[0].store;if(!e)return void MsgBox$1("Store in form is undefined!");v(e).then(t=>{if(t||(t=[]),s.id)for(let e=0;e<t.length;e++)t[e].tmpId==s.tmpId&&(delete s.synchronized,t[e]=s);let l=_$1.db.transaction([e],"readwrite").objectStore(e);if(s.id){delete s.synchronized;let e=l.get(s.tmpId);e.onsuccess=function(){e.result?l.put(s):t.forEach(e=>{e.tmpId==s.tmpId&&l.put(s)}),a.$emit("stored",s,t,l),a.$ionic&&o.toast("El registro fue grabado exitosamente! onstored"),p.close({success:!0,data:s})},e.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}else{s.tmpId=1*new Date,s.id=-s.tmpId;let e=l.add(s);e.onsuccess=e=>{t.unshift(s),a.$emit("stored",s,t,l),o&&o.toast&&o.toast("El registro fue grabado exitosamente! storeeeeee not connected"),r.tmpId=s.tmpId,r.id=s.id,console.log("========>>",p),p.close({success:!0,data:s})},e.onerror=e=>{o&&o.toast&&o.toast("Error!")}}})}}else MsgBox$1("Verifique el formulario, aun tiene campos obligatorios sin completar."),"v-dialog"==m.parentNode.className?m.parentNode.parentNode.scroll({top:0,behavior:"smooth"}):m.querySelector("form > .v-form").scroll({top:0,behavior:"smooth"})},g=(e,t)=>{e.$el&&(e=e.$el),removeError(e);let l=e.previousElementSibling;for(;l&&1!=l.nodeType;)l=l.previousElementSibling;if(!l)for(l=e.parentElement.previousElementSibling;l&&1!=l.nodeType;)l=l.previousElementSibling;let o=document.createElement("div");o.innerHTML="Este campo es requerido!",o.classList.add("v-error"),e.parentNode.insertBefore(o,e)},y=e=>{const t=[],l=[],o=s.proxy;e=e&&0!=e?e:o.$el;const a=e?.querySelectorAll("input,select,textarea,div[required=required]");let n,r={};for(let e=0;a?.length>e;e++){let o=a[e];if("radio"===o.type){let e=r[o.name];e||(r[o.name]=e=[]),e.push(o);continue}if(o.error&&(o.error.style.display="none"),!o.disabled&&!o.getAttribute("disabled")&&(o.required||"DIV"===o.tagName))if("DIV"!=o.tagName&&!o.value||"DIV"===o.tagName&&!o.attributes.value){for(n=o.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;if(!n)for(n=o.parentElement.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;t.push(o)}else l.push(o)}for(let e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const o=r[e];let a=!1,s=!1;for(let e=0;e<o.length;e++)o[e].required&&!o[e].disabled&&(s=!0),o[e].checked&&(a=!0);const i=o[0].parentNode.parentNode;n=i.previousElementSibling,n&&n.classList&&n.classList.contains("v-error")&&n.parentNode.removeChild(n),s&&!a?t.push(i):l.push(i)}for(const e of t)g(e);for(const e of l){let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)}return!t.length},$=(e,t)=>{let l=e.parentElement;for(;l;){const e=l.querySelector(t);if(e)return e;l=l.parentElement}return null},b=e=>{const t=$(e.target,".v-datatable");let l=u.filter(e=>"v-table"==e.type).find(e=>e.is(t)),o=l.getForm().action;var a;o||(o=window.location.pathname),l&&l.src&&(o=l.src),e.action&&(o=e.action),o&&(a=o.replace("/api","").replace("/0/0",""),o="/admin"+a);const n=l.selected.value[0];let r=n[l.rowKey];n.tmpId&&(r=-n.tmpId),m(o+"/"+r+"/edit")},w=t=>{t&&e.callback&&e.callback(t)};vue.provide("viewCollector",c);const k=vue.computed(()=>{let e=u.find(e=>e.selected?.value.length>0);return e?.rowSelectedCount||0}),_=vue.computed(()=>clean(x.value)),x=vue.reactive({}),S=vue.ref(null);let V;vue.watch(x,()=>{u.find(e=>"v-table"==e.type)&&(S.value&&clearTimeout(S.value),S.value=setTimeout(()=>{p()},1200))});const E=()=>{clearTimeout(V),V=setTimeout(()=>{const e=document.querySelector(".v-datatable");e?.parentNode&&buildPopupMenu(e)},100)};vue.onMounted(()=>{r=vueRouter.useRouter(),l.emit("sync",{u:9}),E(),window.addEventListener("resize",E)}),vue.onUnmounted(()=>{window.removeEventListener("resize",E)});const C=vue.computed(()=>o.axios.defaults.baseURL),N=vue.computed(()=>o.session);let B=n?n({...e,$on:(e,t)=>{},router:r,getStoredList:v,app:o,save:f,open:m,refresh:p,saveAs:h,edit:b},l):{};l.expose({router:r});let I={app:o,cleanedFilters:_,router:r,baseURL:C,filters:x,session:N,date:date,pad:pad,getStoredList:v,refresh:p,getSelected:()=>u.find(e=>"v-table"==e.type).selected.value,saveAs:h,validate:y,save:f,open:m,close:w,create:e=>{const t=$(e.target,".v-datatable");let l=u.filter(e=>"v-table"==e.type).find(e=>e.is(t)).getForm().action;l||(l=window.location.pathname),l&&(l=l.replace("/api","")),l+="/create",o&&m(l)},edit:b,destroy:e=>{let t=this;const l=$(e.target,".v-datatable");let a=u.filter(e=>"v-table"==e.type).find(e=>e.is(l));u.find(e=>"v-table"!=e.type).action;let n=e.$vnode?e.load:null,r=a.rowKey,s=a.selected.value[0];if(s.tmpId)MsgBox$1("Esta seguro que desea eliminar los registros temporales seleccionados ?",function(e){if(0==e){let e=0,l=_$1.db.transaction([a.store],"readwrite").objectStore(a.store),r=[];for(let t=a.selected.length-1;t>=0;t--)s=a.data[a.selected[t]],r.push(s),s.tmpId&&l.delete(s.tmpId),e++,a.data.splice(a.selected[t],1);e&&(o&&o.toast?o.toast(e+" registros eliminados"):MsgBox$1(e+" registros eliminados")),a.rowSelect(null,-1),a.selected=[],t.$emit("destroyed",r,a.store),n&&n()}},["SI","NO"]);else{if(!r)return alert("Table don`t have defined attribute 'rowkey'");let e=s[r];MsgBox$1("Esta seguro que desea eliminar el registro seleccionado?",t=>{if(0==t){const t=a.src.replace("/0/0",""),l=[];let n=a.selected.value.length-1;o.axios.delete(t+"/"+e,{params:x.value}).then(()=>{for(;n>=0;n--)s=a.selected.value[n],l.push(s),a.remove(s);o&&o.toast?o.toast(l.length+" registros eliminados"):MsgBox$1(l.length+" registros eliminados"),a.rowSelect(null,-1),a.selected.value=[]}).catch(d)}},["SI","NO"])}},rowSelectedCount:k,...B};return I}},e};exports.Drag=Drag,exports.IsobitUI=IsobitUI,exports.MsgBox=MsgBox$1,exports.VForm=VForm,exports._=_$1,exports.app=app,exports.date=date,exports.db=db,exports.getStoredList=getStoredList,exports.id=id,exports.initDB=initDB,exports.mask=mask,exports.pad=pad,exports.removeError=removeError,exports.resize=resize,exports.setupApp=setupApp,exports.ui=ui,exports.unmask=unmask,exports.useAppStore=useAppStore;
1
+ "use strict";var vue=require("vue"),pinia=require("pinia"),axios$2=require("axios"),Observable=require("ol/Observable"),ol$1=require("ol"),FullScreen=require("ol/control/FullScreen"),GeoJSON=require("ol/format/GeoJSON"),VectorLayer=require("ol/layer/Vector"),VectorSource=require("ol/source/Vector"),style=require("ol/style"),Control=require("ol/control/Control");require("ol/ol.css");var PointerInteraction=require("ol/interaction/Pointer"),Feature=require("ol/Feature"),Map=require("ol/Map");require("ol/interaction/Pointer.js"),require("ol/interaction/defaults");var View=require("ol/View"),geom=require("ol/geom");require("ol/interaction/Select");var proj=require("ol/proj"),layer=require("ol/layer"),source=require("ol/source");require("ol/interaction/Translate");var _imports_0=require("@/cdn/images/triangle-down.svg"),vueRouter=require("vue-router"),vueFontawesome=require("@fortawesome/vue-fontawesome"),freeRegularSvgIcons=require("@fortawesome/free-regular-svg-icons"),script$t={name:"InputText"};const _hoisted_1$k={type:"text"};function render$m(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("input",_hoisted_1$k)}script$t.render=render$m,script$t.__file="src/InputText.vue";var script$s={name:"InputTextarea"};function render$l(e,t,l,o,a,n){return" text "}script$s.render=render$l,script$s.__file="src/InputTextarea.vue";const _$1={stores:[],_id:0,axios_get:null,storeFunction:{}},log=(e,...t)=>{e&&console.log(e,...t)};let configApp={};function setupApp({pinia:e,axios:t,router:l}){configApp.pinia=e||pinia.createPinia(),t&&(configApp.axios=t),l&&(configApp.router=l),pinia.setActivePinia(configApp.pinia)}function getConfigApp(){return configApp}function getPiniaInstance(){return pinia.getActivePinia()||configApp.pinia}const id=()=>_$1._id++,num=e=>e=e?""==e?null:Number(""+e):0,date=(e,t)=>{if(e){let l;if(e instanceof Date)l=e;else if("string"==typeof e){let t=e.includes("T")?e.split("T"):e.split(" ");l=t[0].split("-"),t.length>1?(t=t[1].split(":"),l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2]),parseInt(t[0]),parseInt(t[1]),t.length>2?parseInt(t[2]):0)):l.length>2?l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2])):(l=e.split(":"),l=l.length>2?new Date(1981,0,6,parseInt(l[0]),parseInt(l[1]),parseInt(l[2])):new Date(e))}else l=new Date(e);if(1==t)e=l;else if("time"===t)e=pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2);else if("time a"==t)if("string"==typeof e||e instanceof String){let t=(e=e.split(":"))[0];e=pad(t>12?t-12:t,2)+":"+e[1]+":"+e[2]+" "+(t>12?"PM":"AM")}else h=l.getHours(),e=pad(h>12?h-12:h,2)+":"+pad(l.getMinutes(),2)+(l.setSeconds()?":"+pad(l.setSeconds(),2):"")+" "+(h>12?"PM":"AM");else e="date-"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2):"dMY"==t||"date"==t?pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4):"datetime"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2)+"T"+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2):pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4)+" "+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)}return e},whichChild=e=>{let t=0;for(;null!=(e=e.previousElementSibling);)++t;return t},unmask=e=>{e&&(e.style.display="none",e.parentNode&&e.parentNode.removeChild(e))},isObject=e=>e&&"object"==typeof e&&!Array.isArray(e),mergeDeep=function(){let e=arguments[0],t=[];for(let e=1;e<arguments.length;e++)t.push(arguments[e]);if(!t.length)return e;let l,o=t.shift();if(isObject(e)&&isObject(o))for(let t in o)isObject(o[t])?(e[t]||(l={},l[t]={},Object.assign(e,l)),mergeDeep(e[t],o[t])):(l={},l[t]=o[t],Object.assign(e,l));let a=[];return a.push(e),a.concat(t),mergeDeep.apply(null,a)},buildPopupMenu=e=>{let t=e.getAttribute("v--popup");if(!t){e.setAttribute("v--popup",t=id());let l=_$1.storeFunction[t],o=e.querySelectorAll(".v-datatable-header .v-button");o&&o.length&&!l&&window.innerWidth<=700&&setTimeout(function(){l=document.createElement("ul"),l.className="v-popup-2",e.appendChild(l);let a=null;const n=e=>{l.style.display="none";let t=e.target.getAttribute("commandId"),o=document.querySelector("#"+t);"BUTTON"==o.tagName?o.click():o.children[0].click(),unmask(a)};e.style.position="relative";let r=document.createElement("div");r.className="v-mobil v-table-buttons";let s=document.createElement("i");s.className="fa fa-bars fa-w-14",r.appendChild(s),r.onclick=()=>{for(o=e.querySelectorAll(".v-datatable-header .v-button");l.firstChild;)l.removeChild(l.firstChild);for(s=0;s<o.length;s++)if("none"!=o[s].style.display){let e=document.createElement("li");if(o[s].id||(o[s].id="c-"+id()),e.setAttribute("commandId",o[s].id),"BUTTON"==o[s].tagName){if(o[s].disabled)continue;e.appendChild(o[s].children[0].cloneNode(!0)),e.appendChild(document.createTextNode(o[s].value?o[s].value:o[s].title))}else o[s].children[0].children[1]&&(e.appendChild(o[s].children[0].children[1]),e.appendChild(document.createTextNode(o[s].textContent)));e.onclick=n,l.appendChild(e)}a=mask(l),l.style.display="block",a.onclick=()=>{l.style.display="none",unmask(a)}},e.appendChild(r),_$1.storeFunction[t]=l},500)}},resize=()=>{},mask=(e,t)=>{if(!document.body)return;let l,o=document.createElement("div");o.style="top:50%;transform:translate(-50%,-50%);position:absolute;width:100%;z-index:2; display: flex;justify-content: center;";let a=o.style;if(a.left="50%",a.textAlign="center",!1!==e)if(e instanceof Element)o=e;else{if(e){let t=document.createElement("div");t.innerHTML=e,o.append(t),o.style="padding:4px;margin-bottom:5px;color:white;font-size:24px;text-align:center"}l=document.createElement("div"),a=l.style,l.className="loading"}let n=document.createElement("div");a=n.style,a.height="100%",a.top="0px",a.position="absolute",a.left="0",a.zIndex="10000",a.width="100%";let r=document.createElement("div");return r.className="v-overlay",n.appendChild(r),o.style.zIndex="1001",n.appendChild(o),n.className="v-mask",l&&o.appendChild(l),document.body.appendChild(n),n};function normalizeArgs(e,t){const l={buttons:[{label:"OK"}],closeOnEsc:!0,closeOnOutsideClick:!1,fade:!0};return e?"function"==typeof e?(l.onClose=e,Array.isArray(t)&&(l.buttons=normalizeButtons(t)),l):Array.isArray(e)?(l.buttons=normalizeButtons(e),l):{...l,...e,buttons:e.buttons?normalizeButtons(e.buttons):l.buttons}:l}function normalizeButtons(e){return e.map(e=>"string"==typeof e?{label:e}:e)}const MsgBox$1=(e,t,l)=>{const o=normalizeArgs(t,l),a=document.createElement("div");a.className="v-overlay",a.style.zIndex="2000",a.style.opacity="0",a.style.transition="opacity 0.2s ease";const n=document.createElement("div");n.className="v-dialog v-msgbox",n.style.opacity="0",n.style.transform="scale(0.95)",n.style.transition="all 0.2s ease";const r=document.createElement("div");r.className="v-dialog-content v-widget-content";const s=document.createElement("div");let i;s.className="v-msgbox-buttons";let u=null,c=null;e instanceof Element?(i=e,u=e.parentNode,c=e.nextSibling):(i=document.createElement("div"),i.innerHTML=e),r.appendChild(i);const d=async(e=null)=>{let t;o.onClose&&(t=await o.onClose(e)),!1!==t&&(u&&(c?u.insertBefore(i,c):u.appendChild(i)),o.fade?(a.style.opacity="0",n.style.opacity="0",n.style.transform="scale(0.95)",setTimeout(()=>a.remove(),200)):a.remove(),document.removeEventListener("keydown",v))};o.buttons?.length&&(o.buttons.forEach((e,t)=>{const l=document.createElement("button");if(l.type="button",l.className="_ ui-widget ui-state-default ui-corner-all v-button blue v-button-text-icon-left",l.setAttribute("value",e.label),e.icon){l.setAttribute("icon",e.icon);const t=document.createElement("i");t.className="fa "+e.icon,l.appendChild(t)}const o=document.createElement("span");o.textContent=e.label,l.appendChild(o),l.addEventListener("click",()=>d(t)),s.appendChild(l)}),r.appendChild(s)),n.appendChild(r),a.appendChild(n),a.closeDialog=d,document.body.appendChild(a),o.fade&&requestAnimationFrame(()=>{a.style.opacity="1",n.style.opacity="1",n.style.transform="scale(1)"});const v=e=>{o.closeOnEsc&&"Escape"===e.key&&d()};document.addEventListener("keydown",v),o.closeOnOutsideClick&&a.addEventListener("click",e=>{e.target===a&&d(null)});let p=n.querySelector(".v-js-close");if(!p){let e=document.createElement("span");e.className="fa fa-close",p=document.createElement("a"),p.className="v-js-close ui-dialog-titlebar-icon ui-dialog-titlebar-close ui-corner-all",p.appendChild(e),n.style.position="relative",n.appendChild(p),p.addEventListener("click",()=>d())}},configureAxios=e=>{if(e.configured)return;let t;e.configured=1,_$1.axios_get=e.get,e.interceptors.request.use(l=>(e.noInterceptor||(_$1.eeee=l,l.mask?l.mask():t||(t=mask())),l),e=>(t=unmask(t),MsgBox$1("request "+id()+" "+e.message),Promise.reject(e))),e.interceptors.response.use(l=>(t=unmask(t),delete e.noInterceptor,l),l=>{if(console.log("interceptors.response.use.error"),e.noInterceptor)return delete e.noInterceptor,t=unmask(t),Promise.reject(l);if(e.error&&0==e.error(l))t=unmask(t);else{let e,o=l.response;if(o&&("string"==typeof o.data?e=o.data:o.data&&(o.data.data&&(e=o.data.data.message),e||(e=o.data.msg||o.data.message||o.data.detail)),e||(e=o.status+": "+o.statusText)),e||(e=l.message),t=unmask(t),o&&(401==o.status||403==o.status)){const e=app();if(e&&localStorage.getItem("session"))return e.axios.noInterceptor=1,void e.axios.post(e.axios.VITE_LOGIN_PATH+"/validate",{JWT:"YOUR_JWT_HERE"}).catch(t=>{console.log("e.response=",t),t.response.data.success||MsgBox$1("Session terminada!",()=>{e.logout()})})}l.config?.error?l.config.error(l,e):l.request?MsgBox$1("<b>"+l.request.responseURL+"</b><br/><br/>"+e):MsgBox$1(e)}return delete e.error,Promise.reject(l)})},pad=(e,t)=>{if(null!=e){let l=1*e+"";for(;l.length<t;)l="0"+l;return l}},clean=e=>{const t={...e};for(let e in t)""!==t[e]&&null!==t[e]&&"function"!=typeof t[e]&&void 0!==t[e]||delete t[e];return t},sum=e=>(void 0).reduce((t,l)=>t+((l=e?l[e]:l)?Number(l):0),0);function createGetters(){return{get networkStatus(){return _$1.app?.networkStatus||{connected:!0}},get db(){return _$1.app?.db},app:()=>_$1.app,setApp(e){_$1.app=e}}}const app=()=>_$1.app,db=()=>_$1.db,initDB=(e,t)=>{let l=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;if(_$1.IDBTransaction=window.IDBTransaction||window.webkitIDBTransaction||window.msIDBTransaction,_$1.IDBKeyRange=window.IDBKeyRange||window.webkitIDBKeyRange||window.msIDBKeyRange,l){if(l)return _$1.stores=t,new Promise((o,a)=>{l.databases().then(n=>{const r=n.find(e=>"db"===e.name),s=r&&r.version||0;if(s<e){console.log(`Eliminando base de datos (versión actual: ${s}, nueva versión: ${e})`);const n=l.deleteDatabase("db");n.onblocked=e=>{console.error("DELETE DATABASE BLOCKED",e)},n.onerror=e=>{console.error("DELETE DATABASE ERROR",e),a(n.error)},n.onsuccess=()=>{sessionStorage.removeItem("loadedStores");let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}}else{let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}})})}else window.alert("Your browser doesn't support a stable version of IndexedDB.");return l},getStoredList=async(e,t)=>{const l=db();let o;try{o=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==o&&(o={}),!o[e]&&networkStatus.connected){const t=_$1.stores.filter(t=>t[0]==e);if(!t.length)throw`ERROR: store '${e}' no exists!`;let a=t[0];const{src:n}=a[1];if(!n)throw`ERROR: Url for store '${a[0]}' is empty!`;let{data:r}=await _$1.axios_get(n);r=r.data||r,await new Promise((t,n)=>{let s=l.transaction([a[0]],"readwrite"),i=s.objectStore(a[0]);const u=i.clear();u.onsuccess=()=>{r.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},u.onerror=()=>{console.error(`⚠️ Store '${a[0]}' error data!`,a)},s.oncomplete=()=>{o[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(o)),t()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),n()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},getters=createGetters(),{networkStatus:networkStatus,setApp:setApp}=getters,deleteAllCookies=()=>{const e=document.cookie.split(";");for(let t of e){const e=t.split("=")[0].trim();document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`}},useAppStore=pinia.defineStore("connection",()=>{const e=getPiniaInstance(),t=getConfigApp();if(!e)throw new Error("Pinia no ha sido inicializado. Llama a setupPinia() en tu app.");const l=vue.ref(!1),o=vue.ref(!1),a=vue.ref(t.router),n=vue.ref(t.axios),r=vue.ref(null),s=vue.ref(null);l.value="false"!==localStorage.getItem("connected");const i=async()=>{n.value.noInterceptor=1;const e=n.value.VITE_LOGIN_PATH+"/refresh";console.log("REFRESH URL:",e);const{data:t}=await n.value.post(e,{},{withCredentials:!0}),{token:l,user_nicename:o,perms:a}=t;return r.value={token:l,people:{display_name:o},perms:a},r.value};let u=null;const c=()=>{u||(u=setTimeout(async()=>{u=null;try{await i(),c()}catch(e){console.error("Error refreshing session",e)}},6e5))};vue.watch(r,e=>{if(e?.token){n.value.defaults.headers.common.Authorization=`Bearer ${e.token}`;const{token:t,...l}=e;localStorage.setItem("session",JSON.stringify(l)),c()}else delete n.value.defaults.headers.common.Authorization,u&&(clearTimeout(u),u=null)});const d=localStorage.getItem("session");r.value=d?JSON.parse(d):null,vue.watch(l,e=>{localStorage.setItem("connected",String(e))});const v=vue.computed(()=>s.value?.connected),p=vue.computed(()=>!!r.value?.token);return{connected:l,session:r,logout:()=>{r.value=null,localStorage.removeItem("session"),delete n.value.defaults.headers.common.Authorization,u&&(clearTimeout(u),u=null),deleteAllCookies(),window.location.replace("/login")},refreshSession:i,unauthorized:o,connect:e=>{r.value=e,a.value.push("/admin")},authenticated:p,config:({axios:e,router:t})=>{t&&(a.value=t),e&&(n.value=e,configureAxios(e))},axios:n,router:a,online:v,networkStatusChange:e=>{s.value=e}}});var script$r={name:"VAutocomplete",props:{modelValue:{type:Object,default:null},data:{type:Array,default:()=>null},placeholder:String,label:String,default:Object,store:String,params:Object,autoload:{type:Boolean,default:!1},floating:{type:Boolean,default:!0},src:String,readonly:Boolean,nowrap:Boolean,disabled:Boolean,showSelection:{type:Boolean,default:!0},pagination:{type:Number,default:10}},setup(e,t){const{emit:l,slots:o}=t;useAppStore();const a=vue.ref(0),n=vue.ref(null),r=vue.ref(-1),s=vue.ref(""),i=vue.ref(null),u=vue.ref(!1),c=vue.ref(0),d=vue.ref(""),v=vue.ref(null);vue.watch(()=>e.modelValue,e=>{console.log("==============>",e),n.value=e}),vue.watch(()=>e.data,e=>{i.value=e}),vue.onMounted(()=>{d.value=e.inputClass,e.autoload&&m(),document.addEventListener("click",f)}),vue.onBeforeUnmount(()=>{document.removeEventListener("click",f)});const p=vue.computed(()=>{r.value=-1;const e=s.value?s.value.trim().toLowerCase().split(/[ ,]+/):null;return i.value&&s.value?i.value.filter(t=>{const l=JSON.stringify(t).toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"");return e.every(e=>l.includes(e))}):i.value}),m=async t=>{const{src:o,source:n}=e;let r=Number(e.pagination);if(1===t)a.value+=r;else if(a.value=0,e.data&&e.autoload)return;let d={query:s.value};e.params&&(d=mergeDeep(d,e.params)),axios$2.get((o||e.source)+(r>0?"/"+a.value+"/"+r:""),{params:d}).then(l=>{const o=l.data;console.log(o),o.error?MsgBox(o.error):(i.value=1===t?i.value.concat(o.data?o.data:o):o.data?o.data:o,console.log(i),c.value=o.size,e.autoload||(u.value=!0),console.log("========================="))}).catch(h).then(()=>{l("complete",{data:i.value,query:s.value,target:"me"})})},h=e=>{console.log(e)},f=e=>{const t=v.value;t&&!t.contains(e.target)&&(u.value=!1)};return{query:s,show:u,selected:n,data2:p,focused:r,autocomplete:v,inputClass:d,search:m,remove:()=>{n.value=null,l("update:modelValue",null)},clickout:f,focusout:e=>{},setSelected:e=>{n.value=e,l("update:modelValue",e)},getLabel:t=>{if(e.label){const l=e.label.split(".");for(let e=0;e<l.length;e++)t&&(t=t[l[e]])}return t},hasSlot:(e="default")=>!!o[e]}}};const _hoisted_1$j=["value","disabled"],_hoisted_2$a=["disabled","placeholder"],_hoisted_3$7={class:"v-list"},_hoisted_4$6=["onClick"],_hoisted_5$1={key:0,class:"center yellow",style:{padding:"5px"}};function render$k(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",{class:"v-autocomplete",onFocusout:t[7]||(t[7]=(...e)=>o.focusout&&o.focusout(...e)),ref:"autocomplete",value:e.value,disabled:l.disabled},[o.selected&&l.showSelection?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"v-selection",style:vue.normalizeStyle({whiteSpace:l.nowrap?"nowrap":""})},[vue.renderSlot(e.$slots,"label",{selected:o.selected}),vue.createTextVNode(" "+vue.toDisplayString(o.hasSlot("label")?" ":o.getLabel(o.selected))+"  ",1),l.readonly?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("span",{key:0,onClick:t[0]||(t[0]=(...e)=>o.remove&&o.remove(...e)),class:"remove-icon"},[...t[8]||(t[8]=[vue.createElementVNode("i",{class:"fa fa-times"},null,-1)])]))],4)):vue.createCommentVNode("v-if",!0),o.selected?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("span",{key:1,onClick:t[1]||(t[1]=(...e)=>o.search&&o.search(...e)),class:"search-icon"},[...t[9]||(t[9]=[vue.createElementVNode("i",{class:"fa fa-xs fa-sync"},null,-1)])])),o.selected?vue.createCommentVNode("v-if",!0):vue.withDirectives((vue.openBlock(),vue.createElementBlock("input",{key:2,onKeyup:[t[2]||(t[2]=(...t)=>e.keyup&&e.keyup(...t)),t[3]||(t[3]=vue.withKeys(vue.withModifiers((...e)=>o.search&&o.search(...e),["stop","prevent"]),["enter"]))],class:vue.normalizeClass(o.inputClass),onFocus:t[4]||(t[4]=e=>o.show=!0),disabled:l.disabled,placeholder:l.placeholder,"onUpdate:modelValue":t[5]||(t[5]=e=>o.query=e)},null,42,_hoisted_2$a)),[[vue.vModelText,o.query]]),vue.createVNode(vue.Transition,{name:"fade",persisted:""},{default:vue.withCtx(()=>[vue.withDirectives(vue.createElementVNode("div",{class:"v-resultpane",style:vue.normalizeStyle({zIndex:2,width:"calc(100% - 2px)",position:l.floating?"absolute":"relative"})},[vue.createElementVNode("div",_hoisted_3$7,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(o.data2,(t,l)=>(vue.openBlock(),vue.createElementBlock("div",{key:l,class:vue.normalizeClass({"v-selected":o.selected==t,"v-focused":o.focused==l}),onClick:e=>o.setSelected(t)},[vue.renderSlot(e.$slots,"default",{row:t})],10,_hoisted_4$6))),128)),e.data0&&e.data0.length<e.total?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"center",onClick:t[6]||(t[6]=e=>o.search(1))},"Load more "+vue.toDisplayString(e.total-e.data0.length)+" results...",1)):vue.createCommentVNode("v-if",!0)]),o.data2&&o.data2.length<1?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5$1,"No results found.")):vue.createCommentVNode("v-if",!0)],4),[[vue.vShow,o.show&&!o.selected]])]),_:3})],40,_hoisted_1$j)}script$r.render=render$k,script$r.__scopeId="data-v-72884078",script$r.__file="src/v-autocomplete.vue";var script$q={name:"VButton",mounted(){var e=this,t=document.createElement("span"),l=document.createElement("i");t.className="ui-button-text ui-c ",t.innerHTML=e.$attrs.value?e.$attrs.value:"ui-button",e.$el.addEventListener("click",t=>{t.component=e}),e.$attrs.icon?(e.$attrs.value?e.$el.classList.add("v-button-text-icon-left"):e.$el.classList.add("v-button-icon-only"),l.dataset.icon=e.$attrs.icon,l.className="fa "+e.$attrs.icon,e.$el.appendChild(l)):(t=document.createElement("span"),e.$el.classList.add("ui-button-text-only"),e.$el.appendChild(t)),e.$attrs.value&&((t=document.createElement("span")).appendChild(document.createTextNode(e.$attrs.value)),e.$el.appendChild(t)),e.updateIcon()},methods:{updateIcon(){var e=this;setTimeout(function(){var t=e.$el.querySelector("svg");if(t){var l=t.dataset;l.icon||(l.icon=e.$attrs.icon)}},1e3)}}};const _hoisted_1$i={type:"button",class:"_ ui-widget ui-state-default ui-corner-all v-button"};function render$j(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("button",_hoisted_1$i)}script$q.render=render$j,script$q.__file="src/v-button.vue";var script$p={name:"VCalendar",props:{modelValue:null,type:String,required:String,readonly:String,max:String,min:String},setup(e,{emit:t}){const l=vue.ref(null),o=e=>{t("update:modelValue",e),vue.nextTick(()=>{t("changed",e)})},a=t=>{if(!t)return t;if("time"===e.type){const e=t.split(":");return new Date(1981,1,6,parseInt(e[0]),parseInt(e[1]),e.length>2?parseInt(e[2]):0)}if(!isNaN(t))return new Date(Number(t));if("datetime-local"===e.type){let e=t.split("T");const l=e[1].split(":");return e=e[0].split("-"),new Date(parseInt(e[0]),parseInt(e[1])-1,parseInt(e[2]),parseInt(l[0]),parseInt(l[1]),l.length>2?parseInt(l[2]):0)}const l=t.split("-"),o=parseInt(l[0]);return o<100?t:new Date(o,parseInt(l[1])-1,parseInt(l[2]))},n=t=>{if(!l.value)return;const o=a(t);let n="";o&&(n="string"==typeof o?o:"time"===e.type?pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):"datetime-local"===e.type?pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)+"T"+pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)),l.value.value=n};return vue.watch(()=>e.modelValue,e=>{n(e)}),vue.onMounted(()=>{n(e.modelValue)}),{enterD:n=>{const r=n.target.value;let s=a(r);return e.max&&s&&s.getTime()>=a(e.max).getTime()||e.min&&s&&s.getTime()<=a(e.min).getTime()?(t("invalid",{target:l.value,value:s}),void(n.target.value="")):void("time"===e.type?o(pad(s.getHours(),2)+":"+pad(s.getMinutes(),2)+":00"):s&&"function"==typeof s.getTime&&o(s.getTime()))},input:l}}};const _hoisted_1$h=["required","readonly","min","max","type"];function render$i(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",null,[vue.createElementVNode("input",{ref:"input",required:l.required,readonly:l.readonly,min:l.min,max:l.max,type:l.type||"date",onChange:t[0]||(t[0]=(...e)=>o.enterD&&o.enterD(...e))},null,40,_hoisted_1$h)])}script$p.render=render$i,script$p.__file="src/v-calendar.vue";var script$o={name:"VCheckboxGroup",props:{modelValue:{type:[Array,String],default:void 0},required:String,name:String},emits:["update:modelValue"],setup(e,{emit:t}){const l=e.name||"input_"+id(),o=e=>Array.isArray(e)?[...e]:("string"==typeof e||e instanceof String)&&e?e.split("|"):[],a=vue.computed(()=>void 0!==e.modelValue?o(e.modelValue):o(e.value)),n=e=>a.value.some(t=>t==e),r=(e,l)=>{const o=[...a.value];if(l){o.some(t=>t==e)||o.push(e)}else{const t=o.findIndex(t=>t==e);-1!==t&&o.splice(t,1)}t("update:modelValue",o)};return vue.provide("v-checkbox-group",{name:l,isSelected:n,onChange:r}),{nam:l,onChange:r,isSelected:n}}};function render$h(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",null,[vue.renderSlot(e.$slots,"default")])}script$o.render=render$h,script$o.__file="src/v-checkbox-group.vue";var script$n={name:"VCheckbox",props:{value:null,modelValue:null,valueFalse:null,label:null,readonly:null},emits:["update:modelValue","input","change"],setup(e,{emit:t}){const l=vue.ref(null),o=vue.inject("v-checkbox-group",null),a=vue.computed(()=>o?o.isSelected(e.value):void 0!==e.modelValue?null!==e.value&&void 0!==e.value?e.modelValue==e.value:!!e.modelValue:e.value?e.value==e.vmodel:"true"===String(e.vmodel));return{input:l,group:o,checked:a,change:l=>{if(e.readonly)return;const a=l.target.checked;let n;o&&o.onChange(e.value,a),n=a?null===e.value||void 0===e.value||e.value:null!==e.valueFalse&&void 0!==e.valueFalse&&e.valueFalse,t("update:modelValue",n),t("change",n)},getLabel:()=>e.label?e.label:e.value&&"string"==typeof e.value?e.value:"",onClick:t=>{if(e.readonly)return t.preventDefault(),!1}}}};const _hoisted_1$g=["innerHTML"],_hoisted_2$9=["name","readonly","checked","value"];function render$g(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("label",{style:{"font-weight":"normal !important",display:"block"},class:"v-checkbox",onClick:t[2]||(t[2]=(...e)=>o.onClick&&o.onClick(...e))},[vue.createElementVNode("span",{innerHTML:o.getLabel()},null,8,_hoisted_1$g),vue.createElementVNode("input",{ref:"input",type:"checkbox",name:o.group?.name,readonly:!!l.readonly,checked:o.checked,value:l.value,onClick:t[0]||(t[0]=(...e)=>o.onClick&&o.onClick(...e)),onChange:t[1]||(t[1]=(...e)=>o.change&&o.change(...e))},null,40,_hoisted_2$9),t[3]||(t[3]=vue.createElementVNode("span",{class:"checkmark"},null,-1))])}script$n.render=render$g,script$n.__file="src/v-checkbox.vue";var script$m={name:"VDataview",props:{value:Array,filterKey:String,src:String,filters:Object,store:null,itemWidth:null,rowKey:String,rowStyleClass:null,pagination:null,selectable:Boolean,scrollable:Boolean,autoload:{type:Boolean,default:!0}},data:function(){return{data:null,pages:1,page:1,columns:1,w:0,row:{},error:null,size:null,sortKey:"",selected:[],sortOrders:{},rowStyleClassFunc:null}},created(){var me=this;try{me.rowStyleClass&&(eval("me.rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}"),me.rowStyleClassFunc({},{},0))}catch(e){me.rowStyleClassFunc=null,console.log("Error en la expresion rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}")}},updated(){console.log("updated"),this.$emit("updated"),this.resize()},mounted(){var e=this;e.$el.addEventListener("parentResize2",e.resize),e.autoload&&e.load(),e.resize()},methods:{resize(){var e=this;if(e.itemWidth){var t=1+Math.trunc(e.$el.offsetWidth/Number(e.itemWidth));t>6&&(t=6),e.columns=t}},async getStoredList(e){let t=new Promise(t=>{var l=window._.db.transaction(e).objectStore(e).getAll();l.onsuccess=function(){t(l.result)}});return await t},async loadStore(){let e=this,t=e.store;if(null!=t){let l;return window._.db&&(l=await e.getStoredList(t)),l||(l=[]),e.data=e.data?l.concat(e.data):l,console.log("loadStore"),console.log(e.data),e.data}},getRowClass(e,t){var l=this,o=t%l.columns+1,a=["c-w-"+l.columns];return o==l.columns&&a.push("v-last"),l.rowStyleClassFunc?a.push(l.rowStyleClassFunc(e,e,t)):a.push(l.rowStyleClass),a},remove(e){e=e.id?e.id:e;var t=this.data,l=t.map(e=>e.id).indexOf(e);t.splice(l,1)},error2(e,t){this.data=[],this.error=t},load(e){var t=this;if(this.selected=[],t.value)t.data=t.value;else{!0===e&&(t.page=1);var l=t.src;l||(l=t.$root.apiLink(window.location.pathname)),l.endsWith("/")&&(l=l.slice(0,l.length-1)),t.pagination&&(l+="/"+(t.page-1)*t.pagination+"/"+t.pagination),axios.get(l,{error:t.error2,params:t.filters}).then(function(l){if(l.data&&l.data.error)MsgBox(l.data.error);else{var o=t.value?t.value:l.data.data?l.data.data:l.data;t.data||(t.data=[]),t.data=!0===e?o:t.data?t.data.concat(o):t.data,t.size=l.data.size,l.data&&l.data.size&&(t.pages=Math.ceil(l.data.size/t.pagination),t.page>t.pages&&(t.page=1)),t.$emit("loaded",{target:t,response:l})}}).catch(t.error)}}}};const _hoisted_1$f={class:"v-dataview"};function render$f(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$f,[e.data?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(e.data,(t,l)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(n.getRowClass(t,l))},[vue.renderSlot(e.$slots,"default",{row:t,item:t,index:l})],2))),256)):vue.createCommentVNode("v-if",!0),e.data&&!e.data.length?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(["center v-no-results",{error:e.error}])},vue.toDisplayString(e.error?e.error:"No existen registros para mostrar"),3)):vue.createCommentVNode("v-if",!0),e.data&&e.size>e.data.length?(vue.openBlock(),vue.createElementBlock("div",{key:2,onClick:t[0]||(t[0]=t=>n.load(e.page++)),class:"center v-more-results"},"Ver mas resultados")):vue.createCommentVNode("v-if",!0)])}script$m.render=render$f,script$m.__file="src/v-dataview.vue";var script$l={name:"VFieldset",props:{legend:String,closable:null},watch:{closed(e){this.$emit("change",{target:this,closed:e}),this.$emit("input",!e)}},data:()=>({closed:!1}),created(){this.closed=this.closable},mounted(){var e=this;e.$el.addEventListener("parentResize",t=>{t.$target=e,e.$emit("resize",t)})},updated(){var e=this;setTimeout(function(){var t=e.$el.querySelector("legend > * > svg");if(t)try{console.log(),t.dataset.icon=t.parentNode.dataset.icon}catch(e){console.log("icon"),console.log(e)}},50)}};const _hoisted_1$e={class:"v-fieldset"},_hoisted_2$8=["data-icon"],_hoisted_3$6=["innerHTML"],_hoisted_4$5={style:{flex:"1",display:"flex","flex-direction":"column"}};function render$e(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("fieldset",_hoisted_1$e,[l.legend?(vue.openBlock(),vue.createElementBlock("legend",{key:0,onClick:t[0]||(t[0]=e=>a.closed=l.closable&&!a.closed),style:vue.normalizeStyle({cursor:l.closable?"pointer":""})},[l.closable?(vue.openBlock(),vue.createElementBlock("span",{key:0,"data-icon":a.closed?"plus":"minus",style:{margin:"0px 5px 0px 0px"}},[vue.createElementVNode("i",{class:vue.normalizeClass([a.closed?"fa-plus":"fa-minus","fa"])},null,2)],8,_hoisted_2$8)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("span",{innerHTML:l.legend},null,8,_hoisted_3$6)],4)):vue.createCommentVNode("v-if",!0),vue.withDirectives(vue.createElementVNode("div",_hoisted_4$5,[vue.renderSlot(e.$slots,"default")],512),[[vue.vShow,!a.closed]])])}script$l.render=render$e,script$l.__file="src/v-fieldset.vue";var script$k={name:"VForm",props:["header","store","action"],setup(e,t){const{store:l}=e,{slots:o,expose:a}=t,n=vue.ref(null),r=vue.inject("viewCollector"),s={get:()=>({...e})};return vue.provide("formCollector",s),r.push({store:l,type:"v-form",$el:n,$forceUpdate:()=>{}}),a({...e}),()=>{const t=[];return e.header&&t.push(vue.h("div",{class:"v-widget-header v-panel-titlebar"},[vue.h("span",{class:"v-panel-title"},e.header)])),t.push(vue.h("div",{ref:n,class:"v-dialog-content v-widget-content"},[vue.h("form",{action:e.action},o.default())])),vue.h("div",{class:"ui-panel"},t)}},watch:{header(e){this.setTitle(e)}},data:()=>({timer:null}),methods:{setTitle(e){var t=this.$parent.app;t&&setTimeout(()=>{t.title=e},100)},getAbsoluteHeight(e){var t=window.getComputedStyle(e),l=parseFloat(t.marginTop)+parseFloat(t.marginBottom);return Math.ceil(e.offsetHeight+l)}},mounted(){var e=this;e.$el.querySelector("form").addEventListener("submit",t=>{t.preventDefault();var l=e.$parent;return l.refresh&&l.refresh(),!1}),e.setTitle(e.header)},updated(){for(var e=this.$el.querySelectorAll("[type=number]:not(._)"),t=0;t<e.length;t++){var l=()=>{var e=this,t=e.value;if(t){t=n(t),e.max&&t>n(e.max)&&(t=n(e.max)),e.min&&t<n(e.min)&&(t=n(e.min));var l=this.getAttribute("decimal");null!==l&&(t=t.toFixed(1*l)),e.value=t}};e[t].oninput=l,e[t].onblur=l,e[t].classList?e[t].classList.add("_"):e[t].className="_"}e=this.$el.querySelectorAll(".numeric:not(._)");for(t=0;t<e.length;t++)e[t].addEventListener("keyup",e=>{86==e.keyCode&&isNaN(this.value)&&(this.value="")}),e[t].addEventListener("keydown",e=>{console.log("eeeeeee"+e.keyCode),-1!==[46,8,9,27,13,110,88,86].indexOf(e.keyCode)||65===e.keyCode&&(!0===e.ctrlKey||!0===e.metaKey)||e.keyCode>=35&&e.keyCode<=40||(e.shiftKey||e.keyCode<48||e.keyCode>57)&&(e.keyCode<96||e.keyCode>105)&&e.preventDefault()}),e[t].classList?e[t].classList.add("_"):e[t].className="_"},__file:"src/v-form.vue"},script$j={name:"VGroup",props:{required:String,name:String},data:()=>({value:null,nam:null}),updated(){this.update2()},mounted(){this.update2()},created(){this.nam||(this.nam=this.$props.name?this.$props.name:"input_"+window._.id())},methods:{getInputs(e,t){var l=this;return e.children&&Array.from(e.children).forEach(e=>{"INPUT"==e.tagName?t.push(e):e.classList.contains("v-group")||l.getInputs(e,t)}),t},update2(){for(var e=this.getInputs(this.$el,[]),t=0;t<e.length;t++)e[t].value==this.$attrs.value?e[t].checked=!0:e[t].checked=!1},onChange(e){this.value=e,""===e&&(e=null),this.$emit("input",e)}}};const _hoisted_1$d={class:"v-group"};function render$d(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$d,[vue.renderSlot(e.$slots,"default")])}script$j.render=render$d,script$j.__file="src/v-group.vue";var script$i={name:"VLayerControl",data:()=>({loaded:null,map:null,district:null,dl:null}),setup({baseURL:e="https://web.regionancash.gob.pe"},{emit:t}){const l=vue.ref(),o=vue.inject("collector"),a=vue.ref(),n=vue.ref();let r,s;return o.push(o=>{(o=>{n.value=o;let i=new ol$1.Collection;l.value=i;let u=document.createElement("i");u.setAttribute("class","fa fa-expand"),o.addControl(new FullScreen({label:u,tipLabel:"Fullscreen"}));let c=new VectorSource({url:e+"/fs/geo/02.geojson",format:new GeoJSON}),d=a.value=new VectorLayer({source:c,style:e=>new style.Style({fill:new style.Fill({color:"rgba(255, 0, 0, 0.0)"}),stroke:new style.Stroke({color:"#4073CE",width:1}),text:new style.Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new style.Fill({color:"#4073CE"}),stroke:new style.Stroke({color:"#4073CE",width:.5})})}),id:"provinces"});d.onChange=e=>{let t=e.feature;s!=t.getId()&&(i.clear(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:200,callback:()=>{}}))};let v=c.on("change",()=>{let e,t=c.getFeatures();for(let l=0;l<t.length;l++)if(1*t[l].id_==1*e){d.onChange({feature:t[l]});break}Observable.unByKey(v)}),p=new VectorLayer({preload:1/0,source:new VectorSource,id:"districts",style:e=>new style.Style({fill:new style.Fill({color:"rgba(16, 110, 138, 0.0)"}),stroke:new style.Stroke({color:"#194300",width:1}),text:new style.Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new style.Fill({color:"#194300"}),stroke:new style.Stroke({color:"#194300",width:.5})})})});o.on("moveend",()=>{if(r){if(r.id_<1e4){p.setSource(new VectorSource({url:e+"/fs/geo/"+r.id_+".geojson",format:new GeoJSON}));let t=p.getSource().on("change",()=>{Observable.unByKey(t)})}t("scope",{feature:r,target:{}}),r=null}}),d.onSelect=e=>{me.$emit("select",e)},o.addLayer(d),o.addLayer(new VectorLayer({id:"district",source:new VectorSource,style:new style.Style({fill:new style.Fill({color:"rgba(255, 150, 150, 0.0)"}),stroke:new style.Stroke({color:"#4073CE",width:1})})})),new style.Style({fill:new style.Fill({color:"rgba(16, 110, 138, 5.0)"})}),new style.Style({fill:new style.Fill({color:"rgba(255, 150, 150, 0.0)"})}),p.onChange=e=>{let t=e.feature;s!=t.getId()&&(2==i.getLength()&&i.pop(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:300}))},p.onSelect=e=>{t("select",e)},o.addLayer(p),t("render",{map:o})})(o)}),{}}};function render$c(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",null,[vue.renderSlot(e.$slots,"default")])}script$i.render=render$c,script$i.__file="src/v-layer-control.vue";var script$h={name:"VMapControl",setup(e,{emit:t}){const{visible:l}=e,o=vue.ref(null),a=vue.ref(!!l),n=vue.inject("collector"),r=vue.ref(null);n.push(e=>{e.addControl(new Control({element:o.value})),r.value=!0});const s=vue.ref();return{el:o,ready:r,visible0:a,enter:e=>{e.stopPropagation(),s.value?clearTimeout(s.value):t("click",e),s.value=setTimeout(()=>{s.value=null},500)}}},props:{icon:String,visible:{default:1}},computed:{slotPassed(){return!!this.$slots.default}},data:()=>({slotUsed:!1}),updated(){var e=this.$el.querySelectorAll(":scope > :not(.v-map-control-button)").length;0==e&&(e=this.$el.textContent.trim().length),this.slotUsed=e},methods:{toggle(){this.visible0=!this.visible0}}};const _hoisted_1$c={ref:"el",class:"ol-unselectable ol-control"};function render$b(e,t,l,o,a,n){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",_hoisted_1$c,[vue.renderSlot(e.$slots,"default"),a.slotUsed?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("button",{key:0,class:"v-map-control-button",onClick:t[0]||(t[0]=vue.withModifiers((...e)=>o.enter&&o.enter(...e),["prevent"]))},[l.icon?(vue.openBlock(),vue.createElementBlock("i",{key:0,class:vue.normalizeClass(["fa fa-xs",l.icon])},null,2)):vue.createCommentVNode("v-if",!0)]))],512)),[[vue.vShow,o.ready&&!0]])}script$h.render=render$b,script$h.__file="src/v-map-control.vue";class Drag extends PointerInteraction{constructor(){super({handleDownEvent:handleDownEvent,handleDragEvent:handleDragEvent,handleMoveEvent:handleMoveEvent,handleUpEvent:handleUpEvent}),this.layers_=[],this.coordinate_=null,this.listeners_=[],this.cursor_="pointer",this.feature_=null,this.previousCursor_=void 0}addLayers(e){e.forEach(e=>{this.layers_.push(e)})}$on(e,t){this.listeners_.push(t)}}function handleDownEvent(e){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return[e,t]});return o&&(this.coordinate_=e.coordinate,this.feature_=o[0]),!!o}function handleDragEvent(e){const t=e.coordinate[0]-this.coordinate_[0],l=e.coordinate[1]-this.coordinate_[1];this.feature_.getGeometry().translate(t,l),this.coordinate_[0]=e.coordinate[0],this.coordinate_[1]=e.coordinate[1]}function handleMoveEvent(e){if(this.cursor_){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return e}),a=e.map.getTargetElement();o?a.style.cursor!=this.cursor_&&(this.previousCursor_=a.style.cursor,a.style.cursor=this.cursor_):void 0!==this.previousCursor_&&(a.style.cursor=this.previousCursor_,this.previousCursor_=void 0)}}function handleUpEvent(){return this.listeners_.forEach(e=>{e({feature:this.feature,coordinate:this.coordinate_})}),this.coordinate_=null,this.feature_=null,!1}var script$g={name:"VMap",setup(e,{emit:t,expose:l}){const o=vue.ref(null),a=vue.ref(null),n=vue.ref(null),r=vue.ref(null),s=vue.reactive([]);vue.provide("collector",{remove(e){s.splice(s.indexOf(e),1)},push(e){s.push(e)}});const i=e=>{a.value.addLayer(e),t("addlayer",e)},u=(e,l)=>{let o,n;e=e||{};const r=a.value;e.lon&&e.lat?(n=[e.lon,e.lat],o=new geom.Point(n[0]>-100?proj.fromLonLat(n):n)):o=new geom.Point(r.getView().getCenter()),n=o.flatCoordinates;const s=n[0]<-1e4?proj.toLonLat(n):n;t("translateend",{lon:s[0],lat:s[1]}),e.geometry=o;const i=new Feature(e);i.data=e,"object"==typeof e.style?i.setStyle(e.style):i.setStyle(r.styleMap[e.style?e.style:"default"]),n=o.flatCoordinates,n=n[0]<-1e4?proj.toLonLat(n):n,t("translateend",{lon:n[0],lat:n[1]});const u=e.layer||"default";let c=r.getLayerById(u);if(c?c.getSource().addFeatures(i):r.addLayer(c=new VectorLayer({id:u,source:new VectorSource({features:new ol$1.Collection([i])})})),e.draggable){let e=r.drag;e||(r.drag=e=new Drag,e.$on("up",({coordinate:e,feature:l})=>{const o=proj.toLonLat(e);t("translateend",{lon:o[0],lat:o[1],feature:l})}),r.addInteraction(e),e.addLayers([c]))}return l&&r.getView().animate(Object.assign({center:i.getGeometry().getCoordinates(),zoom:17,duration:500},l)),i},c=e=>{const l={default:new style.Style({image:new style.Circle({radius:8,stroke:new style.Stroke({color:"#8a0000",width:2}),fill:new style.Fill({color:"#ff0000"})})}),star:[new style.Style({image:new style.RegularShape({fill:new style.Fill({color:"#ff0000"}),stroke:new style.Stroke({color:"#8a0000",width:2}),points:5,radius:10,radius2:4,angle:0})})]};let o=((e,t)=>{t||(t=window.location.href);const l=new RegExp("[?&]"+e+"=([^&#]*)").exec(t);return l&&l[1]||0})("location"),i=-1;if(o){let e=o.split("/");o=[parseFloat(e[0]),parseFloat(e[1])],i=e[2],n.value=!0}else o=!1;const c=new Map({target:e,layers:[new layer.Tile({source:new source.OSM})],view:new View({center:[0,0],zoom:2})});c.getLayerById=function(e="default"){let t;return c.getLayers().forEach(l=>{l.get("id")!==e||(t=l)}),t},c.styleMap=l,n.value?(c.getView().setCenter(o),console.log("en el momento de cargar moved to pageLocation="+o),c.getView().setZoom(i||12),a.value=c,console.log("distarar evento buid pageLocation="+o),t("build",m)):(c.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],c.getSize()),a.value=c,t("build",{map:c}),s.forEach(e=>{e(c)})),c.getView().getZoom(),c.on("moveend",()=>{r.value&&(r.value(m),r.value=null),c.getView().getZoom()}),c.on("singleclick",e=>{let t=c.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(t){let l=t[1],o=t[0];if(e.feature=o,e.map=c,e.preventDefault(),l.onSelect)return void l.onSelect(e)}}),c.on("dblclick",e=>{let l=c.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(l){let o=l[1];if(l=l[0],e.feature=l,e.map=c,o.onChange)return void o.onChange(e);t("change",l),c.getView().animate({center:l.getGeometry().getCoordinates(),zoom:17,duration:500},()=>{for(let t=0;t<m.$children.length;t++){let t=m.$children[0];t.open&&t.open(e)}})}}),a.value=c,setTimeout(()=>{c.updateSize(),c.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],c.getSize()),a.value=c,t("build",{map:c,addFeature:u})},100)};return vue.watch(o,e=>{e&&vue.nextTick(()=>{t("beforeBuild"),c(e)})}),l({addFeature:u,addLayer:i,map:a,empty:(e="default")=>{if(e=a.value.getLayerById(e)){const t=e.getSource();if(t instanceof VectorSource){return 0===t.getFeatures().length}}return!0}}),{el:o,addLayer:i,addFeature:u}},data:()=>({moved:!1,map:null,movingCompleted:null,styleMap:null,coordinate:{}})};const _hoisted_1$b={ref:"el"};function render$a(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[vue.renderSlot(e.$slots,"default")],512)}script$g.render=render$a,script$g.__file="src/v-map.vue";var script$f={name:"VNumber",props:{value:Number,max:Number,min:Number,delay:Number},setup(e,t){const{emit:l}=t,o=vue.ref(null);vue.onMounted(()=>{o.value=e.value}),vue.onUpdated(()=>{o.value=t.attrs.modelValue});return{v:o,handleInput:t=>{let a=o.value;const n=t.target.getAttribute("decimal");null!==a?(a=num(a),e.max&&a>num(e.max)&&(a=num(e.max)),e.min&&a<num(e.min)&&(a=num(e.min)),null!==n&&(a=a.toFixed(Number(n)))):a=null,o.value=t.target.value;let r=_$1.calendarTimer;r&&clearTimeout(r),e.delay?_$1.calendarTimer=setTimeout(()=>{l("input",a),_$1.calendarTimer=null},13===t.keyCode?0:e.delay):l("input",a)}}}};function render$9(e,t,l,o,a,n){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("input",{type:"number",onKeyup:t[0]||(t[0]=vue.withKeys((...e)=>o.handleInput&&o.handleInput(...e),["enter"])),"onUpdate:modelValue":t[1]||(t[1]=e=>o.v=e),onInput:t[2]||(t[2]=(...e)=>o.handleInput&&o.handleInput(...e)),class:"_"},null,544)),[[vue.vModelText,o.v,void 0,{number:!0}]])}script$f.render=render$9,script$f.__file="src/v-number.vue";var script$e={setup(e,t){const l=e,{valueField:o,displayField:a,store:n,name:r,src:s}=l,i=vue.toRef(e,"filter"),u=useAppStore(),{expose:c,emit:d}=t,v=vue.ref([]),p=vue.ref([]),m=vue.ref([]),h=vue.ref(null),f=vue.inject("collect");o&&(m.value=o.split("."));const g=vue.computed(()=>{const e=(l.data||[]).concat(p.value||[]),t=i.value;return t?"string"==typeof t?e.filter(e=>JSON.stringify(e).toLowerCase().includes(t.toLowerCase())):"object"==typeof t?e.filter(e=>Object.entries(t).every(([t,l])=>null==l||""===l||String(e[t]??"").toLowerCase().includes(String(l).toLowerCase()))):e:e});vue.watch(g,e=>{});const y=(e,t)=>{const l=m.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};let $=o,b=a;b||(b=$);const w=async(e=null,t=null,o=!1)=>{if(!o&&t&&e&&v.value.push([e,t]),!(v.value.length>1)){if(p.value=[],n){const t=await getStoredList(n);console.log(n,e),e&&Object.keys(e).length?p.value=t.filter(t=>Object.entries(e).every(([e,l])=>String(t[e]??"").startsWith(l))):p.value.push(...t)}for(s&&(l.filters&&(e=mergeDeep(e||{},l.filters)),r&&console.log(r+".options.load ",JSON.stringify(e)),await u.axios.get(s,{params:e}).then(e=>{let o=e.data.data?e.data.data:e.data;d("loaded",{target:l,data:o}),p.value=p.value.concat(o),f(p),h.value=1,t&&t()}).catch(l.error)),f(g),o||v.value.shift();v.value.length;){const e=v.value.shift()||[];await w(e[0],e[1],!0)}}};return w.getObjectByIndex=e=>{const t=g.value;return t?t[e]:null},w.getValueByIndex=e=>{const t=g.value;return t?y(t[e],1):null},w.getIndexByValue=(e,t)=>{e&&e.id?e=e.id:e&&e.code&&(e=e.code);for(let l=0;l<g.value.length;l++){const o=g.value[l];if(y(o)==e)return t&&t(l,o),l}return t&&t(-1),-1},f.push(w),vue.onUpdated(()=>{f((l.data||[]).concat(p.value))}),vue.onUnmounted(()=>{f.remove(w)}),c({load:w}),{filterList:g,getValueField:y,vf:$,df:b}},name:"VOptions",props:{url:String,src:String,name:String,displayField:String,data:Array,store:null,valueField:String,filters:null,filter:null,mode:null},updated(){let e=this;!e.loaded&&e.data&&(e.data2=e.data)},methods:{getParentE(){return this.$el.parentElement.parentElement},getSelectedItem(){let e=this.$el.parentElement;return this.filterList[e.selectedIndex-1]}}};const _hoisted_1$a=["value"];function render$8(e,t,l,o,a,n){return vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(o.filterList,(t,l)=>(vue.openBlock(),vue.createElementBlock("option",{key:l,value:o.vf?o.getValueField(t):t.id||t.code||JSON.stringify(t)},[vue.renderSlot(e.$slots,"default",{item:t},()=>[vue.createTextVNode(vue.toDisplayString(o.df?t[o.df]:t),1)])],8,_hoisted_1$a))),128)}script$e.render=render$8,script$e.__file="src/v-options.vue";var ol=window.ol,_=window._,axios$1=window.axios,script$d={name:"VOverlay",props:{value:{value:Object},src:String,width:{default:400},header:String},data:()=>({coordinate:null,overlay:null,location:null,ele:null,c:0}),created(){var e=this;e.$parent.$on("beforeBuild",t=>{console.log(t),e.overlay=new ol.Overlay({element:e.$el,positioning:"bottom-right"})}),e.$parent.$on("build",t=>{t.map.addOverlay(e.overlay)})},mounted(){var e=this;e.header&&e.$el.childNodes[0].addEventListener("mousedown",function(t){const l=e.$el.parentElement;var o=window.getComputedStyle(l),a=parseFloat(o.left),n=parseFloat(o.top),r=t.clientX,s=t.clientY,i=l.parentElement;function u(e){l.style.left=a+e.clientX-r+"px",l.style.top=n+e.clientY-s+"px"}i.addEventListener("mousemove",u,!1),i.addEventListener("mouseup",function(){i.removeEventListener("mousemove",u,!1)},!1)},!1)},methods:{close(){this.overlay&&this.overlay.setPosition()},hasSlot(e="default"){return!!this.$slots[e]||!!this.$scopedSlots[e]},load(){var e=this;axios$1.get(_.remoteServer+e.src).then(t=>{e.$emit("input",t.data)})},open(e){for(var t=this,l=e.map,o=e.feature,a=t.overlay,n=a.element,r=t.$parent.$children,s=0;s<r.length;s++)r[s].close&&(r[s].$el.style.opacity=0,r[s].close());e.coordinate?t.coordinate=e.coordinate:(e.coordinate=l.getView().getCenter(),t.coordinate=null),a.setPosition(e.coordinate);var i=l.getView().getCenter(),u=l.getView().getResolution(),c=o?o.getGeometry().getCoordinates():[null],d=l.getPixelFromCoordinate(Number(c[0])?c:e.coordinate);if(this.src)axios$1.get(_.remoteServer+this.src).then(e=>{t.$emit("input",e.data),t.c++,setTimeout(function(){var e=l.viewport_.offsetWidth,o=l.viewport_.offsetHeight,r=n.children[0].children[1];r.scrollTop=0;var s=n.offsetHeight;r.style.height=s+100>=o?o-100-n.children[0].children[0].offsetHeight+"px":"300px",s=n.offsetHeight;var c=1*t.width,v=e<=c+40?e-40:c;if(n.style.zIndex=10,n.style.width=v+"px",v/=2,l.getView().animate({center:[i[0]+(d[0]+v+20>=e?+(d[0]+v+20-e):d[0]-20-v<0?-v+d[0]-20:0)*u,i[1]+(d[1]<s?s-d[1]:0)*u],duration:500}),d[0]=d[0]+v-0,d[1]=d[1]-12,a.setPosition(l.getCoordinateFromPixel(d)),t.$el.style.opacity=1,_.mobil)for(var p=a.getElement().querySelectorAll("a:not(._)"),m=0;m<p.length;m++)p[m].addEventListener("click",_.open2)},400)}).catch(e=>{console.log(e)});else{var v=l.viewport_.offsetWidth,p=l.viewport_.offsetHeight,m=n.children[0].children[1];m.scrollTop=0;var h=n.offsetHeight;console.log(n.offsetHeight),m.style.height=h+100>=p?p-100-n.children[0].children[0].offsetHeight+"px":"300px",h=n.offsetHeight;var f=1*t.width,g=v<=f+40?v-40:f;if(n.style.zIndex=10,n.style.width=g+"px",g/=2,l.getView().animate({center:[i[0]+(d[0]+g+20>=v?+(d[0]+g+20-v):d[0]-20-g<0?-g+d[0]-20:0)*u,i[1]+(d[1]<h?h-d[1]:0)*u],duration:500}),d[0]=d[0]+g-0,d[1]=d[1]-12,a.setPosition(l.getCoordinateFromPixel(d)),t.$el.parentNode.style.opacity=0,t.$el.style.opacity=1,t.$el.parentNode.style.top=(p-t.$el.offsetHeight)/2+"px",t.$el.parentNode.style.opacity=1,_.mobil){var y=a.getElement().querySelectorAll("a:not(._)");for(s=0;s<y.length;s++)y[s].addEventListener("click",_.open2)}t.$emit("opened",{target:t})}}}};const _hoisted_1$9={class:"v-ol-overlay"},_hoisted_2$7={key:0,class:"v-panel-titlebar"},_hoisted_3$5={key:2,style:{"text-align":"center"}};function render$7(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$9,[l.header?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$7,[vue.createElementVNode("span",{class:"v-icon v-icon-close",onClick:t[0]||(t[0]=(...e)=>n.close&&n.close(...e))},[...t[1]||(t[1]=[vue.createElementVNode("i",{class:"fa fa-times"},null,-1)])]),vue.createTextVNode(vue.toDisplayString(l.header),1)])):vue.createCommentVNode("v-if",!0),(vue.openBlock(),vue.createElementBlock("div",{class:"v-ol-body",key:"c-"+a.c,style:{padding:"10px"}},[l.value?vue.renderSlot(e.$slots,"default",{key:0,value:l.value}):vue.createCommentVNode("v-if",!0)])),n.hasSlot("footer")&&l.value?(vue.openBlock(),vue.createElementBlock("footer",{key:"f-"+a.c},[vue.renderSlot(e.$slots,"footer",{value:l.value})])):vue.createCommentVNode("v-if",!0),a.coordinate?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$5,[...t[2]||(t[2]=[vue.createElementVNode("img",{src:_imports_0,width:"20",height:"18"},null,-1)])])):vue.createCommentVNode("v-if",!0)])}script$d.render=render$7,script$d.__file="src/v-overlay.vue";var script$c={name:"VPanel",props:{header:String}};const _hoisted_1$8={class:"ui-panel"},_hoisted_2$6={key:0,class:"v-panel-titlebar v-widget-header ui-helper-clearfix ui-corner-all"},_hoisted_3$4={class:"v-panel-title"},_hoisted_4$4={class:"v-panel-content v-dialog-content v-widget-content"};function render$6(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$8,[l.header?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$6,[vue.createElementVNode("span",_hoisted_3$4,vue.toDisplayString(l.header),1)])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",_hoisted_4$4,[vue.renderSlot(e.$slots,"default")])])}script$c.render=render$6,script$c.__file="src/v-panel.vue";var script$b={__name:"v-popup",props:{width:{type:String,default:"600px"},name:{type:String,default:null}},emits:["success","close"],setup(e,{expose:t,emit:l}){const o=e,a=l,n=vueRouter.useRouter(),r=vue.ref(!1),s=vue.shallowRef(null),i=vue.ref({}),u=vue.inject("viewCollector"),c=vue.inject("refresh",null),d=async(e=null,t=null)=>{if(!e)return s.value=null,i.value=t??{},void(r.value=!0);const l=await(async e=>{let t=n.getRoutes().find(t=>t.name===e),l={};if(!t){const o=n.resolve(e);t=o.matched.at(-1),l=o.params}if(!t)throw new Error(`No existe la ruta "${e}"`);let o=t.components?.default??t.component;if(!o)throw new Error(`La ruta "${e}" no tiene componente`);if("function"==typeof o){const e=await o();o=e.default??e}return{component:o,params:l}})(e);s.value=l.component,i.value={...l.params,...t??{}},r.value=!0},v=e=>{r.value=!1,a("close",e),s.value=null},p=async(e=null)=>{e?.success&&c?.(),v(e)};return u.push({open:d,props:o,type:"v-popup"}),t({open:d,close:v}),(t,l)=>(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[r.value?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"popup-overlay",onClick:vue.withModifiers(v,["self"])},[vue.createElementVNode("div",{class:"popup",style:vue.normalizeStyle({width:e.width})},[vue.createElementVNode("button",{type:"button",class:"popup-close",onClick:v}," ✕ "),vue.createCommentVNode(" Componente cargado por ruta "),s.value?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(s.value),vue.mergeProps({key:0},i.value,{callback:p}),null,16)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createCommentVNode(" Si no hay componente, mostrar slot "),vue.renderSlot(t.$slots,"default",{close:v,callback:p})],2112))],4)])):vue.createCommentVNode("v-if",!0)]))},__file:"src/v-popup.vue"},script$a={name:"VRadio",props:{value:String,label:String,className:String},methods:{getClass(){return"v-radio "+this.className}},mounted(){var e=this,t=e.$el.querySelector("input");e.$parent&&e.$parent.nam&&(t.name=e.$parent.nam),t.onclick=function(){}},updated(){this.$el.querySelector("input")}};const _hoisted_1$7=["value"];function render$5(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("label",{class:vue.normalizeClass(n.getClass())},[vue.createTextVNode(vue.toDisplayString(l.label?l.label:l.value)+" ",1),vue.createElementVNode("input",{type:"radio",value:l.value},null,8,_hoisted_1$7),t[0]||(t[0]=vue.createElementVNode("span",{class:"checkmark"},null,-1)),vue.renderSlot(e.$slots,"default")],2)}script$a.render=render$5,script$a.__file="src/v-radio.vue";var script$9={__name:"v-radio-group",props:{required:String,name:String,modelValue:String,items:{type:Array},type:{type:String,default:"radio"},label:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(l.modelValue),{proxy:n}=vue.getCurrentInstance(),r=new Set,s=(e,t)=>(e.children&&Array.from(e.children).forEach(e=>{"INPUT"===e.tagName?t.push(e):e.classList&&e.classList.contains("v-group")||s(e,t)}),t),i=()=>{const e=s(n.$el,[]);let t=l.name;t||(t="input_"+Date.now().toString(36)+Math.random().toString(36).substring(2,15));const o=""===n.$props.required||n.$props.required;let i=!1;for(let l=0;l<e.length;l++)e[l].name=t,r.has(e[l])||(e[l].addEventListener("change",u),r.add(e[l])),e[l].checked=null!=a.value&&e[l].value===String(a.value),e[l].checked&&(i=!0),e[l].required=o,o&&(a.value?e[l].nextElementSibling.classList.remove("required"):e[l].nextElementSibling.classList.add("required"));i&&removeError(e[0].parentNode.parentNode)},u=e=>{let t=e.target.value;""===t&&(t=null),a.value=t,o("update:modelValue",t)};vue.watch(()=>l.modelValue,e=>{a.value=e,i()}),vue.onMounted(()=>{i()}),vue.onUpdated(()=>{i()});const c=()=>{const e=[];return n.$slots.default&&e.push(...n.$slots.default()),l.items&&e.push(...l.items.map(e=>vue.h(script$a,{className:l.required&&!l.modelValue?"required":null,...e,modelValue:a.value,"onUpdate:modelValue":u}))),vue.h("div",{class:"v-radio-group"},[l.label&&vue.h("label",l.label),...e])};return(e,t)=>(vue.openBlock(),vue.createBlock(c))},__file:"src/v-radio-group.vue"},script$8={name:"VSelect",setup(e,t){const{slots:l,emit:o}=t,{valueField:a,disabled:n,readonly:r,autoload:s,name:i}=e,u=vue.ref([]),c=vue.ref([]),d=vue.ref(null),v=vue.ref([]),p=[],m=vue.ref(!(s+""=="false"||1*s==0)),h=vue.ref(null),f=e=>{null!=e&&""!==e?Array.isArray(e)?_.value=[...e]:_.value=String(e).split(","):_.value=[]},g=t=>{const l=vue.unref(t)||[];u.value=Array.isArray(l)?l.filter(e=>null!=e):[],vue.nextTick(()=>{e.multiple?f(e.modelValue):y(e.modelValue||d.value)})},y=t=>{let l=t||e.modelValue;if(h.value){let t=h.value,a=t.selectedIndex;l&&""!==l||(t.selectedIndex=0),log(i,"value===",l);const n=l?""+(l.id||l.code||l):l;for(let e=0;e<t.length;e++)t[e].value===n&&(t.selectedIndex=e);const r=p;for(let n=0;n<r.length;n++){if(!r[n].getValueByIndex)continue;let s=r[n].getValueByIndex(a-1);r[n].getIndexByValue(l,(a,c)=>{if(a>-1){let c=r[n].getObjectByIndex(a),v=Number(s);v=isNaN(v)?s?!!l&&(l.id?l.id==s.id:l==s):!l:v==Number(l),d.value!=e.modelValue&&(log(i,"select.value",l,"object=",c),e.modelValue&&(d.value=e.modelValue),v||(log(i,"select.updateSelect="+l+" "+JSON.stringify(u.value.length)),t.selectedIndex=a+1,o("update:modelValue",l,{value:l,select:t,object:c}),vue.nextTick(()=>{o("input",l,{value:l,select:t,object:c})})))}else e.modelValue&&(d.value=e.modelValue),log(i,"select.updateselect.not fout",a),o("update:modelValue",null,null),vue.nextTick(()=>{o("input",null,{value:null})}),t.selectedIndex=0})}}};g.remove=e=>{const t=p.filter(t=>t!==e);p.length=0,t.forEach(e=>p.push(e))},g.push=e=>{p.push(e)},a&&(c.value=a.split(".")),vue.provide("collect",g);const $=(e,t)=>{const l=c.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};vue.watch(()=>e.modelValue,(t,l)=>{t!=l&&(e.multiple?f(t):y())}),vue.watch(()=>e.disabled,(e,t)=>{b(e,t)});const b=(e,t)=>{e=!!e,t=!!t;let l=v.value;log(i,"activate.newVal=",e,"oldVal=",t),!e&&!e===t&&l.length&&w(l[0],l[1])},w=(t,l)=>{e.disabled?(log(i,"select.load.params=",t),v.value=[t,l],p.forEach(e=>{e(t,l)})):(v.value=[],p.forEach(e=>{e(t,l)}))};vue.onMounted(()=>{m.value&&w()});const k=vue.ref(!1),_=vue.ref([]),x=vue.ref(!1),S=vue.ref(""),E=()=>{k.value=!1},V=()=>{const e=[..._.value].map(String).sort(),t=[...S.value].map(String).sort();if(e.length!==t.length||e.some((e,l)=>e!==t[l])){const t=e.length?e.join(","):null;o("update:modelValue",t)}E()},C=()=>{_.value&&_.value.length&&_.value.join(","),console.log(_)};return{options:u,getValueField:$,onChange:e=>{e.stopPropagation();let t=e.target.value;const l=h.value;log(i,"select.onchange=",t),t&&""!==t||(t=null,l.selectedIndex=0);let a,n=0;const r=u.value;for(let e=0;e<p.length;e++){if(n=p[e].getValueByIndex(l.selectedIndex-1),-1!=n){a=p[e].getObjectByIndex(l.selectedIndex-1);break}n=0}n?(log(i,"change=found=",n),t=n):r.length&&(l.selectedIndex=0),o("update:modelValue",t,{value:t,select:l,object:a}),vue.nextTick(()=>{o("input",t,{value:t,select:l,object:a})})},selectRef:h,load:w,lastLoad:v,autoload_:m,expand:t=>{if(e.readonly)return t.preventDefault(),!1},show:k,sel:_,sela:x,toggle:()=>{k.value||(S.value=[..._.value]),k.value=!k.value,k.value||V()},close:E,apply:V,selectAll:e=>{console.log("selectAll.checked=",e),_.value=e?u.value.map(e=>$(e)):[],C()},checkboxInput:C}},props:{modelValue:null,required:null,readonly:null,multiple:null,label:null,name:null,disabled:null,autoload:null,valueField:null},data:()=>({data:[],popup:null,tmp:[],sel2:[]}),watch:{show(e){if(e){let e=this.$refs.button,t=this.popup;t||(t=this.$refs.popup,t.style.position="absolute",document.body.append(t));let l=e.getBoundingClientRect();const o=t.children[0];window.innerWidth<400?(t.style.padding="40px",t.style.height="100%",o.style.height="100%"):(t.style.top=l.bottom+0+"px",t.style.left=l.left+0+"px",t.style.maxHeight=window.innerHeight-l.bottom-30+"px",o.style.maxHeight=t.style.maxHeight),o.style.display="flex",o.style.flexDirection="column"}}}};const _hoisted_1$6={class:"v-select",style:{position:"relative"}},_hoisted_2$5=["required","disabled","click"],_hoisted_3$3={ref:"popup",class:"v-popup"},_hoisted_4$3={class:"center"};function render$4(e,t,l,o,a,n){const r=vue.resolveComponent("v-checkbox"),s=vue.resolveComponent("v-checkbox-group"),i=vue.resolveComponent("v-button");return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$6,[l.readonly?vue.createCommentVNode("v-if",!0):vue.withDirectives((vue.openBlock(),vue.createElementBlock("select",{key:0,style:{width:"100%"},ref:"selectRef",onChange:t[0]||(t[0]=(...e)=>o.onChange&&o.onChange(...e)),required:l.required,disabled:l.disabled,click:o.expand},[vue.renderSlot(e.$slots,"default")],40,_hoisted_2$5)),[[vue.vShow,!l.multiple]]),l.multiple?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createElementVNode("div",{class:vue.normalizeClass(["v-widget-header v-button v-filter",{"v-selected":o.show||o.sel.length}]),ref:"button",style:{"padding-top":"7px","padding-bottom":"7px"},onClick:t[1]||(t[1]=(...e)=>o.toggle&&o.toggle(...e))},[o.sel.length?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(" ("+vue.toDisplayString(o.sel.length)+") ",1)],64)):vue.createCommentVNode("v-if",!0),t[4]||(t[4]=vue.createTextVNode("   ",-1))],2),vue.withDirectives(vue.createElementVNode("div",_hoisted_3$3,[vue.createElementVNode("div",null,[vue.createElementVNode("div",null,[vue.createVNode(r,{modelValue:o.sela,"onUpdate:modelValue":t[2]||(t[2]=e=>o.sela=e),onChange:o.selectAll},null,8,["modelValue","onChange"])]),vue.createVNode(s,{class:"v-select-checkbox-group",style:{"overflow-y":"auto"},modelValue:o.sel,"onUpdate:modelValue":t[3]||(t[3]=e=>o.sel=e),onInput:o.checkboxInput},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(o.options,e=>(vue.openBlock(),vue.createBlock(r,{value:e.id,label:e.name},null,8,["value","label"]))),256))]),_:1},8,["modelValue","onInput"]),vue.createElementVNode("div",_hoisted_4$3,[vue.createVNode(i,{icon:"fa-sync",value:"Filtrar",onClick:o.apply},null,8,["onClick"])])])],512),[[vue.vShow,o.show]])],64)):vue.createCommentVNode("v-if",!0),l.readonly?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:2},[vue.createTextVNode(vue.toDisplayString(l.label?l.label:"---"),1)],64)):vue.createCommentVNode("v-if",!0)])}script$8.render=render$4,script$8.__file="src/v-select.vue";var script$7={name:"VSwitch",props:{modelValue:{type:Boolean,default:null}},emits:["update:modelValue"],data:()=>({options:["NO","SI"]}),computed:{selected(){return!0===this.modelValue?"SI":!1===this.modelValue?"NO":null}},methods:{onChange(e){this.$emit("update:modelValue","SI"===e||"NO"!==e&&null)}}};const _hoisted_1$5=["data-value"],_hoisted_2$4=["onClick"];function render$3(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",{class:"v-switch","data-value":String(l.modelValue)},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.options,e=>(vue.openBlock(),vue.createElementBlock("div",{key:e,onClick:t=>n.onChange(e),class:vue.normalizeClass({"v-selected":e===n.selected})},vue.toDisplayString(e),11,_hoisted_2$4))),128))],8,_hoisted_1$5)}script$7.render=render$3,script$7.__file="src/v-switch.vue";var script$6={name:"VTable",emits:["dblclick","row-select","loaded"],setup(e,t){const{autoload:l,src:o,rowKey:a="id",store:n,groups:r}=e,s=useAppStore(),i=vue.inject("viewCollector"),u=vue.inject("formCollector"),c=vue.ref(1),d=vue.ref(0),v=vue.ref(null),p=vue.ref(1),m=vue.ref([]),h=vue.ref([]),f=vue.ref(null),g=vue.ref(1),y=vue.computed(()=>{const t=e,l=h.value;let o,a;return l.sum=sum,l.filter(e=>{for(var l in t.filters)if(o=t.filters[l],"function"==typeof o){if(!o(e))return 0}else if(o&&"string"==typeof o&&l in e&&(a=e[l],"string"==typeof a&&(a=a.toUpperCase().normalize("NFD").replace(/[\u0300-\u036f]/g,""),!a.includes(o.toUpperCase()))))return 0;return 1})}),$=vue.computed(()=>{let e=y.value;return e=f?e.sort((e,t)=>{t=(t=t[f])||0,e=e[f];const l=Number(e);return l&&(e=l),e<t?-1*g:e>t?1*g:0}):e,e.sum=sum,e}),b=vue.computed(()=>{const e=function(e){return this.reduce((t,l)=>"number"==typeof e||"string"==typeof e?t+(l[e]||0):t,0)};Array.prototype.sum=e;const t={},l=r;return l?$.value.forEach(o=>{const a=o[l];if(!t[a]){const l=[];l.sum=e,t[a]=l}t[a].push(o)}):$.value.length&&(t[""]=$),Object.entries(t).map(([e,t])=>({name:e,values:t}))}),w=vue.ref(1),k=vue.ref(1),{slots:_,expose:x,emit:S}=t;vue.watch(()=>e.value,t=>{e.src||(h.value=Array.isArray(t)?t:[])},{immediate:!0,deep:!0});const E=vue.getCurrentInstance(),V=async()=>{if(null!=n){let e;db&&(e=await getStoredList(n)),e||(e=[]),h.value=h.value?e.concat(h.value):e}return h.value},C=(e,t,l)=>{c.value&&0==whichChild(e.target)||N(t,l,1)},N=(e,t,l)=>{-10===t?y.value.length===m.value.length?m.value=[]:m.value=y.value.map(e=>e):l?c.value||!m.value.includes(e)?m.value=[e]:(m.value=[],e=null):m.value.includes(e)?(m.value.splice(m.value.indexOf(e),1),e=null):m.value.push(e),S("row-select",{target:this,current:e,selection:m})},B=e=>m.value.includes(e),I=t=>{const l=[];return e.selectable&&B(t)&&l.push("v-selected"),e.rowStyleClass&&("string"==typeof e.rowStyleClass?l.push(e.rowStyleClass):e.rowStyleClass&&l.push(e.rowStyleClass(t))),l},L=(e,t)=>{T(e,t)},T=(e,t)=>{(w.value!=e||t)&&(w.value=e,F())};let A=""+e.selectable;c.value="false"!=A&&"0"!=A?1:0,A=""+e.scrollable,d.value=e.scrollable&&"false"!=A&&"0"!=A?1:0;const F=()=>{const t=e;if(m.value=[],t.value&&(h.value=[],h.value=t.value,S("loaded",{target:t}),S("row-select",{}),t.remoteLoaded=1,t.loaded=1,p.value++),o){let e=o;e.endsWith("/")&&(e=e.slice(0,e.length-1));const l=t.pagination;if(l&&(e+="/"+(w.value-1)*l+"/"+l),networkStatus.connected){let a;if(t.gql){const e=t.gql,n="query{"+Object.keys(e)[0]+"(offset:"+(w.value-1)*l+" limit:"+l+"){\ndata{"+e[Object.keys(e)[0]]+"}\nsize\n}\n}";a=s.axios.post(o,{query:n})}else a=s.axios.get(e,{params:clean(t.filters)});a.then(e=>{if(e.data&&e.data.error)MsgBox(e.data.error);else{let o=e.data;t.gql&&(o=e.data.data[Object.keys(t.gql)[0]]),h.value=o.data||o,o&&o.hasOwnProperty("size")&&l&&(k.value=Math.ceil(o.size/l),w.value>k.value&&(w.value=1),t.size=o.size),V(),S("loaded",{target:t}),S("row-select",{}),t.remoteLoaded=1,t.loaded=1,p.value++}}).catch(t.error)}else{h.value=[];const e=V();e.then&&e.then(e=>{h.value=e}),S("row-select",{target:t})}}p.value++,t.loaded=1},D=vue.computed(()=>m.value.length);F.rowSelectedCount=D,F.src=o,u&&(F.getForm=u.get),F.rowKey=a,F.rowSelect=N;const q=e=>v.value===e;F.is=q,F.remove=e=>{const t=h.value.findIndex(t=>t===e);-1!==t&&h.value.splice(t,1)},F.selected=m,F.type="v-table",i.push(F);const M=e=>{13===e.keyCode&&(e.preventDefault(),F())};return vue.onMounted(()=>{!0===l&&F(),setTimeout(()=>{const e=E.proxy,t=e.$el.querySelectorAll(".v-cloned-header div > span"),l=Math.max(...Array.from(t).map(e=>e.offsetHeight));t.forEach(e=>{e.style.height=l+"px"});e.$el.querySelectorAll("v-filter").forEach(e=>{e.querySelectorAll("input").forEach(e=>e.addEventListener("keyup",M))})},100)}),vue.onUnmounted(()=>{i.remove(F)}),x({load:F,rowSelectedCount:D,j_is:q}),()=>{let t=0;const l=_.default({row:{}}),o=[];l.forEach((e,l)=>{const a=e.props;e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{a.filter=t,e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{a.footer=t,e.children.shift()})),t+=a.width?Number(a.width):0,o.push({filter:a.filter,header:a.header,width:a.width})}),t+=c.value?42:0;const a=vue.h("div",{className:"v-datatable-scrollable-header-box",style:"left: 0px;"},vue.h("table",{className:"v-cloned-header v-table",style:{width:`${t}px`}},[c.value?vue.h("th",{width:42},[vue.h("span",{onclick(){N(null,-10)},className:"v-check"},vue.h(vueFontawesome.FontAwesomeIcon,{icon:m.value.length?freeRegularSvgIcons.faSquareCheck:freeRegularSvgIcons.faSquare,class:"fa-lg"}))]):null,o.map(e=>vue.h("th",e,vue.h("div",[vue.h("span",{style:"display: flex;justify-content: center;align-items: center;"},[e.header]),vue.h("v-filter",e.filter?.children)])))]));return vue.h("div",{ref:v,className:"v-datatable "+e.class},[_.header?vue.h("div",{className:"v-datatable-header v-widget-header ui-corner-top"},_.header()):null,e.pagination?vue.h("div",{className:"v-paginator v-paginator-top v-widget-header v-paginator-pages center"},[vue.h(script$q,{value:"|<",disabled:w.value<=1,onClick:()=>L(1)}),vue.h(script$q,{value:"<",disabled:w.value<=1,onClick:()=>L(w.value-1)}),vue.h("div",{style:"padding:3px 8px;display:inline-block"},[vue.h("input",{type:"number",style:"width:60px",value:w.value,onInput:e=>L(Number(e.target.value),!0)}),"/"+k.value]),vue.h(script$q,{value:">",disabled:w.value==k.value,onClick:()=>L(w.value+1)}),vue.h(script$q,{value:">|",disabled:w.value==k.value,onClick:()=>L(k.value)})]):null,vue.h("div",{className:"v-widget-header v-datatable-scrollable-header",style:"position: relative; margin-right: 0px;"},a),vue.h("div",{className:"v-datatable-scrollable-body",style:"overflow-y: auto; flex:1",onScroll(e){const t=e.currentTarget.scrollLeft;a.el.style.transform="translateX(-"+t+"px)"}},[vue.h("table",{className:"v-table",style:{width:`${t}px`}},[vue.h("thead",{className:"v-head-cloned"},[c.value?vue.h("th",{width:42}):null,...o.map(e=>vue.h("th",{width:e.width}))]),vue.h("tbody",{className:"v-datatable-data",key:p.value},b.value.length<1?vue.h("td",{colspan:o.length+(c.value?1:0)},e.emptyMessage):[b.value.map(e=>[_["header-group"]?vue.h("tr",{className:"v-header-group"},[_["header-group"]({group:e})]):null,(e.values.value||e.values).map((e,t)=>{const l=_.default({row:e,index:t});return l.forEach((e,t)=>{e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{e.children.shift()}))}),vue.h("tr",{class:I(e),onDblclick(l){C(l,e,t),S("dblclick",l)},onclick(l){C(l,e,t)}},[c.value?vue.h("td",{className:"center"},vue.h("span",{onclick(){N(e,t)},className:"v-check"},vue.h(vueFontawesome.FontAwesomeIcon,{icon:B(e)?freeRegularSvgIcons.faSquareCheck:freeRegularSvgIcons.faSquare,class:"fa-lg"}))):null,...l])}),_["footer-group"]?vue.h("tr",{className:"v-footer-group"},[c.value?vue.h("td"):null,_["footer-group"]({group:e})]):null,_["extra-group"]?_["extra-group"]({group:e,groups:b.value}):null])])])])])}},props:{class:null,value:Array,filterKey:String,reflow:null,summary:null,src:String,gql:null,filters:Object,store:null,width:null,emptyMessage:{default:"No existen registros"},groups:{default:""},rowKey:{default:"id"},rowStyleClass:null,pagination:null,selectable:{default:!0},scrollable:null,autoload:{default:!0}},data:()=>({resizeAfterUpddate:0,active:0,keyBody:1,row:{},kt:0,size:null,sortKey:"",paginatio_:0,remoteLoaded:null,loaded:!1,sortOrders:{},rowStyleClassFunc:null}),created(){const me=this;me.$parent.tabs||(me.active=1),me.paginatio_=me.pagination?me.pagination:0,me.rowStyleClass&&eval("me.rowStyleClassFunc=function(row){return "+me.rowStyleClass+"}")},beforeUpdate(){this.active&&this.value},filters:{capitalize:e=>e?e.charAt(0).toUpperCase()+e.slice(1):e},methods:{hasSlot(e){return!!this.$slots[e]},sortBy(){},filter(){alert(12)}},__file:"src/v-table.vue"},script$5={name:"VTabview",data:()=>({tabs:[],height:0,currentTabIndex:0,k:0}),methods:{load(e){var t=new Event("command",{bubbles:!1});t.name="refresh",t.target=this.$el,this.$el.children[1+this.currentTabIndex].dispatchEvent(t)},reset(){this.load(this.k++)}},watch:{currentTabIndex(e){var t=this,l=t.$el.children[e+1];if(t.$children[e+1],l){var o=new Event("tabChange",{bubbles:!1});o.$target=t,l.dispatchEvent(o),t.$el.style.height=t.height+"px",(o=new Event("parentResize",{bubbles:!1})).height=t.$el.offsetHeight-25,l.style.height=o.height+"px",setTimeout(()=>{l.dispatchEvent(o)},2)}}},updated(){for(var e=this.$el.children,t=1;t<e.length;t++)e[t].tagName&&(t-1===this.currentTabIndex&&(e[t].style.display="flex",e[t].style.flex="1",e[t].style.flexDirection="column"),t-1===this.currentTabIndex?e[t].classList.remove("hide"):(e[t].style.display="none",e[t].classList.add("hide"))),console.log(e[t])},mounted(){for(var e=this,t=e.$el.children,l=1;l<t.length;l++)t[l].style.display="none",e.tabs.push({title:""+t[l].getAttribute("tab")});e.$el.addEventListener("parentResize",l=>{e.$el.style.height=l.height+1+"px",e.height=l.height+1;var o=new Event("parentResize",{bubbles:!1});o.height=e.$el.offsetHeight-25,o.target=e.$el,o.$target=e;for(var a=1;a<t.length;a++)"none"!=t[a].style.display&&(console.log("Se envia el alto "+o.height),t[a].style.height=o.height+"px",t[a].dispatchEvent(o));e.$emit("resize",o)}),t[1+e.currentTabIndex].setAttribute("active",1);var o=new Event("tabChange",{bubbles:!1});o.$target=e,t[1+e.currentTabIndex].dispatchEvent(o)}};const _hoisted_1$4={class:"v-tab-nav"},_hoisted_2$3=["onClick"];function render$2(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("div",{class:"v-tabview",style:vue.normalizeStyle({height:a.height+"px"})},[vue.createElementVNode("ul",_hoisted_1$4,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(a.tabs,(e,t)=>(vue.openBlock(),vue.createElementBlock("li",{class:vue.normalizeClass({"v-selected":t==a.currentTabIndex}),key:t,onClick:e=>a.currentTabIndex=t},vue.toDisplayString(e.title),11,_hoisted_2$3))),128))]),vue.renderSlot(e.$slots,"default")],4)}script$5.render=render$2,script$5.__file="src/v-tabview.vue";var script$4={name:"VTextarea",props:{modelValue:String},setup(e,{emit:t}){const l=vue.ref(null),o=()=>{l.value&&(l.value.style.height="auto",l.value.value&&(l.value.style.height=`${l.value.scrollHeight}px`))},a=()=>{vue.nextTick(o)};return vue.watch(()=>e.modelValue,a,{immediate:!0}),vue.onMounted(()=>{const e=l.value;e&&(e.addEventListener("change",o),e.addEventListener("cut",a),e.addEventListener("paste",a),e.addEventListener("drop",a),e.addEventListener("keydown",a),a())}),{textarea:l,updateValue:e=>{t("update:modelValue",e.target.value),a()}}}};const _hoisted_1$3=["value"];function render$1(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock("textarea",{ref:"textarea",value:l.modelValue,onInput:t[0]||(t[0]=(...e)=>o.updateValue&&o.updateValue(...e))},null,40,_hoisted_1$3)}script$4.render=render$1,script$4.__file="src/v-textarea.vue";const _hoisted_1$2={style:{cursor:"pointer"}},_hoisted_2$2=["disabled"],_hoisted_3$2=["data-icon"],_hoisted_4$2=["value"];var script$3={__name:"v-uploader",props:{value:String,onlyicon:Boolean,click:Function,icon:String,domain:String,dst:String,disabled:{type:Boolean,default:!1}},emits:["update:value","input"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(0),n=vue.ref(!1);function r(){l.disabled||l.click&&l.click()}function s(e){if(l.disabled)return void(e.target.value="");const t=e.target.files?.[0];t&&(a.value=0,function(e,t){if(l.disabled)return;const r=new FormData;if(t=t||e.name.replace(/[^\w\s.]/gi,""),r.append("filename",t),r.append("file",e,t),l.dst){const e=l.dst.endsWith("\\")?l.dst+t:l.dst+"\\"+t;r.append("dst",e)}n.value=!0,axios$2.post((l.domain||"")+"/api/file/upload",r,{headers:{"Content-Type":"multipart/form-data"},onUploadProgress:e=>{a.value=Math.round(100*e.loaded/(e.total||1))}}).then(e=>{o("input",e.data),o("update:value",e.data)}).catch(e=>{console.error("Upload error:",e)}).finally(()=>{n.value=!1})}(t))}return(t,l)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(["v-uploader",[e.onlyicon?"":"v-button ui-widget ui-state-default ui-corner-all",{disabled:e.disabled}]]),style:vue.normalizeStyle({padding:e.onlyicon?"0px":""}),onClick:r},[vue.createElementVNode("label",_hoisted_1$2,[e.click?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createElementBlock("input",{key:0,type:"file",disabled:e.disabled,onChange:s},null,40,_hoisted_2$2)),vue.createElementVNode("i",{class:vue.normalizeClass(["fa",e.icon||"fa-upload"]),"data-icon":e.icon,style:vue.normalizeStyle({marginRight:e.onlyicon||!e.value?"":"10px"})},null,14,_hoisted_3$2),vue.createTextVNode(" "+vue.toDisplayString(e.onlyicon?"":e.value??"Adjuntar Archivo")+" ",1),n.value?(vue.openBlock(),vue.createElementBlock("progress",{key:1,max:"100",value:a.value,style:{width:"100%"}},null,8,_hoisted_4$2)):vue.createCommentVNode("v-if",!0)])],6))},__file:"src/v-uploader.vue"},script$2={name:"VItem",setup:({href:e},{emit:t})=>({click:()=>{e?useAppStore().router.push({path:e}):t("click")}}),props:{icon:String,style:Object,label:String,href:String}};function render(e,t,l,o,a,n){return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("li",{onClick:t[0]||(t[0]=(...e)=>o.click&&o.click(...e)),style:vue.normalizeStyle(l.style)},[vue.createElementVNode("i",{class:vue.normalizeClass(["fa",l.icon])},null,2),vue.createTextVNode(vue.toDisplayString(l.label)+" ",1),vue.renderSlot(e.$slots,"label")],4),vue.createElementVNode("ul",null,[vue.renderSlot(e.$slots,"default")])],64)}script$2.render=render,script$2.__file="src/v-item.vue";const _hoisted_1$1={style:{padding:"20px"}},_hoisted_2$1={class:"v-form"},_hoisted_3$1=["onUpdate:modelValue"],_hoisted_4$1={style:{"padding-top":"5px"},class:"right"};var script$1={__name:"v-filter-date",props:{modelValue:{type:String,default:null},name:{type:String,default:""},min:{type:String,default:null},max:{type:String,default:null}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(null),n=vue.ref(!1),r=vue.ref(null);const s=vue.ref([{operator:"=",value:null}]);let i=null;const u=vue.computed(()=>!!l.modelValue),c=vue.ref(""),d=vue.computed(()=>{const e=l.name||c.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function v(){c.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map($).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await vue.nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function p(){n.value=!1,i&&(unmask(i),i=null)}function m(){s.value.push({operator:"=",value:null})}function h(e){return e||null}function f(){const e=h(s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>{const t=function(e){if(!e)return null;return date(e,"date-")||null}(e.value);return t?`${e.operator}${t}`:null}).filter(Boolean).join("&"));e!==h(l.modelValue)&&o("update:modelValue",e),p()}function g(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],p()}function y(){p()}function $(e){const t=e.match(/^(>=|<=|>|<|=)(\d{4}-\d{2}-\d{2})$/);return t?{operator:t[1],value:t[2]}:null}return(t,l)=>{const o=vue.resolveComponent("v-button"),i=vue.resolveComponent("v-calendar"),c=vue.resolveComponent("center"),p=vue.resolveComponent("v-panel");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(o,{ref_key:"button",ref:r,class:vue.normalizeClass(["v-filter",{"v-selected":u.value}]),icon:"fa-calendar",onClick:vue.withModifiers(v,["prevent","stop"])},null,8,["class"]),(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[vue.withDirectives(vue.createVNode(p,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:d.value},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1,[vue.createElementVNode("div",_hoisted_2$1,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.value,(t,a)=>(vue.openBlock(),vue.createElementBlock("div",{key:a,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[vue.withDirectives(vue.createElementVNode("select",{"onUpdate:modelValue":e=>t.operator=e,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...l[0]||(l[0]=[vue.createElementVNode("option",{value:">="},">=",-1),vue.createElementVNode("option",{value:">"},">",-1),vue.createElementVNode("option",{value:"="},"=",-1),vue.createElementVNode("option",{value:"<"},"<",-1),vue.createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3$1),[[vue.vModelSelect,t.operator]]),vue.createVNode(i,{modelValue:t.value,"onUpdate:modelValue":e=>t.value=e,style:{flex:"1"},min:e.min,max:e.max},null,8,["modelValue","onUpdate:modelValue","min","max"]),vue.createVNode(o,{icon:"fa-trash",onClick:vue.withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(a),["prevent"])},null,8,["onClick"])]))),128)),vue.createElementVNode("div",_hoisted_4$1,[vue.createVNode(o,{icon:"fa-plus",onClick:vue.withModifiers(m,["prevent"])})])]),vue.createVNode(c,{style:{"padding-top":"20px"}},{default:vue.withCtx(()=>[vue.createVNode(o,{icon:"fa-check",value:"Aceptar",onClick:f}),vue.createVNode(o,{icon:"fa-times",value:"Limpiar",onClick:g}),vue.createVNode(o,{icon:"fa-ban",value:"Cancelar",onClick:vue.withModifiers(y,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vue.vShow,n.value]])]))],64)}},__file:"src/v-filter-date.vue"};const _hoisted_1={style:{padding:"20px"}},_hoisted_2={class:"v-form"},_hoisted_3=["onUpdate:modelValue"],_hoisted_4=["onUpdate:modelValue"],_hoisted_5={style:{"padding-top":"5px"},class:"right"};var script={__name:"v-filter-number",props:{modelValue:{type:String,default:null},name:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=vue.ref(null),n=vue.ref(!1),r=vue.ref(null);const s=vue.ref([{operator:"=",value:null}]);let i=null;const u=vue.computed(()=>!!l.modelValue),c=vue.ref(""),d=vue.computed(()=>{const e=l.name||c.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function v(){c.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map(y).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await vue.nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function p(){n.value=!1,i&&(unmask(i),i=null)}function m(){s.value.push({operator:"=",value:null})}function h(){const e=s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>`${e.operator}${e.value}`).join("&");o("update:modelValue",e||null),p()}function f(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],p()}function g(){p()}function y(e){const t=e.match(/^(>=|<=|>|<|=)(-?\d+(?:\.\d+)?)$/);return t?{operator:t[1],value:t[2]}:null}return(e,t)=>{const l=vue.resolveComponent("v-button"),o=vue.resolveComponent("center"),i=vue.resolveComponent("v-panel");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(l,{ref_key:"button",ref:r,class:vue.normalizeClass(["v-filter",{"v-selected":u.value}]),icon:"fa-hashtag",onClick:vue.withModifiers(v,["prevent","stop"])},null,8,["class"]),(vue.openBlock(),vue.createBlock(vue.Teleport,{to:"body"},[vue.withDirectives(vue.createVNode(i,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:d.value},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1,[vue.createElementVNode("div",_hoisted_2,[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(s.value,(e,o)=>(vue.openBlock(),vue.createElementBlock("div",{key:o,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[vue.withDirectives(vue.createElementVNode("select",{"onUpdate:modelValue":t=>e.operator=t,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...t[0]||(t[0]=[vue.createElementVNode("option",{value:">="},">=",-1),vue.createElementVNode("option",{value:">"},">",-1),vue.createElementVNode("option",{value:"="},"=",-1),vue.createElementVNode("option",{value:"<"},"<",-1),vue.createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3),[[vue.vModelSelect,e.operator]]),vue.withDirectives(vue.createElementVNode("input",{"onUpdate:modelValue":t=>e.value=t,type:"number",style:{width:"120px",flex:"1"}},null,8,_hoisted_4),[[vue.vModelText,e.value]]),vue.createVNode(l,{icon:"fa-trash",onClick:vue.withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(o),["prevent"])},null,8,["onClick"])]))),128)),vue.createElementVNode("div",_hoisted_5,[vue.createVNode(l,{icon:"fa-plus",onClick:vue.withModifiers(m,["prevent"])})])]),vue.createVNode(o,{style:{"padding-top":"20px"}},{default:vue.withCtx(()=>[vue.createVNode(l,{icon:"fa-check",value:"Aceptar",onClick:h}),vue.createVNode(l,{icon:"fa-times",value:"Limpiar",onClick:f}),vue.createVNode(l,{icon:"fa-ban",value:"Cancelar",onClick:vue.withModifiers(g,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vue.vShow,n.value]])]))],64)}},__file:"src/v-filter-number.vue"},components={InputTextarea:script$s,VItem:script$2,InputText:script$t,VAutocomplete:script$r,VButton:script$q,VCalendar:script$p,VFilterDate:script$1,VFilterNumber:script,VCheckboxGroup:script$o,VCheckbox:script$n,VDataview:script$m,VFieldset:script$l,VForm:script$k,VGroup:script$j,VLayerControl:script$i,VMapControl:script$h,VMap:script$g,VNumber:script$f,VOptions:script$e,VOverlay:script$d,VPanel:script$c,VPopup:script$b,VRadioGroup:script$9,VRadio:script$a,VSelect:script$8,VSwitch:script$7,VTable:script$6,VTabview:script$5,VTextarea:script$4,VUploader:script$3};const VForm=components.VForm,IsobitUI={install(e){setApp(e),e.BUILT_ON=(void 0).VITE_APP_BUILT_ON;for(const t in components)if(components.hasOwnProperty(t)){const l=components[t];e.component(l.name||t,l)}}};setTimeout(resize,400),window.addEventListener("resize",()=>{setTimeout(resize,400)});const removeError=e=>{let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)},ui=e=>{const l={computed:{user:()=>_$1.app.session,perms(){return this.session?.perms||this.session?.allcaps||{}}},data(){return{app2:null,ui:this,_session:null,x_connected_:null,row:{},networkStatus:{connected:null}}},methods:{get(e){let t=this.$el.querySelector("form").action;window.location.href=this.apiLink(t)+"/"+e},async sync(e){let t=this,l=t.$el.querySelector("form").getAttribute("action");if(!l){l=t.$el.parentNode.getAttribute("path");let e=l.split("/");e="edit"==e[e.length-1]?e.splice(0,e.length-2):e.splice(0,e.length-1),l=t.apiLink(e.join("/"))}let o=t.$children[0].$children[0];l=o.src;let a=await t.getStoredList(o.store),n=o.selected,r=[],s=[];for(let e=0;e<n.length;e++){let t=o.data[n[e]];if(t.tmpId&&!t.synchronized)for(let e=0;e<a.length;e++)if(a[e].tmpId==t.tmpId){let t=JSON.clone(a[e]);delete t.synchronized,s.push(t),r.push(e)}}r.length>0&&axios.post(l+"/bulk"+(e.sufix?e.sufix:""),s).then(function(e){let l=e.data;for(let e=0;e<l.length;e++){if(l[e].errors){MsgBox$1(JSON.stringify(l[e].errors));break}if(l[e].error){MsgBox$1(l[e].error);break}for(let t=0;t<a.length;t++)(l[e].ext&&l[e].ext.tmpId==a[t].tmpId||l[e].tmpId==a[t].tmpId)&&(log("ui.ok"),l[e].ext&&a.ext&&(a[t].ext.error=l[e].ext.error),l[e].id&&(a[t].id=l[e].id),a[t].synchronized=1,emit("sync",l[e],a[t]))}t.setStoredList(o.store,a),t.refresh()}).catch(function(e){e.response?MsgBox$1(e.response.data):console.log(e)})}}};e||(e={data:{o:{}}});const{setup:o,...a}=e,n=o;return e={mixins:[l,a],setup(e,l){const o=useAppStore();setApp(o),o.config(getConfigApp());const a=e;let r=vueRouter.useRouter();const s=vue.getCurrentInstance(),u=vue.reactive([]),c={remove(e){u.splice(u.indexOf(e),1)},push(e){u.push(e)}},d=e=>{},v=async e=>{const t=s.proxy,l=_$1.db;let a;try{a=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==a&&(a={}),!a[e]&&t.connected){let t=_$1.stores.filter(t=>t[0]==e)[0];if(!t[2])throw`ERROR: Url for store '${t[0]}' is empty!`;let{data:n}=await o.axios.get(t[2]);n=n.data||n,await new Promise((o,r)=>{let s=l.transaction([t[0]],"readwrite"),i=s.objectStore(t[0]);const u=i.clear();u.onsuccess=()=>{n.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},u.onerror=()=>{console.error(`⚠️ Store '${t[0]}' error data!`,t)},s.oncomplete=()=>{a[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(a)),o()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),r()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},p=()=>{u.find(e=>"v-table"==e.type)()};vue.provide("refresh",p);const m=(e,t,l)=>{let o=u.find(e=>"v-popup"==e.type);if(console.log(e),e.open)e.open();else if(o&&(e instanceof String||"string"==typeof e))o.open(e);else if(!(e.$el||e instanceof HTMLElement)){let t=e,l=t.target;return"string"==typeof t?l=t:"ION-ITEM"==l.tagName&&l.href?(t.preventDefault(),l=l.href):(t.preventDefault(),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l=l.pathname),void(r.path!==l&&r.push(l))}},h=(e,t,l)=>{"string"==typeof t&&(t={body:t});let a="string"==typeof l?{fileName:l}:l;a||(a={}),(""+t?o.axios.post(e,t,{responseType:"blob"}):o.axios({method:"post",url:e,data:t,headers:{"Content-Type":"multipart/form-data"}})).then(e=>{const t=window.URL.createObjectURL(new Blob([e.data])),l=document.createElement("a");if(l.href=t,!a.fileName){const t=e.headers["content-disposition"];if(t&&-1!==t.indexOf("attachment")){const e=/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/.exec(t);null!=e&&e[1]&&(a.fileName=e[1].replace(/['"]/g,"").trim())}else console.warn("content-disposition: attachment; filename = <filename>; header no es accesible o no esta definido correctamente")}l.setAttribute("download",a.fileName),document.body.appendChild(l),l.click()})},f=n=>{const r=n?.target?.closest("form"),c=r?.closest(".v-msgbox")?.closest(".v-overlay");let d=u.filter(e=>"v-form"===e.type).find(e=>e.$el?.children?.[0]===r);d||(d=u.find(e=>"v-form"===e.type));const p=s.proxy;d.$forceUpdate();let m=d.$el,h=m.querySelector("form");if(y(h)){let n=h.getAttribute("action"),r=p.data||p.o,s=JSON.parse(JSON.stringify(r));if(p.process&&(s=p.process(s)),"object"!=typeof s||Array.isArray(s)||null===s)return;if(console.log("action/componet==",n,p,l),n&&o.connected)o.axios.post(n,s).then(t=>{let l=t.data;if(s.tmpId){alert(12);let e=a.$children[0].store,t=window._.db.transaction([e],"readwrite").objectStore(e),o=t.get(s.tmpId);l.id&&(s.id=l.id,r.id=s.id),o.onsuccess=function(){let e;r.synchronized=1,s.synchronized=1,e=o.result?t.put(s):t.add(s),e.onerror=e=>{console.error(e)},a.$emit("sync",l,s)},o.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}o&&o.toast?o.toast("El registro fue grabado exitosamente!",()=>{console.log(e),p.close({success:!0,data:l}),c?.closeDialog?.(1)}):MsgBox$1("El registro fue grabado exitosamente! msg",()=>{w({success:!0,data:l}),c?.closeDialog?.(1)})}).catch(function(e){if(e.response){let l,o;if("string"==typeof e.response.data)MsgBox$1(e.response.data);else{l=e.response.data.propertyViolations;for(let e=0;e<l.length;e++){let t=l[e];o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message)}for(l=e.response.data.fieldViolations,i=0;i<l.length;i++)t=l[i],o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message+", valor="+t.value);MsgBox$1("Verifique el formulario, aun tiene campos obligatorio completar."),"v-dialog"==a.$el.parentNode.className&&a.$el.parentNode.parentNode.scroll({top:0,behavior:"smooth"})}}});else{console.log("se guarda localmente");const e=u[0].store;if(!e)return void MsgBox$1("Store in form is undefined!");v(e).then(t=>{if(t||(t=[]),s.id)for(let e=0;e<t.length;e++)t[e].tmpId==s.tmpId&&(delete s.synchronized,t[e]=s);let l=_$1.db.transaction([e],"readwrite").objectStore(e);if(s.id){delete s.synchronized;let e=l.get(s.tmpId);e.onsuccess=function(){e.result?l.put(s):t.forEach(e=>{e.tmpId==s.tmpId&&l.put(s)}),a.$emit("stored",s,t,l),a.$ionic&&o.toast("El registro fue grabado exitosamente! onstored"),p.close({success:!0,data:s})},e.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}else{s.tmpId=1*new Date,s.id=-s.tmpId;let e=l.add(s);e.onsuccess=e=>{t.unshift(s),a.$emit("stored",s,t,l),o&&o.toast&&o.toast("El registro fue grabado exitosamente! storeeeeee not connected"),r.tmpId=s.tmpId,r.id=s.id,console.log("========>>",p),p.close({success:!0,data:s})},e.onerror=e=>{o&&o.toast&&o.toast("Error!")}}})}}else MsgBox$1("Verifique el formulario, aun tiene campos obligatorios sin completar."),"v-dialog"==m.parentNode.className?m.parentNode.parentNode.scroll({top:0,behavior:"smooth"}):m.querySelector("form > .v-form").scroll({top:0,behavior:"smooth"})},g=(e,t)=>{e.$el&&(e=e.$el),removeError(e);let l=e.previousElementSibling;for(;l&&1!=l.nodeType;)l=l.previousElementSibling;if(!l)for(l=e.parentElement.previousElementSibling;l&&1!=l.nodeType;)l=l.previousElementSibling;let o=document.createElement("div");o.innerHTML="Este campo es requerido!",o.classList.add("v-error"),e.parentNode.insertBefore(o,e)},y=e=>{const t=[],l=[],o=s.proxy;e=e&&0!=e?e:o.$el;const a=e?.querySelectorAll("input,select,textarea,div[required=required]");let n,r={};for(let e=0;a?.length>e;e++){let o=a[e];if("radio"===o.type){let e=r[o.name];e||(r[o.name]=e=[]),e.push(o);continue}if(o.error&&(o.error.style.display="none"),!o.disabled&&!o.getAttribute("disabled")&&(o.required||"DIV"===o.tagName))if("DIV"!=o.tagName&&!o.value||"DIV"===o.tagName&&!o.attributes.value){for(n=o.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;if(!n)for(n=o.parentElement.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;t.push(o)}else l.push(o)}for(let e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const o=r[e];let a=!1,s=!1;for(let e=0;e<o.length;e++)o[e].required&&!o[e].disabled&&(s=!0),o[e].checked&&(a=!0);const i=o[0].parentNode.parentNode;n=i.previousElementSibling,n&&n.classList&&n.classList.contains("v-error")&&n.parentNode.removeChild(n),s&&!a?t.push(i):l.push(i)}for(const e of t)g(e);for(const e of l){let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)}return!t.length},$=(e,t)=>{let l=e.parentElement;for(;l;){const e=l.querySelector(t);if(e)return e;l=l.parentElement}return null},b=e=>{const t=$(e.target,".v-datatable");let l=u.filter(e=>"v-table"==e.type).find(e=>e.is(t)),o=l.getForm().action;var a;o||(o=window.location.pathname),l&&l.src&&(o=l.src),e.action&&(o=e.action),o&&(a=o.replace("/api","").replace("/0/0",""),o="/admin"+a);const n=l.selected.value[0];let r=n[l.rowKey];n.tmpId&&(r=-n.tmpId),m(o+"/"+r+"/edit")},w=t=>{t&&e.callback&&e.callback(t)};vue.provide("viewCollector",c);const k=vue.computed(()=>{let e=u.find(e=>e.selected?.value.length>0);return e?.rowSelectedCount||0}),_=vue.computed(()=>clean(x.value)),x=vue.reactive({}),S=vue.ref(null);let E;vue.watch(x,()=>{u.find(e=>"v-table"==e.type)&&(S.value&&clearTimeout(S.value),S.value=setTimeout(()=>{p()},1200))});const V=()=>{clearTimeout(E),E=setTimeout(()=>{const e=document.querySelector(".v-datatable");e?.parentNode&&buildPopupMenu(e)},100)};vue.onMounted(()=>{r=vueRouter.useRouter(),l.emit("sync",{u:9}),V(),window.addEventListener("resize",V)}),vue.onUnmounted(()=>{window.removeEventListener("resize",V)});const C=vue.computed(()=>o.axios.defaults.baseURL),N=vue.computed(()=>o.session);let B=n?n({...e,$on:(e,t)=>{},router:r,getStoredList:v,app:o,save:f,open:m,refresh:p,saveAs:h,edit:b},l):{};l.expose({router:r});let I={app:o,cleanedFilters:_,router:r,baseURL:C,filters:x,session:N,date:date,pad:pad,getStoredList:v,refresh:p,getSelected:()=>u.find(e=>"v-table"==e.type).selected.value,saveAs:h,validate:y,save:f,open:m,close:w,create:e=>{const t=$(e.target,".v-datatable");let l=u.filter(e=>"v-table"==e.type).find(e=>e.is(t)).getForm().action;l||(l=window.location.pathname),l&&(l=l.replace("/api","")),l+="/create",o&&m(l)},edit:b,destroy:e=>{let t=this;const l=$(e.target,".v-datatable");let a=u.filter(e=>"v-table"==e.type).find(e=>e.is(l));u.find(e=>"v-table"!=e.type).action;let n=e.$vnode?e.load:null,r=a.rowKey,s=a.selected.value[0];if(s.tmpId)MsgBox$1("Esta seguro que desea eliminar los registros temporales seleccionados ?",function(e){if(0==e){let e=0,l=_$1.db.transaction([a.store],"readwrite").objectStore(a.store),r=[];for(let t=a.selected.length-1;t>=0;t--)s=a.data[a.selected[t]],r.push(s),s.tmpId&&l.delete(s.tmpId),e++,a.data.splice(a.selected[t],1);e&&(o&&o.toast?o.toast(e+" registros eliminados"):MsgBox$1(e+" registros eliminados")),a.rowSelect(null,-1),a.selected=[],t.$emit("destroyed",r,a.store),n&&n()}},["SI","NO"]);else{if(!r)return alert("Table don`t have defined attribute 'rowkey'");let e=s[r];MsgBox$1("Esta seguro que desea eliminar el registro seleccionado?",t=>{if(0==t){const t=a.src.replace("/0/0",""),l=[];let n=a.selected.value.length-1;o.axios.delete(t+"/"+e,{params:x.value}).then(()=>{for(;n>=0;n--)s=a.selected.value[n],l.push(s),a.remove(s);o&&o.toast?o.toast(l.length+" registros eliminados"):MsgBox$1(l.length+" registros eliminados"),a.rowSelect(null,-1),a.selected.value=[]}).catch(d)}},["SI","NO"])}},rowSelectedCount:k,...B};return I}},e};exports.Drag=Drag,exports.IsobitUI=IsobitUI,exports.MsgBox=MsgBox$1,exports.VForm=VForm,exports._=_$1,exports.app=app,exports.date=date,exports.db=db,exports.getStoredList=getStoredList,exports.id=id,exports.initDB=initDB,exports.mask=mask,exports.pad=pad,exports.removeError=removeError,exports.resize=resize,exports.setupApp=setupApp,exports.ui=ui,exports.unmask=unmask,exports.useAppStore=useAppStore;
package/dist/library.mjs CHANGED
@@ -1 +1 @@
1
- import{createElementBlock,openBlock,ref,watch,computed,onMounted,onBeforeUnmount,createCommentVNode,withDirectives,createVNode,normalizeStyle,renderSlot,createTextVNode,toDisplayString,createElementVNode,normalizeClass,withKeys,withModifiers,vModelText,Transition,withCtx,Fragment,renderList,vShow,nextTick,provide,inject,h as h$1,reactive,onUpdated,toRef,onUnmounted,shallowRef,createBlock,Teleport,resolveDynamicComponent,mergeProps,getCurrentInstance,unref,resolveComponent,vModelSelect}from"vue";import{getActivePinia,createPinia,setActivePinia,defineStore}from"pinia";import axios$2 from"axios";import{unByKey}from"ol/Observable";import{Collection}from"ol";import FullScreen from"ol/control/FullScreen";import GeoJSON from"ol/format/GeoJSON";import VectorLayer from"ol/layer/Vector";import VectorSource from"ol/source/Vector";import{Style,Text,Stroke,Fill,RegularShape,Circle}from"ol/style";import Control from"ol/control/Control";import"ol/ol.css";import PointerInteraction from"ol/interaction/Pointer";import Feature from"ol/Feature";import Map from"ol/Map";import"ol/interaction/Pointer.js";import"ol/interaction/defaults";import View from"ol/View";import{Point}from"ol/geom";import"ol/interaction/Select";import{fromLonLat,toLonLat}from"ol/proj";import{Tile}from"ol/layer";import{OSM}from"ol/source";import"ol/interaction/Translate";import _imports_0 from"@/cdn/images/triangle-down.svg";import{useRouter}from"vue-router";import{FontAwesomeIcon}from"@fortawesome/vue-fontawesome";import{faSquareCheck,faSquare}from"@fortawesome/free-regular-svg-icons";var script$t={name:"InputText"};const _hoisted_1$k={type:"text"};function render$m(e,t,l,o,a,n){return openBlock(),createElementBlock("input",_hoisted_1$k)}script$t.render=render$m,script$t.__file="src/InputText.vue";var script$s={name:"InputTextarea"};function render$l(e,t,l,o,a,n){return" text "}script$s.render=render$l,script$s.__file="src/InputTextarea.vue";const _$1={stores:[],_id:0,axios_get:null,storeFunction:{}},log=(e,...t)=>{e&&console.log(e,...t)};let configApp={};function setupApp({pinia:e,axios:t,router:l}){configApp.pinia=e||createPinia(),t&&(configApp.axios=t),l&&(configApp.router=l),setActivePinia(configApp.pinia)}function getConfigApp(){return configApp}function getPiniaInstance(){return getActivePinia()||configApp.pinia}const id=()=>_$1._id++,num=e=>e=e?""==e?null:Number(""+e):0,date=(e,t)=>{if(e){let l;if(e instanceof Date)l=e;else if("string"==typeof e){let t=e.includes("T")?e.split("T"):e.split(" ");l=t[0].split("-"),t.length>1?(t=t[1].split(":"),l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2]),parseInt(t[0]),parseInt(t[1]),t.length>2?parseInt(t[2]):0)):l.length>2?l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2])):(l=e.split(":"),l=l.length>2?new Date(1981,0,6,parseInt(l[0]),parseInt(l[1]),parseInt(l[2])):new Date(e))}else l=new Date(e);if(1==t)e=l;else if("time"===t)e=pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2);else if("time a"==t)if("string"==typeof e||e instanceof String){let t=(e=e.split(":"))[0];e=pad(t>12?t-12:t,2)+":"+e[1]+":"+e[2]+" "+(t>12?"PM":"AM")}else h=l.getHours(),e=pad(h>12?h-12:h,2)+":"+pad(l.getMinutes(),2)+(l.setSeconds()?":"+pad(l.setSeconds(),2):"")+" "+(h>12?"PM":"AM");else e="date-"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2):"dMY"==t||"date"==t?pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4):"datetime"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2)+"T"+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2):pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4)+" "+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)}return e},whichChild=e=>{let t=0;for(;null!=(e=e.previousElementSibling);)++t;return t},unmask=e=>{e&&(e.style.display="none",e.parentNode&&e.parentNode.removeChild(e))},isObject=e=>e&&"object"==typeof e&&!Array.isArray(e),mergeDeep=function(){let e=arguments[0],t=[];for(let e=1;e<arguments.length;e++)t.push(arguments[e]);if(!t.length)return e;let l,o=t.shift();if(isObject(e)&&isObject(o))for(let t in o)isObject(o[t])?(e[t]||(l={},l[t]={},Object.assign(e,l)),mergeDeep(e[t],o[t])):(l={},l[t]=o[t],Object.assign(e,l));let a=[];return a.push(e),a.concat(t),mergeDeep.apply(null,a)},buildPopupMenu=e=>{let t=e.getAttribute("v--popup");if(!t){e.setAttribute("v--popup",t=id());let l=_$1.storeFunction[t],o=e.querySelectorAll(".v-datatable-header .v-button");o&&o.length&&!l&&window.innerWidth<=700&&setTimeout(function(){l=document.createElement("ul"),l.className="v-popup-2",e.appendChild(l);let a=null;const n=e=>{l.style.display="none";let t=e.target.getAttribute("commandId"),o=document.querySelector("#"+t);"BUTTON"==o.tagName?o.click():o.children[0].click(),unmask(a)};e.style.position="relative";let r=document.createElement("div");r.className="v-mobil v-table-buttons";let s=document.createElement("i");s.className="fa fa-bars fa-w-14",r.appendChild(s),r.onclick=()=>{for(o=e.querySelectorAll(".v-datatable-header .v-button");l.firstChild;)l.removeChild(l.firstChild);for(s=0;s<o.length;s++)if("none"!=o[s].style.display){let e=document.createElement("li");if(o[s].id||(o[s].id="c-"+id()),e.setAttribute("commandId",o[s].id),"BUTTON"==o[s].tagName){if(o[s].disabled)continue;e.appendChild(o[s].children[0].cloneNode(!0)),e.appendChild(document.createTextNode(o[s].value?o[s].value:o[s].title))}else o[s].children[0].children[1]&&(e.appendChild(o[s].children[0].children[1]),e.appendChild(document.createTextNode(o[s].textContent)));e.onclick=n,l.appendChild(e)}a=mask(l),l.style.display="block",a.onclick=()=>{l.style.display="none",unmask(a)}},e.appendChild(r),_$1.storeFunction[t]=l},500)}},resize=()=>{},mask=(e,t)=>{if(!document.body)return;let l,o=document.createElement("div");o.style="top:50%;transform:translate(-50%,-50%);position:absolute;width:100%;z-index:2; display: flex;justify-content: center;";let a=o.style;if(a.left="50%",a.textAlign="center",!1!==e)if(e instanceof Element)o=e;else{if(e){let t=document.createElement("div");t.innerHTML=e,o.append(t),o.style="padding:4px;margin-bottom:5px;color:white;font-size:24px;text-align:center"}l=document.createElement("div"),a=l.style,l.className="loading"}let n=document.createElement("div");a=n.style,a.height="100%",a.top="0px",a.position="absolute",a.left="0",a.zIndex="10000",a.width="100%";let r=document.createElement("div");return r.className="v-overlay",n.appendChild(r),o.style.zIndex="1001",n.appendChild(o),n.className="v-mask",l&&o.appendChild(l),document.body.appendChild(n),n};function normalizeArgs(e,t){const l={buttons:[{label:"OK"}],closeOnEsc:!0,closeOnOutsideClick:!1,fade:!0};return e?"function"==typeof e?(l.onClose=e,Array.isArray(t)&&(l.buttons=normalizeButtons(t)),l):Array.isArray(e)?(l.buttons=normalizeButtons(e),l):{...l,...e,buttons:e.buttons?normalizeButtons(e.buttons):l.buttons}:l}function normalizeButtons(e){return e.map(e=>"string"==typeof e?{label:e}:e)}const MsgBox$1=(e,t,l)=>{const o=normalizeArgs(t,l),a=document.createElement("div");a.className="v-overlay",a.style.zIndex="2000",a.style.opacity="0",a.style.transition="opacity 0.2s ease";const n=document.createElement("div");n.className="v-dialog v-msgbox",n.style.opacity="0",n.style.transform="scale(0.95)",n.style.transition="all 0.2s ease";const r=document.createElement("div");r.className="v-dialog-content v-widget-content";const s=document.createElement("div");let i;s.className="v-msgbox-buttons";let c=null,d=null;e instanceof Element?(i=e,c=e.parentNode,d=e.nextSibling):(i=document.createElement("div"),i.innerHTML=e),r.appendChild(i);const u=async(e=null)=>{let t;o.onClose&&(t=await o.onClose(e)),!1!==t&&(c&&(d?c.insertBefore(i,d):c.appendChild(i)),o.fade?(a.style.opacity="0",n.style.opacity="0",n.style.transform="scale(0.95)",setTimeout(()=>a.remove(),200)):a.remove(),document.removeEventListener("keydown",p))};o.buttons?.length&&(o.buttons.forEach((e,t)=>{const l=document.createElement("button");if(l.type="button",l.className="_ ui-widget ui-state-default ui-corner-all v-button blue v-button-text-icon-left",l.setAttribute("value",e.label),e.icon){l.setAttribute("icon",e.icon);const t=document.createElement("i");t.className="fa "+e.icon,l.appendChild(t)}const o=document.createElement("span");o.textContent=e.label,l.appendChild(o),l.addEventListener("click",()=>u(t)),s.appendChild(l)}),r.appendChild(s)),n.appendChild(r),a.appendChild(n),a.closeDialog=u,document.body.appendChild(a),o.fade&&requestAnimationFrame(()=>{a.style.opacity="1",n.style.opacity="1",n.style.transform="scale(1)"});const p=e=>{o.closeOnEsc&&"Escape"===e.key&&u()};document.addEventListener("keydown",p),o.closeOnOutsideClick&&a.addEventListener("click",e=>{e.target===a&&u(null)});let m=n.querySelector(".v-js-close");if(!m){let e=document.createElement("span");e.className="fa fa-close",m=document.createElement("a"),m.className="v-js-close ui-dialog-titlebar-icon ui-dialog-titlebar-close ui-corner-all",m.appendChild(e),n.style.position="relative",n.appendChild(m),m.addEventListener("click",()=>u())}},configureAxios=e=>{if(e.configured)return;let t;e.configured=1,_$1.axios_get=e.get,e.interceptors.request.use(l=>(e.noInterceptor||(_$1.eeee=l,l.mask?l.mask():t||(t=mask())),l),e=>(t=unmask(t),MsgBox$1("request "+id()+" "+e.message),Promise.reject(e))),e.interceptors.response.use(l=>(t=unmask(t),delete e.noInterceptor,l),l=>{if(console.log("interceptors.response.use.error"),e.noInterceptor)return delete e.noInterceptor,t=unmask(t),Promise.reject(l);if(e.error&&0==e.error(l))t=unmask(t);else{let e,o=l.response;if(o&&("string"==typeof o.data?e=o.data:o.data&&(o.data.data&&(e=o.data.data.message),e||(e=o.data.msg||o.data.message||o.data.detail)),e||(e=o.status+": "+o.statusText)),e||(e=l.message),t=unmask(t),o&&(401==o.status||403==o.status)){const e=app();if(e&&localStorage.getItem("session"))return e.axios.noInterceptor=1,void e.axios.post(e.axios.VITE_LOGIN_PATH+"/validate",{JWT:"YOUR_JWT_HERE"}).catch(t=>{console.log("e.response=",t),t.response.data.success||MsgBox$1("Session terminada!",()=>{e.logout()})})}l.config?.error?l.config.error(l,e):l.request?MsgBox$1("<b>"+l.request.responseURL+"</b><br/><br/>"+e):MsgBox$1(e)}return delete e.error,Promise.reject(l)})},pad=(e,t)=>{if(null!=e){let l=1*e+"";for(;l.length<t;)l="0"+l;return l}},clean=e=>{const t={...e};for(let e in t)""!==t[e]&&null!==t[e]&&"function"!=typeof t[e]&&void 0!==t[e]||delete t[e];return t},sum=e=>(void 0).reduce((t,l)=>t+((l=e?l[e]:l)?Number(l):0),0);function createGetters(){return{get networkStatus(){return _$1.app?.networkStatus||{connected:!0}},get db(){return _$1.app?.db},app:()=>_$1.app,setApp(e){_$1.app=e}}}const app=()=>_$1.app,db=()=>_$1.db,initDB=(e,t)=>{let l=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;if(_$1.IDBTransaction=window.IDBTransaction||window.webkitIDBTransaction||window.msIDBTransaction,_$1.IDBKeyRange=window.IDBKeyRange||window.webkitIDBKeyRange||window.msIDBKeyRange,l){if(l)return _$1.stores=t,new Promise((o,a)=>{l.databases().then(n=>{const r=n.find(e=>"db"===e.name),s=r&&r.version||0;if(s<e){console.log(`Eliminando base de datos (versión actual: ${s}, nueva versión: ${e})`);const n=l.deleteDatabase("db");n.onblocked=e=>{console.error("DELETE DATABASE BLOCKED",e)},n.onerror=e=>{console.error("DELETE DATABASE ERROR",e),a(n.error)},n.onsuccess=()=>{sessionStorage.removeItem("loadedStores");let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}}else{let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}})})}else window.alert("Your browser doesn't support a stable version of IndexedDB.");return l},getStoredList=async(e,t)=>{const l=db();let o;try{o=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==o&&(o={}),!o[e]&&networkStatus.connected){const t=_$1.stores.filter(t=>t[0]==e);if(!t.length)throw`ERROR: store '${e}' no exists!`;let a=t[0];const{src:n}=a[1];if(!n)throw`ERROR: Url for store '${a[0]}' is empty!`;let{data:r}=await _$1.axios_get(n);r=r.data||r,await new Promise((t,n)=>{let s=l.transaction([a[0]],"readwrite"),i=s.objectStore(a[0]);const c=i.clear();c.onsuccess=()=>{r.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},c.onerror=()=>{console.error(`⚠️ Store '${a[0]}' error data!`,a)},s.oncomplete=()=>{o[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(o)),t()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),n()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},getters=createGetters(),{networkStatus:networkStatus,setApp:setApp}=getters,deleteAllCookies=()=>{const e=document.cookie.split(";");for(let t of e){const e=t.split("=")[0].trim();document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`}},useAppStore=defineStore("connection",()=>{const e=getPiniaInstance(),t=getConfigApp();if(!e)throw new Error("Pinia no ha sido inicializado. Llama a setupPinia() en tu app.");const l=ref(!1),o=ref(!1),a=ref(t.router),n=ref(t.axios),r=ref(null),s=ref(null);l.value="false"!==localStorage.getItem("connected");const i=e=>{setTimeout(()=>{r.value&&(n.value.noInterceptor=1,n.value.post(n.value.VITE_LOGIN_PATH+"/refresh",{}).then(({data:t})=>{const{token:l,user_nicename:o,perms:a}=t;r.value={token:l,people:{display_name:o},perms:a},e(i)}).catch(e=>{console.error(e)}))},6e5)};let c;watch(r,e=>{e&&e.token?(n.value.defaults.headers.common={Authorization:"Bearer "+e.token},localStorage.setItem("session",JSON.stringify(e)),c||(c=i,i(i))):(localStorage.removeItem("session"),c=null)});const d=localStorage.getItem("session");r.value=d?JSON.parse(d):null,watch(l,e=>{localStorage.setItem("connected",String(e))});const u=computed(()=>s.value?.connected),p=computed(()=>!!r.value?.token);return{connected:l,session:r,logout:()=>{r.value=null,deleteAllCookies(),a.value.push("/login")},unauthorized:o,connect:e=>{r.value=e,a.value.push("/admin")},authenticated:p,config:({axios:e,router:t})=>{t&&(a.value=t),e&&(n.value=e,configureAxios(e))},axios:n,router:a,online:u,networkStatusChange:e=>{s.value=e}}});var script$r={name:"VAutocomplete",props:{modelValue:{type:Object,default:null},data:{type:Array,default:()=>null},placeholder:String,label:String,default:Object,store:String,params:Object,autoload:{type:Boolean,default:!1},floating:{type:Boolean,default:!0},src:String,readonly:Boolean,nowrap:Boolean,disabled:Boolean,showSelection:{type:Boolean,default:!0},pagination:{type:Number,default:10}},setup(e,t){const{emit:l,slots:o}=t;useAppStore();const a=ref(0),n=ref(null),r=ref(-1),s=ref(""),i=ref(null),c=ref(!1),d=ref(0),u=ref(""),p=ref(null);watch(()=>e.modelValue,e=>{console.log("==============>",e),n.value=e}),watch(()=>e.data,e=>{i.value=e}),onMounted(()=>{u.value=e.inputClass,e.autoload&&v(),document.addEventListener("click",f)}),onBeforeUnmount(()=>{document.removeEventListener("click",f)});const m=computed(()=>{r.value=-1;const e=s.value?s.value.trim().toLowerCase().split(/[ ,]+/):null;return i.value&&s.value?i.value.filter(t=>{const l=JSON.stringify(t).toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"");return e.every(e=>l.includes(e))}):i.value}),v=async t=>{const{src:o,source:n}=e;let r=Number(e.pagination);if(1===t)a.value+=r;else if(a.value=0,e.data&&e.autoload)return;let u={query:s.value};e.params&&(u=mergeDeep(u,e.params)),axios$2.get((o||e.source)+(r>0?"/"+a.value+"/"+r:""),{params:u}).then(l=>{const o=l.data;console.log(o),o.error?MsgBox(o.error):(i.value=1===t?i.value.concat(o.data?o.data:o):o.data?o.data:o,console.log(i),d.value=o.size,e.autoload||(c.value=!0),console.log("========================="))}).catch(h).then(()=>{l("complete",{data:i.value,query:s.value,target:"me"})})},h=e=>{console.log(e)},f=e=>{const t=p.value;t&&!t.contains(e.target)&&(c.value=!1)};return{query:s,show:c,selected:n,data2:m,focused:r,autocomplete:p,inputClass:u,search:v,remove:()=>{n.value=null,l("update:modelValue",null)},clickout:f,focusout:e=>{},setSelected:e=>{n.value=e,l("update:modelValue",e)},getLabel:t=>{if(e.label){const l=e.label.split(".");for(let e=0;e<l.length;e++)t&&(t=t[l[e]])}return t},hasSlot:(e="default")=>!!o[e]}}};const _hoisted_1$j=["value","disabled"],_hoisted_2$a=["disabled","placeholder"],_hoisted_3$7={class:"v-list"},_hoisted_4$6=["onClick"],_hoisted_5$1={key:0,class:"center yellow",style:{padding:"5px"}};function render$k(e,t,l,o,a,n){return openBlock(),createElementBlock("div",{class:"v-autocomplete",onFocusout:t[7]||(t[7]=(...e)=>o.focusout&&o.focusout(...e)),ref:"autocomplete",value:e.value,disabled:l.disabled},[o.selected&&l.showSelection?(openBlock(),createElementBlock("div",{key:0,class:"v-selection",style:normalizeStyle({whiteSpace:l.nowrap?"nowrap":""})},[renderSlot(e.$slots,"label",{selected:o.selected}),createTextVNode(" "+toDisplayString(o.hasSlot("label")?" ":o.getLabel(o.selected))+"  ",1),l.readonly?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("span",{key:0,onClick:t[0]||(t[0]=(...e)=>o.remove&&o.remove(...e)),class:"remove-icon"},[...t[8]||(t[8]=[createElementVNode("i",{class:"fa fa-times"},null,-1)])]))],4)):createCommentVNode("v-if",!0),o.selected?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("span",{key:1,onClick:t[1]||(t[1]=(...e)=>o.search&&o.search(...e)),class:"search-icon"},[...t[9]||(t[9]=[createElementVNode("i",{class:"fa fa-xs fa-sync"},null,-1)])])),o.selected?createCommentVNode("v-if",!0):withDirectives((openBlock(),createElementBlock("input",{key:2,onKeyup:[t[2]||(t[2]=(...t)=>e.keyup&&e.keyup(...t)),t[3]||(t[3]=withKeys(withModifiers((...e)=>o.search&&o.search(...e),["stop","prevent"]),["enter"]))],class:normalizeClass(o.inputClass),onFocus:t[4]||(t[4]=e=>o.show=!0),disabled:l.disabled,placeholder:l.placeholder,"onUpdate:modelValue":t[5]||(t[5]=e=>o.query=e)},null,42,_hoisted_2$a)),[[vModelText,o.query]]),createVNode(Transition,{name:"fade",persisted:""},{default:withCtx(()=>[withDirectives(createElementVNode("div",{class:"v-resultpane",style:normalizeStyle({zIndex:2,width:"calc(100% - 2px)",position:l.floating?"absolute":"relative"})},[createElementVNode("div",_hoisted_3$7,[(openBlock(!0),createElementBlock(Fragment,null,renderList(o.data2,(t,l)=>(openBlock(),createElementBlock("div",{key:l,class:normalizeClass({"v-selected":o.selected==t,"v-focused":o.focused==l}),onClick:e=>o.setSelected(t)},[renderSlot(e.$slots,"default",{row:t})],10,_hoisted_4$6))),128)),e.data0&&e.data0.length<e.total?(openBlock(),createElementBlock("div",{key:0,class:"center",onClick:t[6]||(t[6]=e=>o.search(1))},"Load more "+toDisplayString(e.total-e.data0.length)+" results...",1)):createCommentVNode("v-if",!0)]),o.data2&&o.data2.length<1?(openBlock(),createElementBlock("div",_hoisted_5$1,"No results found.")):createCommentVNode("v-if",!0)],4),[[vShow,o.show&&!o.selected]])]),_:3})],40,_hoisted_1$j)}script$r.render=render$k,script$r.__scopeId="data-v-72884078",script$r.__file="src/v-autocomplete.vue";var script$q={name:"VButton",mounted(){var e=this,t=document.createElement("span"),l=document.createElement("i");t.className="ui-button-text ui-c ",t.innerHTML=e.$attrs.value?e.$attrs.value:"ui-button",e.$el.addEventListener("click",t=>{t.component=e}),e.$attrs.icon?(e.$attrs.value?e.$el.classList.add("v-button-text-icon-left"):e.$el.classList.add("v-button-icon-only"),l.dataset.icon=e.$attrs.icon,l.className="fa "+e.$attrs.icon,e.$el.appendChild(l)):(t=document.createElement("span"),e.$el.classList.add("ui-button-text-only"),e.$el.appendChild(t)),e.$attrs.value&&((t=document.createElement("span")).appendChild(document.createTextNode(e.$attrs.value)),e.$el.appendChild(t)),e.updateIcon()},methods:{updateIcon(){var e=this;setTimeout(function(){var t=e.$el.querySelector("svg");if(t){var l=t.dataset;l.icon||(l.icon=e.$attrs.icon)}},1e3)}}};const _hoisted_1$i={type:"button",class:"_ ui-widget ui-state-default ui-corner-all v-button"};function render$j(e,t,l,o,a,n){return openBlock(),createElementBlock("button",_hoisted_1$i)}script$q.render=render$j,script$q.__file="src/v-button.vue";var script$p={name:"VCalendar",props:{modelValue:null,type:String,required:String,readonly:String,max:String,min:String},setup(e,{emit:t}){const l=ref(null),o=e=>{t("update:modelValue",e),nextTick(()=>{t("changed",e)})},a=t=>{if(!t)return t;if("time"===e.type){const e=t.split(":");return new Date(1981,1,6,parseInt(e[0]),parseInt(e[1]),e.length>2?parseInt(e[2]):0)}if(!isNaN(t))return new Date(Number(t));if("datetime-local"===e.type){let e=t.split("T");const l=e[1].split(":");return e=e[0].split("-"),new Date(parseInt(e[0]),parseInt(e[1])-1,parseInt(e[2]),parseInt(l[0]),parseInt(l[1]),l.length>2?parseInt(l[2]):0)}const l=t.split("-"),o=parseInt(l[0]);return o<100?t:new Date(o,parseInt(l[1])-1,parseInt(l[2]))},n=t=>{if(!l.value)return;const o=a(t);let n="";o&&(n="string"==typeof o?o:"time"===e.type?pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):"datetime-local"===e.type?pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)+"T"+pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)),l.value.value=n};return watch(()=>e.modelValue,e=>{n(e)}),onMounted(()=>{n(e.modelValue)}),{enterD:n=>{const r=n.target.value;let s=a(r);return e.max&&s&&s.getTime()>=a(e.max).getTime()||e.min&&s&&s.getTime()<=a(e.min).getTime()?(t("invalid",{target:l.value,value:s}),void(n.target.value="")):void("time"===e.type?o(pad(s.getHours(),2)+":"+pad(s.getMinutes(),2)+":00"):s&&"function"==typeof s.getTime&&o(s.getTime()))},input:l}}};const _hoisted_1$h=["required","readonly","min","max","type"];function render$i(e,t,l,o,a,n){return openBlock(),createElementBlock("div",null,[createElementVNode("input",{ref:"input",required:l.required,readonly:l.readonly,min:l.min,max:l.max,type:l.type||"date",onChange:t[0]||(t[0]=(...e)=>o.enterD&&o.enterD(...e))},null,40,_hoisted_1$h)])}script$p.render=render$i,script$p.__file="src/v-calendar.vue";var script$o={name:"VCheckboxGroup",props:{modelValue:{type:[Array,String],default:void 0},required:String,name:String},emits:["update:modelValue"],setup(e,{emit:t}){const l=e.name||"input_"+id(),o=e=>Array.isArray(e)?[...e]:("string"==typeof e||e instanceof String)&&e?e.split("|"):[],a=computed(()=>void 0!==e.modelValue?o(e.modelValue):o(e.value)),n=e=>a.value.some(t=>t==e),r=(e,l)=>{const o=[...a.value];if(l){o.some(t=>t==e)||o.push(e)}else{const t=o.findIndex(t=>t==e);-1!==t&&o.splice(t,1)}t("update:modelValue",o)};return provide("v-checkbox-group",{name:l,isSelected:n,onChange:r}),{nam:l,onChange:r,isSelected:n}}};function render$h(e,t,l,o,a,n){return openBlock(),createElementBlock("div",null,[renderSlot(e.$slots,"default")])}script$o.render=render$h,script$o.__file="src/v-checkbox-group.vue";var script$n={name:"VCheckbox",props:{value:null,modelValue:null,valueFalse:null,label:null,readonly:null},emits:["update:modelValue","input","change"],setup(e,{emit:t}){const l=ref(null),o=inject("v-checkbox-group",null),a=computed(()=>o?o.isSelected(e.value):void 0!==e.modelValue?null!==e.value&&void 0!==e.value?e.modelValue==e.value:!!e.modelValue:e.value?e.value==e.vmodel:"true"===String(e.vmodel));return{input:l,group:o,checked:a,change:l=>{if(e.readonly)return;const a=l.target.checked;let n;o&&o.onChange(e.value,a),n=a?null===e.value||void 0===e.value||e.value:null!==e.valueFalse&&void 0!==e.valueFalse&&e.valueFalse,t("update:modelValue",n),t("change",n)},getLabel:()=>e.label?e.label:e.value&&"string"==typeof e.value?e.value:"",onClick:t=>{if(e.readonly)return t.preventDefault(),!1}}}};const _hoisted_1$g=["innerHTML"],_hoisted_2$9=["name","readonly","checked","value"];function render$g(e,t,l,o,a,n){return openBlock(),createElementBlock("label",{style:{"font-weight":"normal !important",display:"block"},class:"v-checkbox",onClick:t[2]||(t[2]=(...e)=>o.onClick&&o.onClick(...e))},[createElementVNode("span",{innerHTML:o.getLabel()},null,8,_hoisted_1$g),createElementVNode("input",{ref:"input",type:"checkbox",name:o.group?.name,readonly:!!l.readonly,checked:o.checked,value:l.value,onClick:t[0]||(t[0]=(...e)=>o.onClick&&o.onClick(...e)),onChange:t[1]||(t[1]=(...e)=>o.change&&o.change(...e))},null,40,_hoisted_2$9),t[3]||(t[3]=createElementVNode("span",{class:"checkmark"},null,-1))])}script$n.render=render$g,script$n.__file="src/v-checkbox.vue";var script$m={name:"VDataview",props:{value:Array,filterKey:String,src:String,filters:Object,store:null,itemWidth:null,rowKey:String,rowStyleClass:null,pagination:null,selectable:Boolean,scrollable:Boolean,autoload:{type:Boolean,default:!0}},data:function(){return{data:null,pages:1,page:1,columns:1,w:0,row:{},error:null,size:null,sortKey:"",selected:[],sortOrders:{},rowStyleClassFunc:null}},created(){var me=this;try{me.rowStyleClass&&(eval("me.rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}"),me.rowStyleClassFunc({},{},0))}catch(e){me.rowStyleClassFunc=null,console.log("Error en la expresion rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}")}},updated(){console.log("updated"),this.$emit("updated"),this.resize()},mounted(){var e=this;e.$el.addEventListener("parentResize2",e.resize),e.autoload&&e.load(),e.resize()},methods:{resize(){var e=this;if(e.itemWidth){var t=1+Math.trunc(e.$el.offsetWidth/Number(e.itemWidth));t>6&&(t=6),e.columns=t}},async getStoredList(e){let t=new Promise(t=>{var l=window._.db.transaction(e).objectStore(e).getAll();l.onsuccess=function(){t(l.result)}});return await t},async loadStore(){let e=this,t=e.store;if(null!=t){let l;return window._.db&&(l=await e.getStoredList(t)),l||(l=[]),e.data=e.data?l.concat(e.data):l,console.log("loadStore"),console.log(e.data),e.data}},getRowClass(e,t){var l=this,o=t%l.columns+1,a=["c-w-"+l.columns];return o==l.columns&&a.push("v-last"),l.rowStyleClassFunc?a.push(l.rowStyleClassFunc(e,e,t)):a.push(l.rowStyleClass),a},remove(e){e=e.id?e.id:e;var t=this.data,l=t.map(e=>e.id).indexOf(e);t.splice(l,1)},error2(e,t){this.data=[],this.error=t},load(e){var t=this;if(this.selected=[],t.value)t.data=t.value;else{!0===e&&(t.page=1);var l=t.src;l||(l=t.$root.apiLink(window.location.pathname)),l.endsWith("/")&&(l=l.slice(0,l.length-1)),t.pagination&&(l+="/"+(t.page-1)*t.pagination+"/"+t.pagination),axios.get(l,{error:t.error2,params:t.filters}).then(function(l){if(l.data&&l.data.error)MsgBox(l.data.error);else{var o=t.value?t.value:l.data.data?l.data.data:l.data;t.data||(t.data=[]),t.data=!0===e?o:t.data?t.data.concat(o):t.data,t.size=l.data.size,l.data&&l.data.size&&(t.pages=Math.ceil(l.data.size/t.pagination),t.page>t.pages&&(t.page=1)),t.$emit("loaded",{target:t,response:l})}}).catch(t.error)}}}};const _hoisted_1$f={class:"v-dataview"};function render$f(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$f,[e.data?(openBlock(!0),createElementBlock(Fragment,{key:0},renderList(e.data,(t,l)=>(openBlock(),createElementBlock("div",{class:normalizeClass(n.getRowClass(t,l))},[renderSlot(e.$slots,"default",{row:t,item:t,index:l})],2))),256)):createCommentVNode("v-if",!0),e.data&&!e.data.length?(openBlock(),createElementBlock("div",{key:1,class:normalizeClass(["center v-no-results",{error:e.error}])},toDisplayString(e.error?e.error:"No existen registros para mostrar"),3)):createCommentVNode("v-if",!0),e.data&&e.size>e.data.length?(openBlock(),createElementBlock("div",{key:2,onClick:t[0]||(t[0]=t=>n.load(e.page++)),class:"center v-more-results"},"Ver mas resultados")):createCommentVNode("v-if",!0)])}script$m.render=render$f,script$m.__file="src/v-dataview.vue";var script$l={name:"VFieldset",props:{legend:String,closable:null},watch:{closed(e){this.$emit("change",{target:this,closed:e}),this.$emit("input",!e)}},data:()=>({closed:!1}),created(){this.closed=this.closable},mounted(){var e=this;e.$el.addEventListener("parentResize",t=>{t.$target=e,e.$emit("resize",t)})},updated(){var e=this;setTimeout(function(){var t=e.$el.querySelector("legend > * > svg");if(t)try{console.log(),t.dataset.icon=t.parentNode.dataset.icon}catch(e){console.log("icon"),console.log(e)}},50)}};const _hoisted_1$e={class:"v-fieldset"},_hoisted_2$8=["data-icon"],_hoisted_3$6=["innerHTML"],_hoisted_4$5={style:{flex:"1",display:"flex","flex-direction":"column"}};function render$e(e,t,l,o,a,n){return openBlock(),createElementBlock("fieldset",_hoisted_1$e,[l.legend?(openBlock(),createElementBlock("legend",{key:0,onClick:t[0]||(t[0]=e=>a.closed=l.closable&&!a.closed),style:normalizeStyle({cursor:l.closable?"pointer":""})},[l.closable?(openBlock(),createElementBlock("span",{key:0,"data-icon":a.closed?"plus":"minus",style:{margin:"0px 5px 0px 0px"}},[createElementVNode("i",{class:normalizeClass([a.closed?"fa-plus":"fa-minus","fa"])},null,2)],8,_hoisted_2$8)):createCommentVNode("v-if",!0),createElementVNode("span",{innerHTML:l.legend},null,8,_hoisted_3$6)],4)):createCommentVNode("v-if",!0),withDirectives(createElementVNode("div",_hoisted_4$5,[renderSlot(e.$slots,"default")],512),[[vShow,!a.closed]])])}script$l.render=render$e,script$l.__file="src/v-fieldset.vue";var script$k={name:"VForm",props:["header","store","action"],setup(e,t){const{store:l}=e,{slots:o,expose:a}=t,n=ref(null),r=inject("viewCollector");return provide("formCollector",{get:()=>({...e})}),r.push({store:l,type:"v-form",$el:n,$forceUpdate:()=>{}}),a({...e}),()=>{const t=[];return e.header&&t.push(h$1("div",{class:"v-widget-header v-panel-titlebar"},[h$1("span",{class:"v-panel-title"},e.header)])),t.push(h$1("div",{ref:n,class:"v-dialog-content v-widget-content"},[h$1("form",{action:e.action},o.default())])),h$1("div",{class:"ui-panel"},t)}},watch:{header(e){this.setTitle(e)}},data:()=>({timer:null}),methods:{setTitle(e){var t=this.$parent.app;t&&setTimeout(()=>{t.title=e},100)},getAbsoluteHeight(e){var t=window.getComputedStyle(e),l=parseFloat(t.marginTop)+parseFloat(t.marginBottom);return Math.ceil(e.offsetHeight+l)}},mounted(){var e=this;e.$el.querySelector("form").addEventListener("submit",t=>{t.preventDefault();var l=e.$parent;return l.refresh&&l.refresh(),!1}),e.setTitle(e.header)},updated(){for(var e=this.$el.querySelectorAll("[type=number]:not(._)"),t=0;t<e.length;t++){var l=()=>{var e=this,t=e.value;if(t){t=n(t),e.max&&t>n(e.max)&&(t=n(e.max)),e.min&&t<n(e.min)&&(t=n(e.min));var l=this.getAttribute("decimal");null!==l&&(t=t.toFixed(1*l)),e.value=t}};e[t].oninput=l,e[t].onblur=l,e[t].classList?e[t].classList.add("_"):e[t].className="_"}e=this.$el.querySelectorAll(".numeric:not(._)");for(t=0;t<e.length;t++)e[t].addEventListener("keyup",e=>{86==e.keyCode&&isNaN(this.value)&&(this.value="")}),e[t].addEventListener("keydown",e=>{console.log("eeeeeee"+e.keyCode),-1!==[46,8,9,27,13,110,88,86].indexOf(e.keyCode)||65===e.keyCode&&(!0===e.ctrlKey||!0===e.metaKey)||e.keyCode>=35&&e.keyCode<=40||(e.shiftKey||e.keyCode<48||e.keyCode>57)&&(e.keyCode<96||e.keyCode>105)&&e.preventDefault()}),e[t].classList?e[t].classList.add("_"):e[t].className="_"},__file:"src/v-form.vue"},script$j={name:"VGroup",props:{required:String,name:String},data:()=>({value:null,nam:null}),updated(){this.update2()},mounted(){this.update2()},created(){this.nam||(this.nam=this.$props.name?this.$props.name:"input_"+window._.id())},methods:{getInputs(e,t){var l=this;return e.children&&Array.from(e.children).forEach(e=>{"INPUT"==e.tagName?t.push(e):e.classList.contains("v-group")||l.getInputs(e,t)}),t},update2(){for(var e=this.getInputs(this.$el,[]),t=0;t<e.length;t++)e[t].value==this.$attrs.value?e[t].checked=!0:e[t].checked=!1},onChange(e){this.value=e,""===e&&(e=null),this.$emit("input",e)}}};const _hoisted_1$d={class:"v-group"};function render$d(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$d,[renderSlot(e.$slots,"default")])}script$j.render=render$d,script$j.__file="src/v-group.vue";var script$i={name:"VLayerControl",data:()=>({loaded:null,map:null,district:null,dl:null}),setup({baseURL:e="https://web.regionancash.gob.pe"},{emit:t}){const l=ref(),o=inject("collector"),a=ref(),n=ref();let r,s;return o.push(o=>{(o=>{n.value=o;let i=new Collection;l.value=i;let c=document.createElement("i");c.setAttribute("class","fa fa-expand"),o.addControl(new FullScreen({label:c,tipLabel:"Fullscreen"}));let d=new VectorSource({url:e+"/fs/geo/02.geojson",format:new GeoJSON}),u=a.value=new VectorLayer({source:d,style:e=>new Style({fill:new Fill({color:"rgba(255, 0, 0, 0.0)"}),stroke:new Stroke({color:"#4073CE",width:1}),text:new Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new Fill({color:"#4073CE"}),stroke:new Stroke({color:"#4073CE",width:.5})})}),id:"provinces"});u.onChange=e=>{let t=e.feature;s!=t.getId()&&(i.clear(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:200,callback:()=>{}}))};let p=d.on("change",()=>{let e,t=d.getFeatures();for(let l=0;l<t.length;l++)if(1*t[l].id_==1*e){u.onChange({feature:t[l]});break}unByKey(p)}),m=new VectorLayer({preload:1/0,source:new VectorSource,id:"districts",style:e=>new Style({fill:new Fill({color:"rgba(16, 110, 138, 0.0)"}),stroke:new Stroke({color:"#194300",width:1}),text:new Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new Fill({color:"#194300"}),stroke:new Stroke({color:"#194300",width:.5})})})});o.on("moveend",()=>{if(r){if(r.id_<1e4){m.setSource(new VectorSource({url:e+"/fs/geo/"+r.id_+".geojson",format:new GeoJSON}));let t=m.getSource().on("change",()=>{unByKey(t)})}t("scope",{feature:r,target:{}}),r=null}}),u.onSelect=e=>{me.$emit("select",e)},o.addLayer(u),o.addLayer(new VectorLayer({id:"district",source:new VectorSource,style:new Style({fill:new Fill({color:"rgba(255, 150, 150, 0.0)"}),stroke:new Stroke({color:"#4073CE",width:1})})})),new Style({fill:new Fill({color:"rgba(16, 110, 138, 5.0)"})}),new Style({fill:new Fill({color:"rgba(255, 150, 150, 0.0)"})}),m.onChange=e=>{let t=e.feature;s!=t.getId()&&(2==i.getLength()&&i.pop(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:300}))},m.onSelect=e=>{t("select",e)},o.addLayer(m),t("render",{map:o})})(o)}),{}}};function render$c(e,t,l,o,a,n){return openBlock(),createElementBlock("div",null,[renderSlot(e.$slots,"default")])}script$i.render=render$c,script$i.__file="src/v-layer-control.vue";var script$h={name:"VMapControl",setup(e,{emit:t}){const{visible:l}=e,o=ref(null),a=ref(!!l),n=inject("collector"),r=ref(null);n.push(e=>{e.addControl(new Control({element:o.value})),r.value=!0});const s=ref();return{el:o,ready:r,visible0:a,enter:e=>{e.stopPropagation(),s.value?clearTimeout(s.value):t("click",e),s.value=setTimeout(()=>{s.value=null},500)}}},props:{icon:String,visible:{default:1}},computed:{slotPassed(){return!!this.$slots.default}},data:()=>({slotUsed:!1}),updated(){var e=this.$el.querySelectorAll(":scope > :not(.v-map-control-button)").length;0==e&&(e=this.$el.textContent.trim().length),this.slotUsed=e},methods:{toggle(){this.visible0=!this.visible0}}};const _hoisted_1$c={ref:"el",class:"ol-unselectable ol-control"};function render$b(e,t,l,o,a,n){return withDirectives((openBlock(),createElementBlock("div",_hoisted_1$c,[renderSlot(e.$slots,"default"),a.slotUsed?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("button",{key:0,class:"v-map-control-button",onClick:t[0]||(t[0]=withModifiers((...e)=>o.enter&&o.enter(...e),["prevent"]))},[l.icon?(openBlock(),createElementBlock("i",{key:0,class:normalizeClass(["fa fa-xs",l.icon])},null,2)):createCommentVNode("v-if",!0)]))],512)),[[vShow,o.ready&&!0]])}script$h.render=render$b,script$h.__file="src/v-map-control.vue";class Drag extends PointerInteraction{constructor(){super({handleDownEvent:handleDownEvent,handleDragEvent:handleDragEvent,handleMoveEvent:handleMoveEvent,handleUpEvent:handleUpEvent}),this.layers_=[],this.coordinate_=null,this.listeners_=[],this.cursor_="pointer",this.feature_=null,this.previousCursor_=void 0}addLayers(e){e.forEach(e=>{this.layers_.push(e)})}$on(e,t){this.listeners_.push(t)}}function handleDownEvent(e){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return[e,t]});return o&&(this.coordinate_=e.coordinate,this.feature_=o[0]),!!o}function handleDragEvent(e){const t=e.coordinate[0]-this.coordinate_[0],l=e.coordinate[1]-this.coordinate_[1];this.feature_.getGeometry().translate(t,l),this.coordinate_[0]=e.coordinate[0],this.coordinate_[1]=e.coordinate[1]}function handleMoveEvent(e){if(this.cursor_){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return e}),a=e.map.getTargetElement();o?a.style.cursor!=this.cursor_&&(this.previousCursor_=a.style.cursor,a.style.cursor=this.cursor_):void 0!==this.previousCursor_&&(a.style.cursor=this.previousCursor_,this.previousCursor_=void 0)}}function handleUpEvent(){return this.listeners_.forEach(e=>{e({feature:this.feature,coordinate:this.coordinate_})}),this.coordinate_=null,this.feature_=null,!1}var script$g={name:"VMap",setup(e,{emit:t,expose:l}){const o=ref(null),a=ref(null),n=ref(null),r=ref(null),s=reactive([]);provide("collector",{remove(e){s.splice(s.indexOf(e),1)},push(e){s.push(e)}});const i=e=>{a.value.addLayer(e),t("addlayer",e)},c=(e,l)=>{let o,n;e=e||{};const r=a.value;e.lon&&e.lat?(n=[e.lon,e.lat],o=new Point(n[0]>-100?fromLonLat(n):n)):o=new Point(r.getView().getCenter()),n=o.flatCoordinates;const s=n[0]<-1e4?toLonLat(n):n;t("translateend",{lon:s[0],lat:s[1]}),e.geometry=o;const i=new Feature(e);i.data=e,"object"==typeof e.style?i.setStyle(e.style):i.setStyle(r.styleMap[e.style?e.style:"default"]),n=o.flatCoordinates,n=n[0]<-1e4?toLonLat(n):n,t("translateend",{lon:n[0],lat:n[1]});const c=e.layer||"default";let d=r.getLayerById(c);if(d?d.getSource().addFeatures(i):r.addLayer(d=new VectorLayer({id:c,source:new VectorSource({features:new Collection([i])})})),e.draggable){let e=r.drag;e||(r.drag=e=new Drag,e.$on("up",({coordinate:e,feature:l})=>{const o=toLonLat(e);t("translateend",{lon:o[0],lat:o[1],feature:l})}),r.addInteraction(e),e.addLayers([d]))}return l&&r.getView().animate(Object.assign({center:i.getGeometry().getCoordinates(),zoom:17,duration:500},l)),i},d=e=>{const l={default:new Style({image:new Circle({radius:8,stroke:new Stroke({color:"#8a0000",width:2}),fill:new Fill({color:"#ff0000"})})}),star:[new Style({image:new RegularShape({fill:new Fill({color:"#ff0000"}),stroke:new Stroke({color:"#8a0000",width:2}),points:5,radius:10,radius2:4,angle:0})})]};let o=((e,t)=>{t||(t=window.location.href);const l=new RegExp("[?&]"+e+"=([^&#]*)").exec(t);return l&&l[1]||0})("location"),i=-1;if(o){let e=o.split("/");o=[parseFloat(e[0]),parseFloat(e[1])],i=e[2],n.value=!0}else o=!1;const d=new Map({target:e,layers:[new Tile({source:new OSM})],view:new View({center:[0,0],zoom:2})});d.getLayerById=function(e="default"){let t;return d.getLayers().forEach(l=>{l.get("id")!==e||(t=l)}),t},d.styleMap=l,n.value?(d.getView().setCenter(o),console.log("en el momento de cargar moved to pageLocation="+o),d.getView().setZoom(i||12),a.value=d,console.log("distarar evento buid pageLocation="+o),t("build",m)):(d.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],d.getSize()),a.value=d,t("build",{map:d}),s.forEach(e=>{e(d)})),d.getView().getZoom(),d.on("moveend",()=>{r.value&&(r.value(m),r.value=null),d.getView().getZoom()}),d.on("singleclick",e=>{let t=d.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(t){let l=t[1],o=t[0];if(e.feature=o,e.map=d,e.preventDefault(),l.onSelect)return void l.onSelect(e)}}),d.on("dblclick",e=>{let l=d.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(l){let o=l[1];if(l=l[0],e.feature=l,e.map=d,o.onChange)return void o.onChange(e);t("change",l),d.getView().animate({center:l.getGeometry().getCoordinates(),zoom:17,duration:500},()=>{for(let t=0;t<m.$children.length;t++){let t=m.$children[0];t.open&&t.open(e)}})}}),a.value=d,setTimeout(()=>{d.updateSize(),d.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],d.getSize()),a.value=d,t("build",{map:d,addFeature:c})},100)};return watch(o,e=>{e&&nextTick(()=>{t("beforeBuild"),d(e)})}),l({addFeature:c,addLayer:i,map:a,empty:(e="default")=>{if(e=a.value.getLayerById(e)){const t=e.getSource();if(t instanceof VectorSource){return 0===t.getFeatures().length}}return!0}}),{el:o,addLayer:i,addFeature:c}},data:()=>({moved:!1,map:null,movingCompleted:null,styleMap:null,coordinate:{}})};const _hoisted_1$b={ref:"el"};function render$a(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$b,[renderSlot(e.$slots,"default")],512)}script$g.render=render$a,script$g.__file="src/v-map.vue";var script$f={name:"VNumber",props:{value:Number,max:Number,min:Number,delay:Number},setup(e,t){const{emit:l}=t,o=ref(null);onMounted(()=>{o.value=e.value}),onUpdated(()=>{o.value=t.attrs.modelValue});return{v:o,handleInput:t=>{let a=o.value;const n=t.target.getAttribute("decimal");null!==a?(a=num(a),e.max&&a>num(e.max)&&(a=num(e.max)),e.min&&a<num(e.min)&&(a=num(e.min)),null!==n&&(a=a.toFixed(Number(n)))):a=null,o.value=t.target.value;let r=_$1.calendarTimer;r&&clearTimeout(r),e.delay?_$1.calendarTimer=setTimeout(()=>{l("input",a),_$1.calendarTimer=null},13===t.keyCode?0:e.delay):l("input",a)}}}};function render$9(e,t,l,o,a,n){return withDirectives((openBlock(),createElementBlock("input",{type:"number",onKeyup:t[0]||(t[0]=withKeys((...e)=>o.handleInput&&o.handleInput(...e),["enter"])),"onUpdate:modelValue":t[1]||(t[1]=e=>o.v=e),onInput:t[2]||(t[2]=(...e)=>o.handleInput&&o.handleInput(...e)),class:"_"},null,544)),[[vModelText,o.v,void 0,{number:!0}]])}script$f.render=render$9,script$f.__file="src/v-number.vue";var script$e={setup(e,t){const l=e,{valueField:o,displayField:a,store:n,name:r,src:s}=l,i=toRef(e,"filter"),c=useAppStore(),{expose:d,emit:u}=t,p=ref([]),m=ref([]),v=ref([]),h=ref(null),f=inject("collect");o&&(v.value=o.split("."));const g=computed(()=>{const e=(l.data||[]).concat(m.value||[]),t=i.value;return t?"string"==typeof t?e.filter(e=>JSON.stringify(e).toLowerCase().includes(t.toLowerCase())):"object"==typeof t?e.filter(e=>Object.entries(t).every(([t,l])=>null==l||""===l||String(e[t]??"").toLowerCase().includes(String(l).toLowerCase()))):e:e});watch(g,e=>{});const y=(e,t)=>{const l=v.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};let $=o,b=a;b||(b=$);const w=async(e=null,t=null,o=!1)=>{if(!o&&t&&e&&p.value.push([e,t]),!(p.value.length>1)){if(m.value=[],n){const t=await getStoredList(n);console.log(n,e),e&&Object.keys(e).length?m.value=t.filter(t=>Object.entries(e).every(([e,l])=>String(t[e]??"").startsWith(l))):m.value.push(...t)}for(s&&(l.filters&&(e=mergeDeep(e||{},l.filters)),r&&console.log(r+".options.load ",JSON.stringify(e)),await c.axios.get(s,{params:e}).then(e=>{let o=e.data.data?e.data.data:e.data;u("loaded",{target:l,data:o}),m.value=m.value.concat(o),f(m),h.value=1,t&&t()}).catch(l.error)),f(g),o||p.value.shift();p.value.length;){const e=p.value.shift()||[];await w(e[0],e[1],!0)}}};return w.getObjectByIndex=e=>{const t=g.value;return t?t[e]:null},w.getValueByIndex=e=>{const t=g.value;return t?y(t[e],1):null},w.getIndexByValue=(e,t)=>{e&&e.id?e=e.id:e&&e.code&&(e=e.code);for(let l=0;l<g.value.length;l++){const o=g.value[l];if(y(o)==e)return t&&t(l,o),l}return t&&t(-1),-1},f.push(w),onUpdated(()=>{f((l.data||[]).concat(m.value))}),onUnmounted(()=>{f.remove(w)}),d({load:w}),{filterList:g,getValueField:y,vf:$,df:b}},name:"VOptions",props:{url:String,src:String,name:String,displayField:String,data:Array,store:null,valueField:String,filters:null,filter:null,mode:null},updated(){let e=this;!e.loaded&&e.data&&(e.data2=e.data)},methods:{getParentE(){return this.$el.parentElement.parentElement},getSelectedItem(){let e=this.$el.parentElement;return this.filterList[e.selectedIndex-1]}}};const _hoisted_1$a=["value"];function render$8(e,t,l,o,a,n){return openBlock(!0),createElementBlock(Fragment,null,renderList(o.filterList,(t,l)=>(openBlock(),createElementBlock("option",{key:l,value:o.vf?o.getValueField(t):t.id||t.code||JSON.stringify(t)},[renderSlot(e.$slots,"default",{item:t},()=>[createTextVNode(toDisplayString(o.df?t[o.df]:t),1)])],8,_hoisted_1$a))),128)}script$e.render=render$8,script$e.__file="src/v-options.vue";var ol=window.ol,_=window._,axios$1=window.axios,script$d={name:"VOverlay",props:{value:{value:Object},src:String,width:{default:400},header:String},data:()=>({coordinate:null,overlay:null,location:null,ele:null,c:0}),created(){var e=this;e.$parent.$on("beforeBuild",t=>{console.log(t),e.overlay=new ol.Overlay({element:e.$el,positioning:"bottom-right"})}),e.$parent.$on("build",t=>{t.map.addOverlay(e.overlay)})},mounted(){var e=this;e.header&&e.$el.childNodes[0].addEventListener("mousedown",function(t){const l=e.$el.parentElement;var o=window.getComputedStyle(l),a=parseFloat(o.left),n=parseFloat(o.top),r=t.clientX,s=t.clientY,i=l.parentElement;function c(e){l.style.left=a+e.clientX-r+"px",l.style.top=n+e.clientY-s+"px"}i.addEventListener("mousemove",c,!1),i.addEventListener("mouseup",function(){i.removeEventListener("mousemove",c,!1)},!1)},!1)},methods:{close(){this.overlay&&this.overlay.setPosition()},hasSlot(e="default"){return!!this.$slots[e]||!!this.$scopedSlots[e]},load(){var e=this;axios$1.get(_.remoteServer+e.src).then(t=>{e.$emit("input",t.data)})},open(e){for(var t=this,l=e.map,o=e.feature,a=t.overlay,n=a.element,r=t.$parent.$children,s=0;s<r.length;s++)r[s].close&&(r[s].$el.style.opacity=0,r[s].close());e.coordinate?t.coordinate=e.coordinate:(e.coordinate=l.getView().getCenter(),t.coordinate=null),a.setPosition(e.coordinate);var i=l.getView().getCenter(),c=l.getView().getResolution(),d=o?o.getGeometry().getCoordinates():[null],u=l.getPixelFromCoordinate(Number(d[0])?d:e.coordinate);if(this.src)axios$1.get(_.remoteServer+this.src).then(e=>{t.$emit("input",e.data),t.c++,setTimeout(function(){var e=l.viewport_.offsetWidth,o=l.viewport_.offsetHeight,r=n.children[0].children[1];r.scrollTop=0;var s=n.offsetHeight;r.style.height=s+100>=o?o-100-n.children[0].children[0].offsetHeight+"px":"300px",s=n.offsetHeight;var d=1*t.width,p=e<=d+40?e-40:d;if(n.style.zIndex=10,n.style.width=p+"px",p/=2,l.getView().animate({center:[i[0]+(u[0]+p+20>=e?+(u[0]+p+20-e):u[0]-20-p<0?-p+u[0]-20:0)*c,i[1]+(u[1]<s?s-u[1]:0)*c],duration:500}),u[0]=u[0]+p-0,u[1]=u[1]-12,a.setPosition(l.getCoordinateFromPixel(u)),t.$el.style.opacity=1,_.mobil)for(var m=a.getElement().querySelectorAll("a:not(._)"),v=0;v<m.length;v++)m[v].addEventListener("click",_.open2)},400)}).catch(e=>{console.log(e)});else{var p=l.viewport_.offsetWidth,m=l.viewport_.offsetHeight,v=n.children[0].children[1];v.scrollTop=0;var h=n.offsetHeight;console.log(n.offsetHeight),v.style.height=h+100>=m?m-100-n.children[0].children[0].offsetHeight+"px":"300px",h=n.offsetHeight;var f=1*t.width,g=p<=f+40?p-40:f;if(n.style.zIndex=10,n.style.width=g+"px",g/=2,l.getView().animate({center:[i[0]+(u[0]+g+20>=p?+(u[0]+g+20-p):u[0]-20-g<0?-g+u[0]-20:0)*c,i[1]+(u[1]<h?h-u[1]:0)*c],duration:500}),u[0]=u[0]+g-0,u[1]=u[1]-12,a.setPosition(l.getCoordinateFromPixel(u)),t.$el.parentNode.style.opacity=0,t.$el.style.opacity=1,t.$el.parentNode.style.top=(m-t.$el.offsetHeight)/2+"px",t.$el.parentNode.style.opacity=1,_.mobil){var y=a.getElement().querySelectorAll("a:not(._)");for(s=0;s<y.length;s++)y[s].addEventListener("click",_.open2)}t.$emit("opened",{target:t})}}}};const _hoisted_1$9={class:"v-ol-overlay"},_hoisted_2$7={key:0,class:"v-panel-titlebar"},_hoisted_3$5={key:2,style:{"text-align":"center"}};function render$7(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$9,[l.header?(openBlock(),createElementBlock("div",_hoisted_2$7,[createElementVNode("span",{class:"v-icon v-icon-close",onClick:t[0]||(t[0]=(...e)=>n.close&&n.close(...e))},[...t[1]||(t[1]=[createElementVNode("i",{class:"fa fa-times"},null,-1)])]),createTextVNode(toDisplayString(l.header),1)])):createCommentVNode("v-if",!0),(openBlock(),createElementBlock("div",{class:"v-ol-body",key:"c-"+a.c,style:{padding:"10px"}},[l.value?renderSlot(e.$slots,"default",{key:0,value:l.value}):createCommentVNode("v-if",!0)])),n.hasSlot("footer")&&l.value?(openBlock(),createElementBlock("footer",{key:"f-"+a.c},[renderSlot(e.$slots,"footer",{value:l.value})])):createCommentVNode("v-if",!0),a.coordinate?(openBlock(),createElementBlock("div",_hoisted_3$5,[...t[2]||(t[2]=[createElementVNode("img",{src:_imports_0,width:"20",height:"18"},null,-1)])])):createCommentVNode("v-if",!0)])}script$d.render=render$7,script$d.__file="src/v-overlay.vue";var script$c={name:"VPanel",props:{header:String}};const _hoisted_1$8={class:"ui-panel"},_hoisted_2$6={key:0,class:"v-panel-titlebar v-widget-header ui-helper-clearfix ui-corner-all"},_hoisted_3$4={class:"v-panel-title"},_hoisted_4$4={class:"v-panel-content v-dialog-content v-widget-content"};function render$6(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$8,[l.header?(openBlock(),createElementBlock("div",_hoisted_2$6,[createElementVNode("span",_hoisted_3$4,toDisplayString(l.header),1)])):createCommentVNode("v-if",!0),createElementVNode("div",_hoisted_4$4,[renderSlot(e.$slots,"default")])])}script$c.render=render$6,script$c.__file="src/v-panel.vue";var script$b={__name:"v-popup",props:{width:{type:String,default:"600px"},name:{type:String,default:null}},emits:["success","close"],setup(e,{expose:t,emit:l}){const o=e,a=l,n=useRouter(),r=ref(!1),s=shallowRef(null),i=ref({}),c=inject("viewCollector"),d=inject("refresh",null),u=async(e=null,t=null)=>{if(!e)return s.value=null,i.value=t??{},void(r.value=!0);const l=await(async e=>{let t=n.getRoutes().find(t=>t.name===e),l={};if(!t){const o=n.resolve(e);t=o.matched.at(-1),l=o.params}if(!t)throw new Error(`No existe la ruta "${e}"`);let o=t.components?.default??t.component;if(!o)throw new Error(`La ruta "${e}" no tiene componente`);if("function"==typeof o){const e=await o();o=e.default??e}return{component:o,params:l}})(e);s.value=l.component,i.value={...l.params,...t??{}},r.value=!0},p=e=>{r.value=!1,a("close",e),s.value=null},m=async(e=null)=>{e?.success&&d?.(),p(e)};return c.push({open:u,props:o,type:"v-popup"}),t({open:u,close:p}),(t,l)=>(openBlock(),createBlock(Teleport,{to:"body"},[r.value?(openBlock(),createElementBlock("div",{key:0,class:"popup-overlay",onClick:withModifiers(p,["self"])},[createElementVNode("div",{class:"popup",style:normalizeStyle({width:e.width})},[createElementVNode("button",{type:"button",class:"popup-close",onClick:p}," ✕ "),createCommentVNode(" Componente cargado por ruta "),s.value?(openBlock(),createBlock(resolveDynamicComponent(s.value),mergeProps({key:0},i.value,{callback:m}),null,16)):(openBlock(),createElementBlock(Fragment,{key:1},[createCommentVNode(" Si no hay componente, mostrar slot "),renderSlot(t.$slots,"default",{close:p,callback:m})],2112))],4)])):createCommentVNode("v-if",!0)]))},__file:"src/v-popup.vue"},script$a={name:"VRadio",props:{value:String,label:String,className:String},methods:{getClass(){return"v-radio "+this.className}},mounted(){var e=this,t=e.$el.querySelector("input");e.$parent&&e.$parent.nam&&(t.name=e.$parent.nam),t.onclick=function(){}},updated(){this.$el.querySelector("input")}};const _hoisted_1$7=["value"];function render$5(e,t,l,o,a,n){return openBlock(),createElementBlock("label",{class:normalizeClass(n.getClass())},[createTextVNode(toDisplayString(l.label?l.label:l.value)+" ",1),createElementVNode("input",{type:"radio",value:l.value},null,8,_hoisted_1$7),t[0]||(t[0]=createElementVNode("span",{class:"checkmark"},null,-1)),renderSlot(e.$slots,"default")],2)}script$a.render=render$5,script$a.__file="src/v-radio.vue";var script$9={__name:"v-radio-group",props:{required:String,name:String,modelValue:String,items:{type:Array},type:{type:String,default:"radio"},label:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=ref(l.modelValue),{proxy:n}=getCurrentInstance(),r=new Set,s=(e,t)=>(e.children&&Array.from(e.children).forEach(e=>{"INPUT"===e.tagName?t.push(e):e.classList&&e.classList.contains("v-group")||s(e,t)}),t),i=()=>{const e=s(n.$el,[]);let t=l.name;t||(t="input_"+Date.now().toString(36)+Math.random().toString(36).substring(2,15));const o=""===n.$props.required||n.$props.required;let i=!1;for(let l=0;l<e.length;l++)e[l].name=t,r.has(e[l])||(e[l].addEventListener("change",c),r.add(e[l])),e[l].checked=null!=a.value&&e[l].value===String(a.value),e[l].checked&&(i=!0),e[l].required=o,o&&(a.value?e[l].nextElementSibling.classList.remove("required"):e[l].nextElementSibling.classList.add("required"));i&&removeError(e[0].parentNode.parentNode)},c=e=>{let t=e.target.value;""===t&&(t=null),a.value=t,o("update:modelValue",t)};watch(()=>l.modelValue,e=>{a.value=e,i()}),onMounted(()=>{i()}),onUpdated(()=>{i()});const d=()=>{const e=[];return n.$slots.default&&e.push(...n.$slots.default()),l.items&&e.push(...l.items.map(e=>h$1(script$a,{className:l.required&&!l.modelValue?"required":null,...e,modelValue:a.value,"onUpdate:modelValue":c}))),h$1("div",{class:"v-radio-group"},[l.label&&h$1("label",l.label),...e])};return(e,t)=>(openBlock(),createBlock(d))},__file:"src/v-radio-group.vue"},script$8={name:"VSelect",setup(e,t){const{slots:l,emit:o}=t,{valueField:a,disabled:n,readonly:r,autoload:s,name:i}=e,c=ref([]),d=ref([]),u=ref(null),p=ref([]),m=[],v=ref(!(s+""=="false"||1*s==0)),h=ref(null),f=e=>{null!=e&&""!==e?Array.isArray(e)?_.value=[...e]:_.value=String(e).split(","):_.value=[]},g=t=>{const l=unref(t)||[];c.value=Array.isArray(l)?l.filter(e=>null!=e):[],nextTick(()=>{e.multiple?f(e.modelValue):y(e.modelValue||u.value)})},y=t=>{let l=t||e.modelValue;if(h.value){let t=h.value,a=t.selectedIndex;l&&""!==l||(t.selectedIndex=0),log(i,"value===",l);const n=l?""+(l.id||l.code||l):l;for(let e=0;e<t.length;e++)t[e].value===n&&(t.selectedIndex=e);const r=m;for(let n=0;n<r.length;n++){if(!r[n].getValueByIndex)continue;let s=r[n].getValueByIndex(a-1);r[n].getIndexByValue(l,(a,d)=>{if(a>-1){let d=r[n].getObjectByIndex(a),p=Number(s);p=isNaN(p)?s?!!l&&(l.id?l.id==s.id:l==s):!l:p==Number(l),u.value!=e.modelValue&&(log(i,"select.value",l,"object=",d),e.modelValue&&(u.value=e.modelValue),p||(log(i,"select.updateSelect="+l+" "+JSON.stringify(c.value.length)),t.selectedIndex=a+1,o("update:modelValue",l,{value:l,select:t,object:d}),nextTick(()=>{o("input",l,{value:l,select:t,object:d})})))}else e.modelValue&&(u.value=e.modelValue),log(i,"select.updateselect.not fout",a),o("update:modelValue",null,null),nextTick(()=>{o("input",null,{value:null})}),t.selectedIndex=0})}}};g.remove=e=>{const t=m.filter(t=>t!==e);m.length=0,t.forEach(e=>m.push(e))},g.push=e=>{m.push(e)},a&&(d.value=a.split(".")),provide("collect",g);const $=(e,t)=>{const l=d.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};watch(()=>e.modelValue,(t,l)=>{t!=l&&(e.multiple?f(t):y())}),watch(()=>e.disabled,(e,t)=>{b(e,t)});const b=(e,t)=>{e=!!e,t=!!t;let l=p.value;log(i,"activate.newVal=",e,"oldVal=",t),!e&&!e===t&&l.length&&w(l[0],l[1])},w=(t,l)=>{e.disabled?(log(i,"select.load.params=",t),p.value=[t,l],m.forEach(e=>{e(t,l)})):(p.value=[],m.forEach(e=>{e(t,l)}))};onMounted(()=>{v.value&&w()});const k=ref(!1),_=ref([]),S=ref(!1),x=ref(""),V=()=>{k.value=!1},E=()=>{const e=[..._.value].map(String).sort(),t=[...x.value].map(String).sort();if(e.length!==t.length||e.some((e,l)=>e!==t[l])){const t=e.length?e.join(","):null;o("update:modelValue",t)}V()},C=()=>{_.value&&_.value.length&&_.value.join(","),console.log(_)};return{options:c,getValueField:$,onChange:e=>{e.stopPropagation();let t=e.target.value;const l=h.value;log(i,"select.onchange=",t),t&&""!==t||(t=null,l.selectedIndex=0);let a,n=0;const r=c.value;for(let e=0;e<m.length;e++){if(n=m[e].getValueByIndex(l.selectedIndex-1),-1!=n){a=m[e].getObjectByIndex(l.selectedIndex-1);break}n=0}n?(log(i,"change=found=",n),t=n):r.length&&(l.selectedIndex=0),o("update:modelValue",t,{value:t,select:l,object:a}),nextTick(()=>{o("input",t,{value:t,select:l,object:a})})},selectRef:h,load:w,lastLoad:p,autoload_:v,expand:t=>{if(e.readonly)return t.preventDefault(),!1},show:k,sel:_,sela:S,toggle:()=>{k.value||(x.value=[..._.value]),k.value=!k.value,k.value||E()},close:V,apply:E,selectAll:e=>{console.log("selectAll.checked=",e),_.value=e?c.value.map(e=>$(e)):[],C()},checkboxInput:C}},props:{modelValue:null,required:null,readonly:null,multiple:null,label:null,name:null,disabled:null,autoload:null,valueField:null},data:()=>({data:[],popup:null,tmp:[],sel2:[]}),watch:{show(e){if(e){let e=this.$refs.button,t=this.popup;t||(t=this.$refs.popup,t.style.position="absolute",document.body.append(t));let l=e.getBoundingClientRect();const o=t.children[0];window.innerWidth<400?(t.style.padding="40px",t.style.height="100%",o.style.height="100%"):(t.style.top=l.bottom+0+"px",t.style.left=l.left+0+"px",t.style.maxHeight=window.innerHeight-l.bottom-30+"px",o.style.maxHeight=t.style.maxHeight),o.style.display="flex",o.style.flexDirection="column"}}}};const _hoisted_1$6={class:"v-select",style:{position:"relative"}},_hoisted_2$5=["required","disabled","click"],_hoisted_3$3={ref:"popup",class:"v-popup"},_hoisted_4$3={class:"center"};function render$4(e,t,l,o,a,n){const r=resolveComponent("v-checkbox"),s=resolveComponent("v-checkbox-group"),i=resolveComponent("v-button");return openBlock(),createElementBlock("div",_hoisted_1$6,[l.readonly?createCommentVNode("v-if",!0):withDirectives((openBlock(),createElementBlock("select",{key:0,style:{width:"100%"},ref:"selectRef",onChange:t[0]||(t[0]=(...e)=>o.onChange&&o.onChange(...e)),required:l.required,disabled:l.disabled,click:o.expand},[renderSlot(e.$slots,"default")],40,_hoisted_2$5)),[[vShow,!l.multiple]]),l.multiple?(openBlock(),createElementBlock(Fragment,{key:1},[createElementVNode("div",{class:normalizeClass(["v-widget-header v-button v-filter",{"v-selected":o.show||o.sel.length}]),ref:"button",style:{"padding-top":"7px","padding-bottom":"7px"},onClick:t[1]||(t[1]=(...e)=>o.toggle&&o.toggle(...e))},[o.sel.length?(openBlock(),createElementBlock(Fragment,{key:0},[createTextVNode(" ("+toDisplayString(o.sel.length)+") ",1)],64)):createCommentVNode("v-if",!0),t[4]||(t[4]=createTextVNode("   ",-1))],2),withDirectives(createElementVNode("div",_hoisted_3$3,[createElementVNode("div",null,[createElementVNode("div",null,[createVNode(r,{modelValue:o.sela,"onUpdate:modelValue":t[2]||(t[2]=e=>o.sela=e),onChange:o.selectAll},null,8,["modelValue","onChange"])]),createVNode(s,{class:"v-select-checkbox-group",style:{"overflow-y":"auto"},modelValue:o.sel,"onUpdate:modelValue":t[3]||(t[3]=e=>o.sel=e),onInput:o.checkboxInput},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(o.options,e=>(openBlock(),createBlock(r,{value:e.id,label:e.name},null,8,["value","label"]))),256))]),_:1},8,["modelValue","onInput"]),createElementVNode("div",_hoisted_4$3,[createVNode(i,{icon:"fa-sync",value:"Filtrar",onClick:o.apply},null,8,["onClick"])])])],512),[[vShow,o.show]])],64)):createCommentVNode("v-if",!0),l.readonly?(openBlock(),createElementBlock(Fragment,{key:2},[createTextVNode(toDisplayString(l.label?l.label:"---"),1)],64)):createCommentVNode("v-if",!0)])}script$8.render=render$4,script$8.__file="src/v-select.vue";var script$7={name:"VSwitch",props:{modelValue:{type:Boolean,default:null}},emits:["update:modelValue"],data:()=>({options:["NO","SI"]}),computed:{selected(){return!0===this.modelValue?"SI":!1===this.modelValue?"NO":null}},methods:{onChange(e){this.$emit("update:modelValue","SI"===e||"NO"!==e&&null)}}};const _hoisted_1$5=["data-value"],_hoisted_2$4=["onClick"];function render$3(e,t,l,o,a,n){return openBlock(),createElementBlock("div",{class:"v-switch","data-value":String(l.modelValue)},[(openBlock(!0),createElementBlock(Fragment,null,renderList(a.options,e=>(openBlock(),createElementBlock("div",{key:e,onClick:t=>n.onChange(e),class:normalizeClass({"v-selected":e===n.selected})},toDisplayString(e),11,_hoisted_2$4))),128))],8,_hoisted_1$5)}script$7.render=render$3,script$7.__file="src/v-switch.vue";var script$6={name:"VTable",emits:["dblclick","row-select","loaded"],setup(e,t){const{autoload:l,src:o,rowKey:a="id",store:n,groups:r}=e,s=useAppStore(),i=inject("viewCollector"),c=inject("formCollector"),d=ref(1),u=ref(0),p=ref(null),m=ref(1),v=ref([]),h=ref([]),f=ref(null),g=ref(1),y=computed(()=>{const t=e,l=h.value;let o,a;return l.sum=sum,l.filter(e=>{for(var l in t.filters)if(o=t.filters[l],"function"==typeof o){if(!o(e))return 0}else if(o&&"string"==typeof o&&l in e&&(a=e[l],"string"==typeof a&&(a=a.toUpperCase().normalize("NFD").replace(/[\u0300-\u036f]/g,""),!a.includes(o.toUpperCase()))))return 0;return 1})}),$=computed(()=>{let e=y.value;return e=f?e.sort((e,t)=>{t=(t=t[f])||0,e=e[f];const l=Number(e);return l&&(e=l),e<t?-1*g:e>t?1*g:0}):e,e.sum=sum,e}),b=computed(()=>{const e=function(e){return this.reduce((t,l)=>"number"==typeof e||"string"==typeof e?t+(l[e]||0):t,0)};Array.prototype.sum=e;const t={},l=r;return l?$.value.forEach(o=>{const a=o[l];if(!t[a]){const l=[];l.sum=e,t[a]=l}t[a].push(o)}):$.value.length&&(t[""]=$),Object.entries(t).map(([e,t])=>({name:e,values:t}))}),w=ref(1),k=ref(1),{slots:_,expose:S,emit:x}=t;watch(()=>e.value,t=>{e.src||(h.value=Array.isArray(t)?t:[])},{immediate:!0,deep:!0});const V=getCurrentInstance(),E=async()=>{if(null!=n){let e;db&&(e=await getStoredList(n)),e||(e=[]),h.value=h.value?e.concat(h.value):e}return h.value},C=(e,t,l)=>{d.value&&0==whichChild(e.target)||N(t,l,1)},N=(e,t,l)=>{-10===t?y.value.length===v.value.length?v.value=[]:v.value=y.value.map(e=>e):l?d.value||!v.value.includes(e)?v.value=[e]:(v.value=[],e=null):v.value.includes(e)?(v.value.splice(v.value.indexOf(e),1),e=null):v.value.push(e),x("row-select",{target:this,current:e,selection:v})},B=e=>v.value.includes(e),I=t=>{const l=[];return e.selectable&&B(t)&&l.push("v-selected"),e.rowStyleClass&&("string"==typeof e.rowStyleClass?l.push(e.rowStyleClass):e.rowStyleClass&&l.push(e.rowStyleClass(t))),l},L=(e,t)=>{T(e,t)},T=(e,t)=>{(w.value!=e||t)&&(w.value=e,F())};let A=""+e.selectable;d.value="false"!=A&&"0"!=A?1:0,A=""+e.scrollable,u.value=e.scrollable&&"false"!=A&&"0"!=A?1:0;const F=()=>{const t=e;if(v.value=[],t.value&&(h.value=[],h.value=t.value,x("loaded",{target:t}),x("row-select",{}),t.remoteLoaded=1,t.loaded=1,m.value++),o){let e=o;e.endsWith("/")&&(e=e.slice(0,e.length-1));const l=t.pagination;if(l&&(e+="/"+(w.value-1)*l+"/"+l),networkStatus.connected){let a;if(t.gql){const e=t.gql,n="query{"+Object.keys(e)[0]+"(offset:"+(w.value-1)*l+" limit:"+l+"){\ndata{"+e[Object.keys(e)[0]]+"}\nsize\n}\n}";a=s.axios.post(o,{query:n})}else a=s.axios.get(e,{params:clean(t.filters)});a.then(e=>{if(e.data&&e.data.error)MsgBox(e.data.error);else{let o=e.data;t.gql&&(o=e.data.data[Object.keys(t.gql)[0]]),h.value=o.data||o,o&&o.hasOwnProperty("size")&&l&&(k.value=Math.ceil(o.size/l),w.value>k.value&&(w.value=1),t.size=o.size),E(),x("loaded",{target:t}),x("row-select",{}),t.remoteLoaded=1,t.loaded=1,m.value++}}).catch(t.error)}else{h.value=[];const e=E();e.then&&e.then(e=>{h.value=e}),x("row-select",{target:t})}}m.value++,t.loaded=1},D=computed(()=>v.value.length);F.rowSelectedCount=D,F.src=o,c&&(F.getForm=c.get),F.rowKey=a,F.rowSelect=N;const M=e=>p.value===e;F.is=M,F.remove=e=>{const t=h.value.findIndex(t=>t===e);-1!==t&&h.value.splice(t,1)},F.selected=v,F.type="v-table",i.push(F);const O=e=>{13===e.keyCode&&(e.preventDefault(),F())};return onMounted(()=>{!0===l&&F(),setTimeout(()=>{const e=V.proxy,t=e.$el.querySelectorAll(".v-cloned-header div > span"),l=Math.max(...Array.from(t).map(e=>e.offsetHeight));t.forEach(e=>{e.style.height=l+"px"});e.$el.querySelectorAll("v-filter").forEach(e=>{e.querySelectorAll("input").forEach(e=>e.addEventListener("keyup",O))})},100)}),onUnmounted(()=>{i.remove(F)}),S({load:F,rowSelectedCount:D,j_is:M}),()=>{let t=0;const l=_.default({row:{}}),o=[];l.forEach((e,l)=>{const a=e.props;e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{a.filter=t,e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{a.footer=t,e.children.shift()})),t+=a.width?Number(a.width):0,o.push({filter:a.filter,header:a.header,width:a.width})}),t+=d.value?42:0;const a=h$1("div",{className:"v-datatable-scrollable-header-box",style:"left: 0px;"},h$1("table",{className:"v-cloned-header v-table",style:{width:`${t}px`}},[d.value?h$1("th",{width:42},[h$1("span",{onclick(){N(null,-10)},className:"v-check"},h$1(FontAwesomeIcon,{icon:v.value.length?faSquareCheck:faSquare,class:"fa-lg"}))]):null,o.map(e=>h$1("th",e,h$1("div",[h$1("span",{style:"display: flex;justify-content: center;align-items: center;"},[e.header]),h$1("v-filter",e.filter?.children)])))]));return h$1("div",{ref:p,className:"v-datatable "+e.class},[_.header?h$1("div",{className:"v-datatable-header v-widget-header ui-corner-top"},_.header()):null,e.pagination?h$1("div",{className:"v-paginator v-paginator-top v-widget-header v-paginator-pages center"},[h$1(script$q,{value:"|<",disabled:w.value<=1,onClick:()=>L(1)}),h$1(script$q,{value:"<",disabled:w.value<=1,onClick:()=>L(w.value-1)}),h$1("div",{style:"padding:3px 8px;display:inline-block"},[h$1("input",{type:"number",style:"width:60px",value:w.value,onInput:e=>L(Number(e.target.value),!0)}),"/"+k.value]),h$1(script$q,{value:">",disabled:w.value==k.value,onClick:()=>L(w.value+1)}),h$1(script$q,{value:">|",disabled:w.value==k.value,onClick:()=>L(k.value)})]):null,h$1("div",{className:"v-widget-header v-datatable-scrollable-header",style:"position: relative; margin-right: 0px;"},a),h$1("div",{className:"v-datatable-scrollable-body",style:"overflow-y: auto; flex:1",onScroll(e){const t=e.currentTarget.scrollLeft;a.el.style.transform="translateX(-"+t+"px)"}},[h$1("table",{className:"v-table",style:{width:`${t}px`}},[h$1("thead",{className:"v-head-cloned"},[d.value?h$1("th",{width:42}):null,...o.map(e=>h$1("th",{width:e.width}))]),h$1("tbody",{className:"v-datatable-data",key:m.value},b.value.length<1?h$1("td",{colspan:o.length+(d.value?1:0)},e.emptyMessage):[b.value.map(e=>[_["header-group"]?h$1("tr",{className:"v-header-group"},[_["header-group"]({group:e})]):null,(e.values.value||e.values).map((e,t)=>{const l=_.default({row:e,index:t});return l.forEach((e,t)=>{e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{e.children.shift()}))}),h$1("tr",{class:I(e),onDblclick(l){C(l,e,t),x("dblclick",l)},onclick(l){C(l,e,t)}},[d.value?h$1("td",{className:"center"},h$1("span",{onclick(){N(e,t)},className:"v-check"},h$1(FontAwesomeIcon,{icon:B(e)?faSquareCheck:faSquare,class:"fa-lg"}))):null,...l])}),_["footer-group"]?h$1("tr",{className:"v-footer-group"},[d.value?h$1("td"):null,_["footer-group"]({group:e})]):null,_["extra-group"]?_["extra-group"]({group:e,groups:b.value}):null])])])])])}},props:{class:null,value:Array,filterKey:String,reflow:null,summary:null,src:String,gql:null,filters:Object,store:null,width:null,emptyMessage:{default:"No existen registros"},groups:{default:""},rowKey:{default:"id"},rowStyleClass:null,pagination:null,selectable:{default:!0},scrollable:null,autoload:{default:!0}},data:()=>({resizeAfterUpddate:0,active:0,keyBody:1,row:{},kt:0,size:null,sortKey:"",paginatio_:0,remoteLoaded:null,loaded:!1,sortOrders:{},rowStyleClassFunc:null}),created(){const me=this;me.$parent.tabs||(me.active=1),me.paginatio_=me.pagination?me.pagination:0,me.rowStyleClass&&eval("me.rowStyleClassFunc=function(row){return "+me.rowStyleClass+"}")},beforeUpdate(){this.active&&this.value},filters:{capitalize:e=>e?e.charAt(0).toUpperCase()+e.slice(1):e},methods:{hasSlot(e){return!!this.$slots[e]},sortBy(){},filter(){alert(12)}},__file:"src/v-table.vue"},script$5={name:"VTabview",data:()=>({tabs:[],height:0,currentTabIndex:0,k:0}),methods:{load(e){var t=new Event("command",{bubbles:!1});t.name="refresh",t.target=this.$el,this.$el.children[1+this.currentTabIndex].dispatchEvent(t)},reset(){this.load(this.k++)}},watch:{currentTabIndex(e){var t=this,l=t.$el.children[e+1];if(t.$children[e+1],l){var o=new Event("tabChange",{bubbles:!1});o.$target=t,l.dispatchEvent(o),t.$el.style.height=t.height+"px",(o=new Event("parentResize",{bubbles:!1})).height=t.$el.offsetHeight-25,l.style.height=o.height+"px",setTimeout(()=>{l.dispatchEvent(o)},2)}}},updated(){for(var e=this.$el.children,t=1;t<e.length;t++)e[t].tagName&&(t-1===this.currentTabIndex&&(e[t].style.display="flex",e[t].style.flex="1",e[t].style.flexDirection="column"),t-1===this.currentTabIndex?e[t].classList.remove("hide"):(e[t].style.display="none",e[t].classList.add("hide"))),console.log(e[t])},mounted(){for(var e=this,t=e.$el.children,l=1;l<t.length;l++)t[l].style.display="none",e.tabs.push({title:""+t[l].getAttribute("tab")});e.$el.addEventListener("parentResize",l=>{e.$el.style.height=l.height+1+"px",e.height=l.height+1;var o=new Event("parentResize",{bubbles:!1});o.height=e.$el.offsetHeight-25,o.target=e.$el,o.$target=e;for(var a=1;a<t.length;a++)"none"!=t[a].style.display&&(console.log("Se envia el alto "+o.height),t[a].style.height=o.height+"px",t[a].dispatchEvent(o));e.$emit("resize",o)}),t[1+e.currentTabIndex].setAttribute("active",1);var o=new Event("tabChange",{bubbles:!1});o.$target=e,t[1+e.currentTabIndex].dispatchEvent(o)}};const _hoisted_1$4={class:"v-tab-nav"},_hoisted_2$3=["onClick"];function render$2(e,t,l,o,a,n){return openBlock(),createElementBlock("div",{class:"v-tabview",style:normalizeStyle({height:a.height+"px"})},[createElementVNode("ul",_hoisted_1$4,[(openBlock(!0),createElementBlock(Fragment,null,renderList(a.tabs,(e,t)=>(openBlock(),createElementBlock("li",{class:normalizeClass({"v-selected":t==a.currentTabIndex}),key:t,onClick:e=>a.currentTabIndex=t},toDisplayString(e.title),11,_hoisted_2$3))),128))]),renderSlot(e.$slots,"default")],4)}script$5.render=render$2,script$5.__file="src/v-tabview.vue";var script$4={name:"VTextarea",props:{modelValue:String},setup(e,{emit:t}){const l=ref(null),o=()=>{l.value&&(l.value.style.height="auto",l.value.value&&(l.value.style.height=`${l.value.scrollHeight}px`))},a=()=>{nextTick(o)};return watch(()=>e.modelValue,a,{immediate:!0}),onMounted(()=>{const e=l.value;e&&(e.addEventListener("change",o),e.addEventListener("cut",a),e.addEventListener("paste",a),e.addEventListener("drop",a),e.addEventListener("keydown",a),a())}),{textarea:l,updateValue:e=>{t("update:modelValue",e.target.value),a()}}}};const _hoisted_1$3=["value"];function render$1(e,t,l,o,a,n){return openBlock(),createElementBlock("textarea",{ref:"textarea",value:l.modelValue,onInput:t[0]||(t[0]=(...e)=>o.updateValue&&o.updateValue(...e))},null,40,_hoisted_1$3)}script$4.render=render$1,script$4.__file="src/v-textarea.vue";const _hoisted_1$2={style:{cursor:"pointer"}},_hoisted_2$2=["disabled"],_hoisted_3$2=["data-icon"],_hoisted_4$2=["value"];var script$3={__name:"v-uploader",props:{value:String,onlyicon:Boolean,click:Function,icon:String,domain:String,dst:String,disabled:{type:Boolean,default:!1}},emits:["update:value","input"],setup(e,{emit:t}){const l=e,o=t,a=ref(0),n=ref(!1);function r(){l.disabled||l.click&&l.click()}function s(e){if(l.disabled)return void(e.target.value="");const t=e.target.files?.[0];t&&(a.value=0,function(e,t){if(l.disabled)return;const r=new FormData;if(t=t||e.name.replace(/[^\w\s.]/gi,""),r.append("filename",t),r.append("file",e,t),l.dst){const e=l.dst.endsWith("\\")?l.dst+t:l.dst+"\\"+t;r.append("dst",e)}n.value=!0,axios$2.post((l.domain||"")+"/api/file/upload",r,{headers:{"Content-Type":"multipart/form-data"},onUploadProgress:e=>{a.value=Math.round(100*e.loaded/(e.total||1))}}).then(e=>{o("input",e.data),o("update:value",e.data)}).catch(e=>{console.error("Upload error:",e)}).finally(()=>{n.value=!1})}(t))}return(t,l)=>(openBlock(),createElementBlock("div",{class:normalizeClass(["v-uploader",[e.onlyicon?"":"v-button ui-widget ui-state-default ui-corner-all",{disabled:e.disabled}]]),style:normalizeStyle({padding:e.onlyicon?"0px":""}),onClick:r},[createElementVNode("label",_hoisted_1$2,[e.click?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("input",{key:0,type:"file",disabled:e.disabled,onChange:s},null,40,_hoisted_2$2)),createElementVNode("i",{class:normalizeClass(["fa",e.icon||"fa-upload"]),"data-icon":e.icon,style:normalizeStyle({marginRight:e.onlyicon||!e.value?"":"10px"})},null,14,_hoisted_3$2),createTextVNode(" "+toDisplayString(e.onlyicon?"":e.value??"Adjuntar Archivo")+" ",1),n.value?(openBlock(),createElementBlock("progress",{key:1,max:"100",value:a.value,style:{width:"100%"}},null,8,_hoisted_4$2)):createCommentVNode("v-if",!0)])],6))},__file:"src/v-uploader.vue"},script$2={name:"VItem",setup:({href:e},{emit:t})=>({click:()=>{e?useAppStore().router.push({path:e}):t("click")}}),props:{icon:String,style:Object,label:String,href:String}};function render(e,t,l,o,a,n){return openBlock(),createElementBlock(Fragment,null,[createElementVNode("li",{onClick:t[0]||(t[0]=(...e)=>o.click&&o.click(...e)),style:normalizeStyle(l.style)},[createElementVNode("i",{class:normalizeClass(["fa",l.icon])},null,2),createTextVNode(toDisplayString(l.label)+" ",1),renderSlot(e.$slots,"label")],4),createElementVNode("ul",null,[renderSlot(e.$slots,"default")])],64)}script$2.render=render,script$2.__file="src/v-item.vue";const _hoisted_1$1={style:{padding:"20px"}},_hoisted_2$1={class:"v-form"},_hoisted_3$1=["onUpdate:modelValue"],_hoisted_4$1={style:{"padding-top":"5px"},class:"right"};var script$1={__name:"v-filter-date",props:{modelValue:{type:String,default:null},name:{type:String,default:""},min:{type:String,default:null},max:{type:String,default:null}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=ref(null),n=ref(!1),r=ref(null);const s=ref([{operator:"=",value:null}]);let i=null;const c=computed(()=>!!l.modelValue),d=ref(""),u=computed(()=>{const e=l.name||d.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function p(){d.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map($).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function m(){n.value=!1,i&&(unmask(i),i=null)}function v(){s.value.push({operator:"=",value:null})}function h(e){return e||null}function f(){const e=h(s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>{const t=function(e){if(!e)return null;return date(e,"date-")||null}(e.value);return t?`${e.operator}${t}`:null}).filter(Boolean).join("&"));e!==h(l.modelValue)&&o("update:modelValue",e),m()}function g(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],m()}function y(){m()}function $(e){const t=e.match(/^(>=|<=|>|<|=)(\d{4}-\d{2}-\d{2})$/);return t?{operator:t[1],value:t[2]}:null}return(t,l)=>{const o=resolveComponent("v-button"),i=resolveComponent("v-calendar"),d=resolveComponent("center"),m=resolveComponent("v-panel");return openBlock(),createElementBlock(Fragment,null,[createVNode(o,{ref_key:"button",ref:r,class:normalizeClass(["v-filter",{"v-selected":c.value}]),icon:"fa-calendar",onClick:withModifiers(p,["prevent","stop"])},null,8,["class"]),(openBlock(),createBlock(Teleport,{to:"body"},[withDirectives(createVNode(m,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:u.value},{default:withCtx(()=>[createElementVNode("div",_hoisted_1$1,[createElementVNode("div",_hoisted_2$1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(s.value,(t,a)=>(openBlock(),createElementBlock("div",{key:a,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[withDirectives(createElementVNode("select",{"onUpdate:modelValue":e=>t.operator=e,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...l[0]||(l[0]=[createElementVNode("option",{value:">="},">=",-1),createElementVNode("option",{value:">"},">",-1),createElementVNode("option",{value:"="},"=",-1),createElementVNode("option",{value:"<"},"<",-1),createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3$1),[[vModelSelect,t.operator]]),createVNode(i,{modelValue:t.value,"onUpdate:modelValue":e=>t.value=e,style:{flex:"1"},min:e.min,max:e.max},null,8,["modelValue","onUpdate:modelValue","min","max"]),createVNode(o,{icon:"fa-trash",onClick:withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(a),["prevent"])},null,8,["onClick"])]))),128)),createElementVNode("div",_hoisted_4$1,[createVNode(o,{icon:"fa-plus",onClick:withModifiers(v,["prevent"])})])]),createVNode(d,{style:{"padding-top":"20px"}},{default:withCtx(()=>[createVNode(o,{icon:"fa-check",value:"Aceptar",onClick:f}),createVNode(o,{icon:"fa-times",value:"Limpiar",onClick:g}),createVNode(o,{icon:"fa-ban",value:"Cancelar",onClick:withModifiers(y,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vShow,n.value]])]))],64)}},__file:"src/v-filter-date.vue"};const _hoisted_1={style:{padding:"20px"}},_hoisted_2={class:"v-form"},_hoisted_3=["onUpdate:modelValue"],_hoisted_4=["onUpdate:modelValue"],_hoisted_5={style:{"padding-top":"5px"},class:"right"};var script={__name:"v-filter-number",props:{modelValue:{type:String,default:null},name:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=ref(null),n=ref(!1),r=ref(null);const s=ref([{operator:"=",value:null}]);let i=null;const c=computed(()=>!!l.modelValue),d=ref(""),u=computed(()=>{const e=l.name||d.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function p(){d.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map(y).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function m(){n.value=!1,i&&(unmask(i),i=null)}function v(){s.value.push({operator:"=",value:null})}function h(){const e=s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>`${e.operator}${e.value}`).join("&");o("update:modelValue",e||null),m()}function f(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],m()}function g(){m()}function y(e){const t=e.match(/^(>=|<=|>|<|=)(-?\d+(?:\.\d+)?)$/);return t?{operator:t[1],value:t[2]}:null}return(e,t)=>{const l=resolveComponent("v-button"),o=resolveComponent("center"),i=resolveComponent("v-panel");return openBlock(),createElementBlock(Fragment,null,[createVNode(l,{ref_key:"button",ref:r,class:normalizeClass(["v-filter",{"v-selected":c.value}]),icon:"fa-hashtag",onClick:withModifiers(p,["prevent","stop"])},null,8,["class"]),(openBlock(),createBlock(Teleport,{to:"body"},[withDirectives(createVNode(i,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:u.value},{default:withCtx(()=>[createElementVNode("div",_hoisted_1,[createElementVNode("div",_hoisted_2,[(openBlock(!0),createElementBlock(Fragment,null,renderList(s.value,(e,o)=>(openBlock(),createElementBlock("div",{key:o,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[withDirectives(createElementVNode("select",{"onUpdate:modelValue":t=>e.operator=t,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...t[0]||(t[0]=[createElementVNode("option",{value:">="},">=",-1),createElementVNode("option",{value:">"},">",-1),createElementVNode("option",{value:"="},"=",-1),createElementVNode("option",{value:"<"},"<",-1),createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3),[[vModelSelect,e.operator]]),withDirectives(createElementVNode("input",{"onUpdate:modelValue":t=>e.value=t,type:"number",style:{width:"120px",flex:"1"}},null,8,_hoisted_4),[[vModelText,e.value]]),createVNode(l,{icon:"fa-trash",onClick:withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(o),["prevent"])},null,8,["onClick"])]))),128)),createElementVNode("div",_hoisted_5,[createVNode(l,{icon:"fa-plus",onClick:withModifiers(v,["prevent"])})])]),createVNode(o,{style:{"padding-top":"20px"}},{default:withCtx(()=>[createVNode(l,{icon:"fa-check",value:"Aceptar",onClick:h}),createVNode(l,{icon:"fa-times",value:"Limpiar",onClick:f}),createVNode(l,{icon:"fa-ban",value:"Cancelar",onClick:withModifiers(g,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vShow,n.value]])]))],64)}},__file:"src/v-filter-number.vue"},components={InputTextarea:script$s,VItem:script$2,InputText:script$t,VAutocomplete:script$r,VButton:script$q,VCalendar:script$p,VFilterDate:script$1,VFilterNumber:script,VCheckboxGroup:script$o,VCheckbox:script$n,VDataview:script$m,VFieldset:script$l,VForm:script$k,VGroup:script$j,VLayerControl:script$i,VMapControl:script$h,VMap:script$g,VNumber:script$f,VOptions:script$e,VOverlay:script$d,VPanel:script$c,VPopup:script$b,VRadioGroup:script$9,VRadio:script$a,VSelect:script$8,VSwitch:script$7,VTable:script$6,VTabview:script$5,VTextarea:script$4,VUploader:script$3};const VForm=components.VForm,IsobitUI={install(e){setApp(e),e.BUILT_ON=import.meta.env.VITE_APP_BUILT_ON;for(const t in components)if(components.hasOwnProperty(t)){const l=components[t];e.component(l.name||t,l)}}};setTimeout(resize,400),window.addEventListener("resize",()=>{setTimeout(resize,400)});const removeError=e=>{let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)},ui=e=>{const l={computed:{user:()=>_$1.app.session,perms(){return this.session?.perms||this.session?.allcaps||{}}},data(){return{app2:null,ui:this,_session:null,x_connected_:null,row:{},networkStatus:{connected:null}}},methods:{get(e){let t=this.$el.querySelector("form").action;window.location.href=this.apiLink(t)+"/"+e},async sync(e){let t=this,l=t.$el.querySelector("form").getAttribute("action");if(!l){l=t.$el.parentNode.getAttribute("path");let e=l.split("/");e="edit"==e[e.length-1]?e.splice(0,e.length-2):e.splice(0,e.length-1),l=t.apiLink(e.join("/"))}let o=t.$children[0].$children[0];l=o.src;let a=await t.getStoredList(o.store),n=o.selected,r=[],s=[];for(let e=0;e<n.length;e++){let t=o.data[n[e]];if(t.tmpId&&!t.synchronized)for(let e=0;e<a.length;e++)if(a[e].tmpId==t.tmpId){let t=JSON.clone(a[e]);delete t.synchronized,s.push(t),r.push(e)}}r.length>0&&axios.post(l+"/bulk"+(e.sufix?e.sufix:""),s).then(function(e){let l=e.data;for(let e=0;e<l.length;e++){if(l[e].errors){MsgBox$1(JSON.stringify(l[e].errors));break}if(l[e].error){MsgBox$1(l[e].error);break}for(let t=0;t<a.length;t++)(l[e].ext&&l[e].ext.tmpId==a[t].tmpId||l[e].tmpId==a[t].tmpId)&&(log("ui.ok"),l[e].ext&&a.ext&&(a[t].ext.error=l[e].ext.error),l[e].id&&(a[t].id=l[e].id),a[t].synchronized=1,emit("sync",l[e],a[t]))}t.setStoredList(o.store,a),t.refresh()}).catch(function(e){e.response?MsgBox$1(e.response.data):console.log(e)})}}};e||(e={data:{o:{}}});const{setup:o,...a}=e,n=o;return e={mixins:[l,a],setup(e,l){const o=useAppStore();setApp(o),o.config(getConfigApp());const a=e;let r=useRouter();const s=getCurrentInstance(),c=reactive([]),d={remove(e){c.splice(c.indexOf(e),1)},push(e){c.push(e)}},u=e=>{},p=async e=>{const t=s.proxy,l=_$1.db;let a;try{a=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==a&&(a={}),!a[e]&&t.connected){let t=_$1.stores.filter(t=>t[0]==e)[0];if(!t[2])throw`ERROR: Url for store '${t[0]}' is empty!`;let{data:n}=await o.axios.get(t[2]);n=n.data||n,await new Promise((o,r)=>{let s=l.transaction([t[0]],"readwrite"),i=s.objectStore(t[0]);const c=i.clear();c.onsuccess=()=>{n.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},c.onerror=()=>{console.error(`⚠️ Store '${t[0]}' error data!`,t)},s.oncomplete=()=>{a[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(a)),o()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),r()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},m=()=>{c.find(e=>"v-table"==e.type)()};provide("refresh",m);const v=(e,t,l)=>{let o=c.find(e=>"v-popup"==e.type);if(console.log(e),e.open)e.open();else if(o&&(e instanceof String||"string"==typeof e))o.open(e);else if(!(e.$el||e instanceof HTMLElement)){let t=e,l=t.target;return"string"==typeof t?l=t:"ION-ITEM"==l.tagName&&l.href?(t.preventDefault(),l=l.href):(t.preventDefault(),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l=l.pathname),void(r.path!==l&&r.push(l))}},h=(e,t,l)=>{"string"==typeof t&&(t={body:t});let a="string"==typeof l?{fileName:l}:l;a||(a={}),(""+t?o.axios.post(e,t,{responseType:"blob"}):o.axios({method:"post",url:e,data:t,headers:{"Content-Type":"multipart/form-data"}})).then(e=>{const t=window.URL.createObjectURL(new Blob([e.data])),l=document.createElement("a");if(l.href=t,!a.fileName){const t=e.headers["content-disposition"];if(t&&-1!==t.indexOf("attachment")){const e=/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/.exec(t);null!=e&&e[1]&&(a.fileName=e[1].replace(/['"]/g,"").trim())}else console.warn("content-disposition: attachment; filename = <filename>; header no es accesible o no esta definido correctamente")}l.setAttribute("download",a.fileName),document.body.appendChild(l),l.click()})},f=n=>{const r=n?.target?.closest("form"),d=r?.closest(".v-msgbox")?.closest(".v-overlay");let u=c.filter(e=>"v-form"===e.type).find(e=>e.$el?.children?.[0]===r);u||(u=c.find(e=>"v-form"===e.type));const m=s.proxy;u.$forceUpdate();let v=u.$el,h=v.querySelector("form");if(y(h)){let n=h.getAttribute("action"),r=m.data||m.o,s=JSON.parse(JSON.stringify(r));if(m.process&&(s=m.process(s)),"object"!=typeof s||Array.isArray(s)||null===s)return;if(console.log("action/componet==",n,m,l),n&&o.connected)o.axios.post(n,s).then(t=>{let l=t.data;if(s.tmpId){alert(12);let e=a.$children[0].store,t=window._.db.transaction([e],"readwrite").objectStore(e),o=t.get(s.tmpId);l.id&&(s.id=l.id,r.id=s.id),o.onsuccess=function(){let e;r.synchronized=1,s.synchronized=1,e=o.result?t.put(s):t.add(s),e.onerror=e=>{console.error(e)},a.$emit("sync",l,s)},o.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}o&&o.toast?o.toast("El registro fue grabado exitosamente!",()=>{console.log(e),m.close({success:!0,data:l}),d?.closeDialog?.(1)}):MsgBox$1("El registro fue grabado exitosamente! msg",()=>{w({success:!0,data:l}),d?.closeDialog?.(1)})}).catch(function(e){if(e.response){let l,o;if("string"==typeof e.response.data)MsgBox$1(e.response.data);else{l=e.response.data.propertyViolations;for(let e=0;e<l.length;e++){let t=l[e];o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message)}for(l=e.response.data.fieldViolations,i=0;i<l.length;i++)t=l[i],o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message+", valor="+t.value);MsgBox$1("Verifique el formulario, aun tiene campos obligatorio completar."),"v-dialog"==a.$el.parentNode.className&&a.$el.parentNode.parentNode.scroll({top:0,behavior:"smooth"})}}});else{console.log("se guarda localmente");const e=c[0].store;if(!e)return void MsgBox$1("Store in form is undefined!");p(e).then(t=>{if(t||(t=[]),s.id)for(let e=0;e<t.length;e++)t[e].tmpId==s.tmpId&&(delete s.synchronized,t[e]=s);let l=_$1.db.transaction([e],"readwrite").objectStore(e);if(s.id){delete s.synchronized;let e=l.get(s.tmpId);e.onsuccess=function(){e.result?l.put(s):t.forEach(e=>{e.tmpId==s.tmpId&&l.put(s)}),a.$emit("stored",s,t,l),a.$ionic&&o.toast("El registro fue grabado exitosamente! onstored"),m.close({success:!0,data:s})},e.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}else{s.tmpId=1*new Date,s.id=-s.tmpId;let e=l.add(s);e.onsuccess=e=>{t.unshift(s),a.$emit("stored",s,t,l),o&&o.toast&&o.toast("El registro fue grabado exitosamente! storeeeeee not connected"),r.tmpId=s.tmpId,r.id=s.id,console.log("========>>",m),m.close({success:!0,data:s})},e.onerror=e=>{o&&o.toast&&o.toast("Error!")}}})}}else MsgBox$1("Verifique el formulario, aun tiene campos obligatorios sin completar."),"v-dialog"==v.parentNode.className?v.parentNode.parentNode.scroll({top:0,behavior:"smooth"}):v.querySelector("form > .v-form").scroll({top:0,behavior:"smooth"})},g=(e,t)=>{e.$el&&(e=e.$el),removeError(e);let l=e.previousElementSibling;for(;l&&1!=l.nodeType;)l=l.previousElementSibling;if(!l)for(l=e.parentElement.previousElementSibling;l&&1!=l.nodeType;)l=l.previousElementSibling;let o=document.createElement("div");o.innerHTML="Este campo es requerido!",o.classList.add("v-error"),e.parentNode.insertBefore(o,e)},y=e=>{const t=[],l=[],o=s.proxy;e=e&&0!=e?e:o.$el;const a=e?.querySelectorAll("input,select,textarea,div[required=required]");let n,r={};for(let e=0;a?.length>e;e++){let o=a[e];if("radio"===o.type){let e=r[o.name];e||(r[o.name]=e=[]),e.push(o);continue}if(o.error&&(o.error.style.display="none"),!o.disabled&&!o.getAttribute("disabled")&&(o.required||"DIV"===o.tagName))if("DIV"!=o.tagName&&!o.value||"DIV"===o.tagName&&!o.attributes.value){for(n=o.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;if(!n)for(n=o.parentElement.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;t.push(o)}else l.push(o)}for(let e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const o=r[e];let a=!1,s=!1;for(let e=0;e<o.length;e++)o[e].required&&!o[e].disabled&&(s=!0),o[e].checked&&(a=!0);const i=o[0].parentNode.parentNode;n=i.previousElementSibling,n&&n.classList&&n.classList.contains("v-error")&&n.parentNode.removeChild(n),s&&!a?t.push(i):l.push(i)}for(const e of t)g(e);for(const e of l){let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)}return!t.length},$=(e,t)=>{let l=e.parentElement;for(;l;){const e=l.querySelector(t);if(e)return e;l=l.parentElement}return null},b=e=>{const t=$(e.target,".v-datatable");let l=c.filter(e=>"v-table"==e.type).find(e=>e.is(t)),o=l.getForm().action;var a;o||(o=window.location.pathname),l&&l.src&&(o=l.src),e.action&&(o=e.action),o&&(a=o.replace("/api","").replace("/0/0",""),o="/admin"+a);const n=l.selected.value[0];let r=n[l.rowKey];n.tmpId&&(r=-n.tmpId),v(o+"/"+r+"/edit")},w=t=>{t&&e.callback&&e.callback(t)};provide("viewCollector",d);const k=computed(()=>{let e=c.find(e=>e.selected?.value.length>0);return e?.rowSelectedCount||0}),_=computed(()=>clean(S.value)),S=reactive({}),x=ref(null);let V;watch(S,()=>{c.find(e=>"v-table"==e.type)&&(x.value&&clearTimeout(x.value),x.value=setTimeout(()=>{m()},1200))});const E=()=>{clearTimeout(V),V=setTimeout(()=>{const e=document.querySelector(".v-datatable");e?.parentNode&&buildPopupMenu(e)},100)};onMounted(()=>{r=useRouter(),l.emit("sync",{u:9}),E(),window.addEventListener("resize",E)}),onUnmounted(()=>{window.removeEventListener("resize",E)});const C=computed(()=>o.axios.defaults.baseURL),N=computed(()=>o.session);let B=n?n({...e,$on:(e,t)=>{},router:r,getStoredList:p,app:o,save:f,open:v,refresh:m,saveAs:h,edit:b},l):{};l.expose({router:r});let I={app:o,cleanedFilters:_,router:r,baseURL:C,filters:S,session:N,date:date,pad:pad,getStoredList:p,refresh:m,getSelected:()=>c.find(e=>"v-table"==e.type).selected.value,saveAs:h,validate:y,save:f,open:v,close:w,create:e=>{const t=$(e.target,".v-datatable");let l=c.filter(e=>"v-table"==e.type).find(e=>e.is(t)).getForm().action;l||(l=window.location.pathname),l&&(l=l.replace("/api","")),l+="/create",o&&v(l)},edit:b,destroy:e=>{let t=this;const l=$(e.target,".v-datatable");let a=c.filter(e=>"v-table"==e.type).find(e=>e.is(l));c.find(e=>"v-table"!=e.type).action;let n=e.$vnode?e.load:null,r=a.rowKey,s=a.selected.value[0];if(s.tmpId)MsgBox$1("Esta seguro que desea eliminar los registros temporales seleccionados ?",function(e){if(0==e){let e=0,l=_$1.db.transaction([a.store],"readwrite").objectStore(a.store),r=[];for(let t=a.selected.length-1;t>=0;t--)s=a.data[a.selected[t]],r.push(s),s.tmpId&&l.delete(s.tmpId),e++,a.data.splice(a.selected[t],1);e&&(o&&o.toast?o.toast(e+" registros eliminados"):MsgBox$1(e+" registros eliminados")),a.rowSelect(null,-1),a.selected=[],t.$emit("destroyed",r,a.store),n&&n()}},["SI","NO"]);else{if(!r)return alert("Table don`t have defined attribute 'rowkey'");let e=s[r];MsgBox$1("Esta seguro que desea eliminar el registro seleccionado?",t=>{if(0==t){const t=a.src.replace("/0/0",""),l=[];let n=a.selected.value.length-1;o.axios.delete(t+"/"+e,{params:S.value}).then(()=>{for(;n>=0;n--)s=a.selected.value[n],l.push(s),a.remove(s);o&&o.toast?o.toast(l.length+" registros eliminados"):MsgBox$1(l.length+" registros eliminados"),a.rowSelect(null,-1),a.selected.value=[]}).catch(u)}},["SI","NO"])}},rowSelectedCount:k,...B};return I}},e};export{Drag,IsobitUI,MsgBox$1 as MsgBox,VForm,_$1 as _,app,date,db,getStoredList,id,initDB,mask,pad,removeError,resize,setupApp,ui,unmask,useAppStore};
1
+ import{createElementBlock,openBlock,ref,watch,computed,onMounted,onBeforeUnmount,createCommentVNode,withDirectives,createVNode,normalizeStyle,renderSlot,createTextVNode,toDisplayString,createElementVNode,normalizeClass,withKeys,withModifiers,vModelText,Transition,withCtx,Fragment,renderList,vShow,nextTick,provide,inject,h as h$1,reactive,onUpdated,toRef,onUnmounted,shallowRef,createBlock,Teleport,resolveDynamicComponent,mergeProps,getCurrentInstance,unref,resolveComponent,vModelSelect}from"vue";import{getActivePinia,createPinia,setActivePinia,defineStore}from"pinia";import axios$2 from"axios";import{unByKey}from"ol/Observable";import{Collection}from"ol";import FullScreen from"ol/control/FullScreen";import GeoJSON from"ol/format/GeoJSON";import VectorLayer from"ol/layer/Vector";import VectorSource from"ol/source/Vector";import{Style,Text,Stroke,Fill,RegularShape,Circle}from"ol/style";import Control from"ol/control/Control";import"ol/ol.css";import PointerInteraction from"ol/interaction/Pointer";import Feature from"ol/Feature";import Map from"ol/Map";import"ol/interaction/Pointer.js";import"ol/interaction/defaults";import View from"ol/View";import{Point}from"ol/geom";import"ol/interaction/Select";import{fromLonLat,toLonLat}from"ol/proj";import{Tile}from"ol/layer";import{OSM}from"ol/source";import"ol/interaction/Translate";import _imports_0 from"@/cdn/images/triangle-down.svg";import{useRouter}from"vue-router";import{FontAwesomeIcon}from"@fortawesome/vue-fontawesome";import{faSquareCheck,faSquare}from"@fortawesome/free-regular-svg-icons";var script$t={name:"InputText"};const _hoisted_1$k={type:"text"};function render$m(e,t,l,o,a,n){return openBlock(),createElementBlock("input",_hoisted_1$k)}script$t.render=render$m,script$t.__file="src/InputText.vue";var script$s={name:"InputTextarea"};function render$l(e,t,l,o,a,n){return" text "}script$s.render=render$l,script$s.__file="src/InputTextarea.vue";const _$1={stores:[],_id:0,axios_get:null,storeFunction:{}},log=(e,...t)=>{e&&console.log(e,...t)};let configApp={};function setupApp({pinia:e,axios:t,router:l}){configApp.pinia=e||createPinia(),t&&(configApp.axios=t),l&&(configApp.router=l),setActivePinia(configApp.pinia)}function getConfigApp(){return configApp}function getPiniaInstance(){return getActivePinia()||configApp.pinia}const id=()=>_$1._id++,num=e=>e=e?""==e?null:Number(""+e):0,date=(e,t)=>{if(e){let l;if(e instanceof Date)l=e;else if("string"==typeof e){let t=e.includes("T")?e.split("T"):e.split(" ");l=t[0].split("-"),t.length>1?(t=t[1].split(":"),l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2]),parseInt(t[0]),parseInt(t[1]),t.length>2?parseInt(t[2]):0)):l.length>2?l=new Date(parseInt(l[0]),parseInt(l[1])-1,parseInt(l[2])):(l=e.split(":"),l=l.length>2?new Date(1981,0,6,parseInt(l[0]),parseInt(l[1]),parseInt(l[2])):new Date(e))}else l=new Date(e);if(1==t)e=l;else if("time"===t)e=pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2);else if("time a"==t)if("string"==typeof e||e instanceof String){let t=(e=e.split(":"))[0];e=pad(t>12?t-12:t,2)+":"+e[1]+":"+e[2]+" "+(t>12?"PM":"AM")}else h=l.getHours(),e=pad(h>12?h-12:h,2)+":"+pad(l.getMinutes(),2)+(l.setSeconds()?":"+pad(l.setSeconds(),2):"")+" "+(h>12?"PM":"AM");else e="date-"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2):"dMY"==t||"date"==t?pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4):"datetime"==t?pad(l.getFullYear(),4)+"-"+pad(l.getMonth()+1,2)+"-"+pad(l.getDate(),2)+"T"+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)+":"+pad(l.setSeconds()?l.setSeconds():0,2):pad(l.getDate(),2)+"/"+pad(l.getMonth()+1,2)+"/"+pad(l.getFullYear(),4)+" "+pad(l.getHours(),2)+":"+pad(l.getMinutes(),2)}return e},whichChild=e=>{let t=0;for(;null!=(e=e.previousElementSibling);)++t;return t},unmask=e=>{e&&(e.style.display="none",e.parentNode&&e.parentNode.removeChild(e))},isObject=e=>e&&"object"==typeof e&&!Array.isArray(e),mergeDeep=function(){let e=arguments[0],t=[];for(let e=1;e<arguments.length;e++)t.push(arguments[e]);if(!t.length)return e;let l,o=t.shift();if(isObject(e)&&isObject(o))for(let t in o)isObject(o[t])?(e[t]||(l={},l[t]={},Object.assign(e,l)),mergeDeep(e[t],o[t])):(l={},l[t]=o[t],Object.assign(e,l));let a=[];return a.push(e),a.concat(t),mergeDeep.apply(null,a)},buildPopupMenu=e=>{let t=e.getAttribute("v--popup");if(!t){e.setAttribute("v--popup",t=id());let l=_$1.storeFunction[t],o=e.querySelectorAll(".v-datatable-header .v-button");o&&o.length&&!l&&window.innerWidth<=700&&setTimeout(function(){l=document.createElement("ul"),l.className="v-popup-2",e.appendChild(l);let a=null;const n=e=>{l.style.display="none";let t=e.target.getAttribute("commandId"),o=document.querySelector("#"+t);"BUTTON"==o.tagName?o.click():o.children[0].click(),unmask(a)};e.style.position="relative";let r=document.createElement("div");r.className="v-mobil v-table-buttons";let s=document.createElement("i");s.className="fa fa-bars fa-w-14",r.appendChild(s),r.onclick=()=>{for(o=e.querySelectorAll(".v-datatable-header .v-button");l.firstChild;)l.removeChild(l.firstChild);for(s=0;s<o.length;s++)if("none"!=o[s].style.display){let e=document.createElement("li");if(o[s].id||(o[s].id="c-"+id()),e.setAttribute("commandId",o[s].id),"BUTTON"==o[s].tagName){if(o[s].disabled)continue;e.appendChild(o[s].children[0].cloneNode(!0)),e.appendChild(document.createTextNode(o[s].value?o[s].value:o[s].title))}else o[s].children[0].children[1]&&(e.appendChild(o[s].children[0].children[1]),e.appendChild(document.createTextNode(o[s].textContent)));e.onclick=n,l.appendChild(e)}a=mask(l),l.style.display="block",a.onclick=()=>{l.style.display="none",unmask(a)}},e.appendChild(r),_$1.storeFunction[t]=l},500)}},resize=()=>{},mask=(e,t)=>{if(!document.body)return;let l,o=document.createElement("div");o.style="top:50%;transform:translate(-50%,-50%);position:absolute;width:100%;z-index:2; display: flex;justify-content: center;";let a=o.style;if(a.left="50%",a.textAlign="center",!1!==e)if(e instanceof Element)o=e;else{if(e){let t=document.createElement("div");t.innerHTML=e,o.append(t),o.style="padding:4px;margin-bottom:5px;color:white;font-size:24px;text-align:center"}l=document.createElement("div"),a=l.style,l.className="loading"}let n=document.createElement("div");a=n.style,a.height="100%",a.top="0px",a.position="absolute",a.left="0",a.zIndex="10000",a.width="100%";let r=document.createElement("div");return r.className="v-overlay",n.appendChild(r),o.style.zIndex="1001",n.appendChild(o),n.className="v-mask",l&&o.appendChild(l),document.body.appendChild(n),n};function normalizeArgs(e,t){const l={buttons:[{label:"OK"}],closeOnEsc:!0,closeOnOutsideClick:!1,fade:!0};return e?"function"==typeof e?(l.onClose=e,Array.isArray(t)&&(l.buttons=normalizeButtons(t)),l):Array.isArray(e)?(l.buttons=normalizeButtons(e),l):{...l,...e,buttons:e.buttons?normalizeButtons(e.buttons):l.buttons}:l}function normalizeButtons(e){return e.map(e=>"string"==typeof e?{label:e}:e)}const MsgBox$1=(e,t,l)=>{const o=normalizeArgs(t,l),a=document.createElement("div");a.className="v-overlay",a.style.zIndex="2000",a.style.opacity="0",a.style.transition="opacity 0.2s ease";const n=document.createElement("div");n.className="v-dialog v-msgbox",n.style.opacity="0",n.style.transform="scale(0.95)",n.style.transition="all 0.2s ease";const r=document.createElement("div");r.className="v-dialog-content v-widget-content";const s=document.createElement("div");let i;s.className="v-msgbox-buttons";let c=null,d=null;e instanceof Element?(i=e,c=e.parentNode,d=e.nextSibling):(i=document.createElement("div"),i.innerHTML=e),r.appendChild(i);const u=async(e=null)=>{let t;o.onClose&&(t=await o.onClose(e)),!1!==t&&(c&&(d?c.insertBefore(i,d):c.appendChild(i)),o.fade?(a.style.opacity="0",n.style.opacity="0",n.style.transform="scale(0.95)",setTimeout(()=>a.remove(),200)):a.remove(),document.removeEventListener("keydown",p))};o.buttons?.length&&(o.buttons.forEach((e,t)=>{const l=document.createElement("button");if(l.type="button",l.className="_ ui-widget ui-state-default ui-corner-all v-button blue v-button-text-icon-left",l.setAttribute("value",e.label),e.icon){l.setAttribute("icon",e.icon);const t=document.createElement("i");t.className="fa "+e.icon,l.appendChild(t)}const o=document.createElement("span");o.textContent=e.label,l.appendChild(o),l.addEventListener("click",()=>u(t)),s.appendChild(l)}),r.appendChild(s)),n.appendChild(r),a.appendChild(n),a.closeDialog=u,document.body.appendChild(a),o.fade&&requestAnimationFrame(()=>{a.style.opacity="1",n.style.opacity="1",n.style.transform="scale(1)"});const p=e=>{o.closeOnEsc&&"Escape"===e.key&&u()};document.addEventListener("keydown",p),o.closeOnOutsideClick&&a.addEventListener("click",e=>{e.target===a&&u(null)});let m=n.querySelector(".v-js-close");if(!m){let e=document.createElement("span");e.className="fa fa-close",m=document.createElement("a"),m.className="v-js-close ui-dialog-titlebar-icon ui-dialog-titlebar-close ui-corner-all",m.appendChild(e),n.style.position="relative",n.appendChild(m),m.addEventListener("click",()=>u())}},configureAxios=e=>{if(e.configured)return;let t;e.configured=1,_$1.axios_get=e.get,e.interceptors.request.use(l=>(e.noInterceptor||(_$1.eeee=l,l.mask?l.mask():t||(t=mask())),l),e=>(t=unmask(t),MsgBox$1("request "+id()+" "+e.message),Promise.reject(e))),e.interceptors.response.use(l=>(t=unmask(t),delete e.noInterceptor,l),l=>{if(console.log("interceptors.response.use.error"),e.noInterceptor)return delete e.noInterceptor,t=unmask(t),Promise.reject(l);if(e.error&&0==e.error(l))t=unmask(t);else{let e,o=l.response;if(o&&("string"==typeof o.data?e=o.data:o.data&&(o.data.data&&(e=o.data.data.message),e||(e=o.data.msg||o.data.message||o.data.detail)),e||(e=o.status+": "+o.statusText)),e||(e=l.message),t=unmask(t),o&&(401==o.status||403==o.status)){const e=app();if(e&&localStorage.getItem("session"))return e.axios.noInterceptor=1,void e.axios.post(e.axios.VITE_LOGIN_PATH+"/validate",{JWT:"YOUR_JWT_HERE"}).catch(t=>{console.log("e.response=",t),t.response.data.success||MsgBox$1("Session terminada!",()=>{e.logout()})})}l.config?.error?l.config.error(l,e):l.request?MsgBox$1("<b>"+l.request.responseURL+"</b><br/><br/>"+e):MsgBox$1(e)}return delete e.error,Promise.reject(l)})},pad=(e,t)=>{if(null!=e){let l=1*e+"";for(;l.length<t;)l="0"+l;return l}},clean=e=>{const t={...e};for(let e in t)""!==t[e]&&null!==t[e]&&"function"!=typeof t[e]&&void 0!==t[e]||delete t[e];return t},sum=e=>(void 0).reduce((t,l)=>t+((l=e?l[e]:l)?Number(l):0),0);function createGetters(){return{get networkStatus(){return _$1.app?.networkStatus||{connected:!0}},get db(){return _$1.app?.db},app:()=>_$1.app,setApp(e){_$1.app=e}}}const app=()=>_$1.app,db=()=>_$1.db,initDB=(e,t)=>{let l=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;if(_$1.IDBTransaction=window.IDBTransaction||window.webkitIDBTransaction||window.msIDBTransaction,_$1.IDBKeyRange=window.IDBKeyRange||window.webkitIDBKeyRange||window.msIDBKeyRange,l){if(l)return _$1.stores=t,new Promise((o,a)=>{l.databases().then(n=>{const r=n.find(e=>"db"===e.name),s=r&&r.version||0;if(s<e){console.log(`Eliminando base de datos (versión actual: ${s}, nueva versión: ${e})`);const n=l.deleteDatabase("db");n.onblocked=e=>{console.error("DELETE DATABASE BLOCKED",e)},n.onerror=e=>{console.error("DELETE DATABASE ERROR",e),a(n.error)},n.onsuccess=()=>{sessionStorage.removeItem("loadedStores");let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}}else{let n=l.open("db",e);n.onupgradeneeded=e=>{let l=e.target.result;t.forEach(e=>{if(!l.objectStoreNames.contains(e[0])){const{keyPath:t}=e[1];l.createObjectStore(e[0],{keyPath:t,autoIncrement:!t})}})},n.onerror=e=>{a(e)},n.onsuccess=()=>{_$1.db=n.result,o(_$1.db)}}})})}else window.alert("Your browser doesn't support a stable version of IndexedDB.");return l},getStoredList=async(e,t)=>{const l=db();let o;try{o=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==o&&(o={}),!o[e]&&networkStatus.connected){const t=_$1.stores.filter(t=>t[0]==e);if(!t.length)throw`ERROR: store '${e}' no exists!`;let a=t[0];const{src:n}=a[1];if(!n)throw`ERROR: Url for store '${a[0]}' is empty!`;let{data:r}=await _$1.axios_get(n);r=r.data||r,await new Promise((t,n)=>{let s=l.transaction([a[0]],"readwrite"),i=s.objectStore(a[0]);const c=i.clear();c.onsuccess=()=>{r.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},c.onerror=()=>{console.error(`⚠️ Store '${a[0]}' error data!`,a)},s.oncomplete=()=>{o[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(o)),t()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),n()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},getters=createGetters(),{networkStatus:networkStatus,setApp:setApp}=getters,deleteAllCookies=()=>{const e=document.cookie.split(";");for(let t of e){const e=t.split("=")[0].trim();document.cookie=`${e}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;`}},useAppStore=defineStore("connection",()=>{const e=getPiniaInstance(),t=getConfigApp();if(!e)throw new Error("Pinia no ha sido inicializado. Llama a setupPinia() en tu app.");const l=ref(!1),o=ref(!1),a=ref(t.router),n=ref(t.axios),r=ref(null),s=ref(null);l.value="false"!==localStorage.getItem("connected");const i=async()=>{n.value.noInterceptor=1;const e=n.value.VITE_LOGIN_PATH+"/refresh";console.log("REFRESH URL:",e);const{data:t}=await n.value.post(e,{},{withCredentials:!0}),{token:l,user_nicename:o,perms:a}=t;return r.value={token:l,people:{display_name:o},perms:a},r.value};let c=null;const d=()=>{c||(c=setTimeout(async()=>{c=null;try{await i(),d()}catch(e){console.error("Error refreshing session",e)}},6e5))};watch(r,e=>{if(e?.token){n.value.defaults.headers.common.Authorization=`Bearer ${e.token}`;const{token:t,...l}=e;localStorage.setItem("session",JSON.stringify(l)),d()}else delete n.value.defaults.headers.common.Authorization,c&&(clearTimeout(c),c=null)});const u=localStorage.getItem("session");r.value=u?JSON.parse(u):null,watch(l,e=>{localStorage.setItem("connected",String(e))});const p=computed(()=>s.value?.connected),m=computed(()=>!!r.value?.token);return{connected:l,session:r,logout:()=>{r.value=null,localStorage.removeItem("session"),delete n.value.defaults.headers.common.Authorization,c&&(clearTimeout(c),c=null),deleteAllCookies(),window.location.replace("/login")},refreshSession:i,unauthorized:o,connect:e=>{r.value=e,a.value.push("/admin")},authenticated:m,config:({axios:e,router:t})=>{t&&(a.value=t),e&&(n.value=e,configureAxios(e))},axios:n,router:a,online:p,networkStatusChange:e=>{s.value=e}}});var script$r={name:"VAutocomplete",props:{modelValue:{type:Object,default:null},data:{type:Array,default:()=>null},placeholder:String,label:String,default:Object,store:String,params:Object,autoload:{type:Boolean,default:!1},floating:{type:Boolean,default:!0},src:String,readonly:Boolean,nowrap:Boolean,disabled:Boolean,showSelection:{type:Boolean,default:!0},pagination:{type:Number,default:10}},setup(e,t){const{emit:l,slots:o}=t;useAppStore();const a=ref(0),n=ref(null),r=ref(-1),s=ref(""),i=ref(null),c=ref(!1),d=ref(0),u=ref(""),p=ref(null);watch(()=>e.modelValue,e=>{console.log("==============>",e),n.value=e}),watch(()=>e.data,e=>{i.value=e}),onMounted(()=>{u.value=e.inputClass,e.autoload&&v(),document.addEventListener("click",f)}),onBeforeUnmount(()=>{document.removeEventListener("click",f)});const m=computed(()=>{r.value=-1;const e=s.value?s.value.trim().toLowerCase().split(/[ ,]+/):null;return i.value&&s.value?i.value.filter(t=>{const l=JSON.stringify(t).toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g,"");return e.every(e=>l.includes(e))}):i.value}),v=async t=>{const{src:o,source:n}=e;let r=Number(e.pagination);if(1===t)a.value+=r;else if(a.value=0,e.data&&e.autoload)return;let u={query:s.value};e.params&&(u=mergeDeep(u,e.params)),axios$2.get((o||e.source)+(r>0?"/"+a.value+"/"+r:""),{params:u}).then(l=>{const o=l.data;console.log(o),o.error?MsgBox(o.error):(i.value=1===t?i.value.concat(o.data?o.data:o):o.data?o.data:o,console.log(i),d.value=o.size,e.autoload||(c.value=!0),console.log("========================="))}).catch(h).then(()=>{l("complete",{data:i.value,query:s.value,target:"me"})})},h=e=>{console.log(e)},f=e=>{const t=p.value;t&&!t.contains(e.target)&&(c.value=!1)};return{query:s,show:c,selected:n,data2:m,focused:r,autocomplete:p,inputClass:u,search:v,remove:()=>{n.value=null,l("update:modelValue",null)},clickout:f,focusout:e=>{},setSelected:e=>{n.value=e,l("update:modelValue",e)},getLabel:t=>{if(e.label){const l=e.label.split(".");for(let e=0;e<l.length;e++)t&&(t=t[l[e]])}return t},hasSlot:(e="default")=>!!o[e]}}};const _hoisted_1$j=["value","disabled"],_hoisted_2$a=["disabled","placeholder"],_hoisted_3$7={class:"v-list"},_hoisted_4$6=["onClick"],_hoisted_5$1={key:0,class:"center yellow",style:{padding:"5px"}};function render$k(e,t,l,o,a,n){return openBlock(),createElementBlock("div",{class:"v-autocomplete",onFocusout:t[7]||(t[7]=(...e)=>o.focusout&&o.focusout(...e)),ref:"autocomplete",value:e.value,disabled:l.disabled},[o.selected&&l.showSelection?(openBlock(),createElementBlock("div",{key:0,class:"v-selection",style:normalizeStyle({whiteSpace:l.nowrap?"nowrap":""})},[renderSlot(e.$slots,"label",{selected:o.selected}),createTextVNode(" "+toDisplayString(o.hasSlot("label")?" ":o.getLabel(o.selected))+"  ",1),l.readonly?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("span",{key:0,onClick:t[0]||(t[0]=(...e)=>o.remove&&o.remove(...e)),class:"remove-icon"},[...t[8]||(t[8]=[createElementVNode("i",{class:"fa fa-times"},null,-1)])]))],4)):createCommentVNode("v-if",!0),o.selected?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("span",{key:1,onClick:t[1]||(t[1]=(...e)=>o.search&&o.search(...e)),class:"search-icon"},[...t[9]||(t[9]=[createElementVNode("i",{class:"fa fa-xs fa-sync"},null,-1)])])),o.selected?createCommentVNode("v-if",!0):withDirectives((openBlock(),createElementBlock("input",{key:2,onKeyup:[t[2]||(t[2]=(...t)=>e.keyup&&e.keyup(...t)),t[3]||(t[3]=withKeys(withModifiers((...e)=>o.search&&o.search(...e),["stop","prevent"]),["enter"]))],class:normalizeClass(o.inputClass),onFocus:t[4]||(t[4]=e=>o.show=!0),disabled:l.disabled,placeholder:l.placeholder,"onUpdate:modelValue":t[5]||(t[5]=e=>o.query=e)},null,42,_hoisted_2$a)),[[vModelText,o.query]]),createVNode(Transition,{name:"fade",persisted:""},{default:withCtx(()=>[withDirectives(createElementVNode("div",{class:"v-resultpane",style:normalizeStyle({zIndex:2,width:"calc(100% - 2px)",position:l.floating?"absolute":"relative"})},[createElementVNode("div",_hoisted_3$7,[(openBlock(!0),createElementBlock(Fragment,null,renderList(o.data2,(t,l)=>(openBlock(),createElementBlock("div",{key:l,class:normalizeClass({"v-selected":o.selected==t,"v-focused":o.focused==l}),onClick:e=>o.setSelected(t)},[renderSlot(e.$slots,"default",{row:t})],10,_hoisted_4$6))),128)),e.data0&&e.data0.length<e.total?(openBlock(),createElementBlock("div",{key:0,class:"center",onClick:t[6]||(t[6]=e=>o.search(1))},"Load more "+toDisplayString(e.total-e.data0.length)+" results...",1)):createCommentVNode("v-if",!0)]),o.data2&&o.data2.length<1?(openBlock(),createElementBlock("div",_hoisted_5$1,"No results found.")):createCommentVNode("v-if",!0)],4),[[vShow,o.show&&!o.selected]])]),_:3})],40,_hoisted_1$j)}script$r.render=render$k,script$r.__scopeId="data-v-72884078",script$r.__file="src/v-autocomplete.vue";var script$q={name:"VButton",mounted(){var e=this,t=document.createElement("span"),l=document.createElement("i");t.className="ui-button-text ui-c ",t.innerHTML=e.$attrs.value?e.$attrs.value:"ui-button",e.$el.addEventListener("click",t=>{t.component=e}),e.$attrs.icon?(e.$attrs.value?e.$el.classList.add("v-button-text-icon-left"):e.$el.classList.add("v-button-icon-only"),l.dataset.icon=e.$attrs.icon,l.className="fa "+e.$attrs.icon,e.$el.appendChild(l)):(t=document.createElement("span"),e.$el.classList.add("ui-button-text-only"),e.$el.appendChild(t)),e.$attrs.value&&((t=document.createElement("span")).appendChild(document.createTextNode(e.$attrs.value)),e.$el.appendChild(t)),e.updateIcon()},methods:{updateIcon(){var e=this;setTimeout(function(){var t=e.$el.querySelector("svg");if(t){var l=t.dataset;l.icon||(l.icon=e.$attrs.icon)}},1e3)}}};const _hoisted_1$i={type:"button",class:"_ ui-widget ui-state-default ui-corner-all v-button"};function render$j(e,t,l,o,a,n){return openBlock(),createElementBlock("button",_hoisted_1$i)}script$q.render=render$j,script$q.__file="src/v-button.vue";var script$p={name:"VCalendar",props:{modelValue:null,type:String,required:String,readonly:String,max:String,min:String},setup(e,{emit:t}){const l=ref(null),o=e=>{t("update:modelValue",e),nextTick(()=>{t("changed",e)})},a=t=>{if(!t)return t;if("time"===e.type){const e=t.split(":");return new Date(1981,1,6,parseInt(e[0]),parseInt(e[1]),e.length>2?parseInt(e[2]):0)}if(!isNaN(t))return new Date(Number(t));if("datetime-local"===e.type){let e=t.split("T");const l=e[1].split(":");return e=e[0].split("-"),new Date(parseInt(e[0]),parseInt(e[1])-1,parseInt(e[2]),parseInt(l[0]),parseInt(l[1]),l.length>2?parseInt(l[2]):0)}const l=t.split("-"),o=parseInt(l[0]);return o<100?t:new Date(o,parseInt(l[1])-1,parseInt(l[2]))},n=t=>{if(!l.value)return;const o=a(t);let n="";o&&(n="string"==typeof o?o:"time"===e.type?pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):"datetime-local"===e.type?pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)+"T"+pad(o.getHours(),2)+":"+pad(o.getMinutes(),2):pad(o.getFullYear(),4)+"-"+pad(o.getMonth()+1,2)+"-"+pad(o.getDate(),2)),l.value.value=n};return watch(()=>e.modelValue,e=>{n(e)}),onMounted(()=>{n(e.modelValue)}),{enterD:n=>{const r=n.target.value;let s=a(r);return e.max&&s&&s.getTime()>=a(e.max).getTime()||e.min&&s&&s.getTime()<=a(e.min).getTime()?(t("invalid",{target:l.value,value:s}),void(n.target.value="")):void("time"===e.type?o(pad(s.getHours(),2)+":"+pad(s.getMinutes(),2)+":00"):s&&"function"==typeof s.getTime&&o(s.getTime()))},input:l}}};const _hoisted_1$h=["required","readonly","min","max","type"];function render$i(e,t,l,o,a,n){return openBlock(),createElementBlock("div",null,[createElementVNode("input",{ref:"input",required:l.required,readonly:l.readonly,min:l.min,max:l.max,type:l.type||"date",onChange:t[0]||(t[0]=(...e)=>o.enterD&&o.enterD(...e))},null,40,_hoisted_1$h)])}script$p.render=render$i,script$p.__file="src/v-calendar.vue";var script$o={name:"VCheckboxGroup",props:{modelValue:{type:[Array,String],default:void 0},required:String,name:String},emits:["update:modelValue"],setup(e,{emit:t}){const l=e.name||"input_"+id(),o=e=>Array.isArray(e)?[...e]:("string"==typeof e||e instanceof String)&&e?e.split("|"):[],a=computed(()=>void 0!==e.modelValue?o(e.modelValue):o(e.value)),n=e=>a.value.some(t=>t==e),r=(e,l)=>{const o=[...a.value];if(l){o.some(t=>t==e)||o.push(e)}else{const t=o.findIndex(t=>t==e);-1!==t&&o.splice(t,1)}t("update:modelValue",o)};return provide("v-checkbox-group",{name:l,isSelected:n,onChange:r}),{nam:l,onChange:r,isSelected:n}}};function render$h(e,t,l,o,a,n){return openBlock(),createElementBlock("div",null,[renderSlot(e.$slots,"default")])}script$o.render=render$h,script$o.__file="src/v-checkbox-group.vue";var script$n={name:"VCheckbox",props:{value:null,modelValue:null,valueFalse:null,label:null,readonly:null},emits:["update:modelValue","input","change"],setup(e,{emit:t}){const l=ref(null),o=inject("v-checkbox-group",null),a=computed(()=>o?o.isSelected(e.value):void 0!==e.modelValue?null!==e.value&&void 0!==e.value?e.modelValue==e.value:!!e.modelValue:e.value?e.value==e.vmodel:"true"===String(e.vmodel));return{input:l,group:o,checked:a,change:l=>{if(e.readonly)return;const a=l.target.checked;let n;o&&o.onChange(e.value,a),n=a?null===e.value||void 0===e.value||e.value:null!==e.valueFalse&&void 0!==e.valueFalse&&e.valueFalse,t("update:modelValue",n),t("change",n)},getLabel:()=>e.label?e.label:e.value&&"string"==typeof e.value?e.value:"",onClick:t=>{if(e.readonly)return t.preventDefault(),!1}}}};const _hoisted_1$g=["innerHTML"],_hoisted_2$9=["name","readonly","checked","value"];function render$g(e,t,l,o,a,n){return openBlock(),createElementBlock("label",{style:{"font-weight":"normal !important",display:"block"},class:"v-checkbox",onClick:t[2]||(t[2]=(...e)=>o.onClick&&o.onClick(...e))},[createElementVNode("span",{innerHTML:o.getLabel()},null,8,_hoisted_1$g),createElementVNode("input",{ref:"input",type:"checkbox",name:o.group?.name,readonly:!!l.readonly,checked:o.checked,value:l.value,onClick:t[0]||(t[0]=(...e)=>o.onClick&&o.onClick(...e)),onChange:t[1]||(t[1]=(...e)=>o.change&&o.change(...e))},null,40,_hoisted_2$9),t[3]||(t[3]=createElementVNode("span",{class:"checkmark"},null,-1))])}script$n.render=render$g,script$n.__file="src/v-checkbox.vue";var script$m={name:"VDataview",props:{value:Array,filterKey:String,src:String,filters:Object,store:null,itemWidth:null,rowKey:String,rowStyleClass:null,pagination:null,selectable:Boolean,scrollable:Boolean,autoload:{type:Boolean,default:!0}},data:function(){return{data:null,pages:1,page:1,columns:1,w:0,row:{},error:null,size:null,sortKey:"",selected:[],sortOrders:{},rowStyleClassFunc:null}},created(){var me=this;try{me.rowStyleClass&&(eval("me.rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}"),me.rowStyleClassFunc({},{},0))}catch(e){me.rowStyleClassFunc=null,console.log("Error en la expresion rowStyleClassFunc=function(row,item,index){return "+me.rowStyleClass+"}")}},updated(){console.log("updated"),this.$emit("updated"),this.resize()},mounted(){var e=this;e.$el.addEventListener("parentResize2",e.resize),e.autoload&&e.load(),e.resize()},methods:{resize(){var e=this;if(e.itemWidth){var t=1+Math.trunc(e.$el.offsetWidth/Number(e.itemWidth));t>6&&(t=6),e.columns=t}},async getStoredList(e){let t=new Promise(t=>{var l=window._.db.transaction(e).objectStore(e).getAll();l.onsuccess=function(){t(l.result)}});return await t},async loadStore(){let e=this,t=e.store;if(null!=t){let l;return window._.db&&(l=await e.getStoredList(t)),l||(l=[]),e.data=e.data?l.concat(e.data):l,console.log("loadStore"),console.log(e.data),e.data}},getRowClass(e,t){var l=this,o=t%l.columns+1,a=["c-w-"+l.columns];return o==l.columns&&a.push("v-last"),l.rowStyleClassFunc?a.push(l.rowStyleClassFunc(e,e,t)):a.push(l.rowStyleClass),a},remove(e){e=e.id?e.id:e;var t=this.data,l=t.map(e=>e.id).indexOf(e);t.splice(l,1)},error2(e,t){this.data=[],this.error=t},load(e){var t=this;if(this.selected=[],t.value)t.data=t.value;else{!0===e&&(t.page=1);var l=t.src;l||(l=t.$root.apiLink(window.location.pathname)),l.endsWith("/")&&(l=l.slice(0,l.length-1)),t.pagination&&(l+="/"+(t.page-1)*t.pagination+"/"+t.pagination),axios.get(l,{error:t.error2,params:t.filters}).then(function(l){if(l.data&&l.data.error)MsgBox(l.data.error);else{var o=t.value?t.value:l.data.data?l.data.data:l.data;t.data||(t.data=[]),t.data=!0===e?o:t.data?t.data.concat(o):t.data,t.size=l.data.size,l.data&&l.data.size&&(t.pages=Math.ceil(l.data.size/t.pagination),t.page>t.pages&&(t.page=1)),t.$emit("loaded",{target:t,response:l})}}).catch(t.error)}}}};const _hoisted_1$f={class:"v-dataview"};function render$f(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$f,[e.data?(openBlock(!0),createElementBlock(Fragment,{key:0},renderList(e.data,(t,l)=>(openBlock(),createElementBlock("div",{class:normalizeClass(n.getRowClass(t,l))},[renderSlot(e.$slots,"default",{row:t,item:t,index:l})],2))),256)):createCommentVNode("v-if",!0),e.data&&!e.data.length?(openBlock(),createElementBlock("div",{key:1,class:normalizeClass(["center v-no-results",{error:e.error}])},toDisplayString(e.error?e.error:"No existen registros para mostrar"),3)):createCommentVNode("v-if",!0),e.data&&e.size>e.data.length?(openBlock(),createElementBlock("div",{key:2,onClick:t[0]||(t[0]=t=>n.load(e.page++)),class:"center v-more-results"},"Ver mas resultados")):createCommentVNode("v-if",!0)])}script$m.render=render$f,script$m.__file="src/v-dataview.vue";var script$l={name:"VFieldset",props:{legend:String,closable:null},watch:{closed(e){this.$emit("change",{target:this,closed:e}),this.$emit("input",!e)}},data:()=>({closed:!1}),created(){this.closed=this.closable},mounted(){var e=this;e.$el.addEventListener("parentResize",t=>{t.$target=e,e.$emit("resize",t)})},updated(){var e=this;setTimeout(function(){var t=e.$el.querySelector("legend > * > svg");if(t)try{console.log(),t.dataset.icon=t.parentNode.dataset.icon}catch(e){console.log("icon"),console.log(e)}},50)}};const _hoisted_1$e={class:"v-fieldset"},_hoisted_2$8=["data-icon"],_hoisted_3$6=["innerHTML"],_hoisted_4$5={style:{flex:"1",display:"flex","flex-direction":"column"}};function render$e(e,t,l,o,a,n){return openBlock(),createElementBlock("fieldset",_hoisted_1$e,[l.legend?(openBlock(),createElementBlock("legend",{key:0,onClick:t[0]||(t[0]=e=>a.closed=l.closable&&!a.closed),style:normalizeStyle({cursor:l.closable?"pointer":""})},[l.closable?(openBlock(),createElementBlock("span",{key:0,"data-icon":a.closed?"plus":"minus",style:{margin:"0px 5px 0px 0px"}},[createElementVNode("i",{class:normalizeClass([a.closed?"fa-plus":"fa-minus","fa"])},null,2)],8,_hoisted_2$8)):createCommentVNode("v-if",!0),createElementVNode("span",{innerHTML:l.legend},null,8,_hoisted_3$6)],4)):createCommentVNode("v-if",!0),withDirectives(createElementVNode("div",_hoisted_4$5,[renderSlot(e.$slots,"default")],512),[[vShow,!a.closed]])])}script$l.render=render$e,script$l.__file="src/v-fieldset.vue";var script$k={name:"VForm",props:["header","store","action"],setup(e,t){const{store:l}=e,{slots:o,expose:a}=t,n=ref(null),r=inject("viewCollector");return provide("formCollector",{get:()=>({...e})}),r.push({store:l,type:"v-form",$el:n,$forceUpdate:()=>{}}),a({...e}),()=>{const t=[];return e.header&&t.push(h$1("div",{class:"v-widget-header v-panel-titlebar"},[h$1("span",{class:"v-panel-title"},e.header)])),t.push(h$1("div",{ref:n,class:"v-dialog-content v-widget-content"},[h$1("form",{action:e.action},o.default())])),h$1("div",{class:"ui-panel"},t)}},watch:{header(e){this.setTitle(e)}},data:()=>({timer:null}),methods:{setTitle(e){var t=this.$parent.app;t&&setTimeout(()=>{t.title=e},100)},getAbsoluteHeight(e){var t=window.getComputedStyle(e),l=parseFloat(t.marginTop)+parseFloat(t.marginBottom);return Math.ceil(e.offsetHeight+l)}},mounted(){var e=this;e.$el.querySelector("form").addEventListener("submit",t=>{t.preventDefault();var l=e.$parent;return l.refresh&&l.refresh(),!1}),e.setTitle(e.header)},updated(){for(var e=this.$el.querySelectorAll("[type=number]:not(._)"),t=0;t<e.length;t++){var l=()=>{var e=this,t=e.value;if(t){t=n(t),e.max&&t>n(e.max)&&(t=n(e.max)),e.min&&t<n(e.min)&&(t=n(e.min));var l=this.getAttribute("decimal");null!==l&&(t=t.toFixed(1*l)),e.value=t}};e[t].oninput=l,e[t].onblur=l,e[t].classList?e[t].classList.add("_"):e[t].className="_"}e=this.$el.querySelectorAll(".numeric:not(._)");for(t=0;t<e.length;t++)e[t].addEventListener("keyup",e=>{86==e.keyCode&&isNaN(this.value)&&(this.value="")}),e[t].addEventListener("keydown",e=>{console.log("eeeeeee"+e.keyCode),-1!==[46,8,9,27,13,110,88,86].indexOf(e.keyCode)||65===e.keyCode&&(!0===e.ctrlKey||!0===e.metaKey)||e.keyCode>=35&&e.keyCode<=40||(e.shiftKey||e.keyCode<48||e.keyCode>57)&&(e.keyCode<96||e.keyCode>105)&&e.preventDefault()}),e[t].classList?e[t].classList.add("_"):e[t].className="_"},__file:"src/v-form.vue"},script$j={name:"VGroup",props:{required:String,name:String},data:()=>({value:null,nam:null}),updated(){this.update2()},mounted(){this.update2()},created(){this.nam||(this.nam=this.$props.name?this.$props.name:"input_"+window._.id())},methods:{getInputs(e,t){var l=this;return e.children&&Array.from(e.children).forEach(e=>{"INPUT"==e.tagName?t.push(e):e.classList.contains("v-group")||l.getInputs(e,t)}),t},update2(){for(var e=this.getInputs(this.$el,[]),t=0;t<e.length;t++)e[t].value==this.$attrs.value?e[t].checked=!0:e[t].checked=!1},onChange(e){this.value=e,""===e&&(e=null),this.$emit("input",e)}}};const _hoisted_1$d={class:"v-group"};function render$d(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$d,[renderSlot(e.$slots,"default")])}script$j.render=render$d,script$j.__file="src/v-group.vue";var script$i={name:"VLayerControl",data:()=>({loaded:null,map:null,district:null,dl:null}),setup({baseURL:e="https://web.regionancash.gob.pe"},{emit:t}){const l=ref(),o=inject("collector"),a=ref(),n=ref();let r,s;return o.push(o=>{(o=>{n.value=o;let i=new Collection;l.value=i;let c=document.createElement("i");c.setAttribute("class","fa fa-expand"),o.addControl(new FullScreen({label:c,tipLabel:"Fullscreen"}));let d=new VectorSource({url:e+"/fs/geo/02.geojson",format:new GeoJSON}),u=a.value=new VectorLayer({source:d,style:e=>new Style({fill:new Fill({color:"rgba(255, 0, 0, 0.0)"}),stroke:new Stroke({color:"#4073CE",width:1}),text:new Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new Fill({color:"#4073CE"}),stroke:new Stroke({color:"#4073CE",width:.5})})}),id:"provinces"});u.onChange=e=>{let t=e.feature;s!=t.getId()&&(i.clear(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:200,callback:()=>{}}))};let p=d.on("change",()=>{let e,t=d.getFeatures();for(let l=0;l<t.length;l++)if(1*t[l].id_==1*e){u.onChange({feature:t[l]});break}unByKey(p)}),m=new VectorLayer({preload:1/0,source:new VectorSource,id:"districts",style:e=>new Style({fill:new Fill({color:"rgba(16, 110, 138, 0.0)"}),stroke:new Stroke({color:"#194300",width:1}),text:new Text({text:e.values_.name?e.values_.name.toUpperCase():"",fill:new Fill({color:"#194300"}),stroke:new Stroke({color:"#194300",width:.5})})})});o.on("moveend",()=>{if(r){if(r.id_<1e4){m.setSource(new VectorSource({url:e+"/fs/geo/"+r.id_+".geojson",format:new GeoJSON}));let t=m.getSource().on("change",()=>{unByKey(t)})}t("scope",{feature:r,target:{}}),r=null}}),u.onSelect=e=>{me.$emit("select",e)},o.addLayer(u),o.addLayer(new VectorLayer({id:"district",source:new VectorSource,style:new Style({fill:new Fill({color:"rgba(255, 150, 150, 0.0)"}),stroke:new Stroke({color:"#4073CE",width:1})})})),new Style({fill:new Fill({color:"rgba(16, 110, 138, 5.0)"})}),new Style({fill:new Fill({color:"rgba(255, 150, 150, 0.0)"})}),m.onChange=e=>{let t=e.feature;s!=t.getId()&&(2==i.getLength()&&i.pop(),i.push(t),e.preventDefault&&e.preventDefault(),s=t.getId(),r=t,o.getView().fit(t.getGeometry().getExtent(),{duration:300}))},m.onSelect=e=>{t("select",e)},o.addLayer(m),t("render",{map:o})})(o)}),{}}};function render$c(e,t,l,o,a,n){return openBlock(),createElementBlock("div",null,[renderSlot(e.$slots,"default")])}script$i.render=render$c,script$i.__file="src/v-layer-control.vue";var script$h={name:"VMapControl",setup(e,{emit:t}){const{visible:l}=e,o=ref(null),a=ref(!!l),n=inject("collector"),r=ref(null);n.push(e=>{e.addControl(new Control({element:o.value})),r.value=!0});const s=ref();return{el:o,ready:r,visible0:a,enter:e=>{e.stopPropagation(),s.value?clearTimeout(s.value):t("click",e),s.value=setTimeout(()=>{s.value=null},500)}}},props:{icon:String,visible:{default:1}},computed:{slotPassed(){return!!this.$slots.default}},data:()=>({slotUsed:!1}),updated(){var e=this.$el.querySelectorAll(":scope > :not(.v-map-control-button)").length;0==e&&(e=this.$el.textContent.trim().length),this.slotUsed=e},methods:{toggle(){this.visible0=!this.visible0}}};const _hoisted_1$c={ref:"el",class:"ol-unselectable ol-control"};function render$b(e,t,l,o,a,n){return withDirectives((openBlock(),createElementBlock("div",_hoisted_1$c,[renderSlot(e.$slots,"default"),a.slotUsed?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("button",{key:0,class:"v-map-control-button",onClick:t[0]||(t[0]=withModifiers((...e)=>o.enter&&o.enter(...e),["prevent"]))},[l.icon?(openBlock(),createElementBlock("i",{key:0,class:normalizeClass(["fa fa-xs",l.icon])},null,2)):createCommentVNode("v-if",!0)]))],512)),[[vShow,o.ready&&!0]])}script$h.render=render$b,script$h.__file="src/v-map-control.vue";class Drag extends PointerInteraction{constructor(){super({handleDownEvent:handleDownEvent,handleDragEvent:handleDragEvent,handleMoveEvent:handleMoveEvent,handleUpEvent:handleUpEvent}),this.layers_=[],this.coordinate_=null,this.listeners_=[],this.cursor_="pointer",this.feature_=null,this.previousCursor_=void 0}addLayers(e){e.forEach(e=>{this.layers_.push(e)})}$on(e,t){this.listeners_.push(t)}}function handleDownEvent(e){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return[e,t]});return o&&(this.coordinate_=e.coordinate,this.feature_=o[0]),!!o}function handleDragEvent(e){const t=e.coordinate[0]-this.coordinate_[0],l=e.coordinate[1]-this.coordinate_[1];this.feature_.getGeometry().translate(t,l),this.coordinate_[0]=e.coordinate[0],this.coordinate_[1]=e.coordinate[1]}function handleMoveEvent(e){if(this.cursor_){const t=e.map,l=this.layers_,o=t.forEachFeatureAtPixel(e.pixel,function(e,t){if(t&&l.indexOf(t)>-1)return e}),a=e.map.getTargetElement();o?a.style.cursor!=this.cursor_&&(this.previousCursor_=a.style.cursor,a.style.cursor=this.cursor_):void 0!==this.previousCursor_&&(a.style.cursor=this.previousCursor_,this.previousCursor_=void 0)}}function handleUpEvent(){return this.listeners_.forEach(e=>{e({feature:this.feature,coordinate:this.coordinate_})}),this.coordinate_=null,this.feature_=null,!1}var script$g={name:"VMap",setup(e,{emit:t,expose:l}){const o=ref(null),a=ref(null),n=ref(null),r=ref(null),s=reactive([]);provide("collector",{remove(e){s.splice(s.indexOf(e),1)},push(e){s.push(e)}});const i=e=>{a.value.addLayer(e),t("addlayer",e)},c=(e,l)=>{let o,n;e=e||{};const r=a.value;e.lon&&e.lat?(n=[e.lon,e.lat],o=new Point(n[0]>-100?fromLonLat(n):n)):o=new Point(r.getView().getCenter()),n=o.flatCoordinates;const s=n[0]<-1e4?toLonLat(n):n;t("translateend",{lon:s[0],lat:s[1]}),e.geometry=o;const i=new Feature(e);i.data=e,"object"==typeof e.style?i.setStyle(e.style):i.setStyle(r.styleMap[e.style?e.style:"default"]),n=o.flatCoordinates,n=n[0]<-1e4?toLonLat(n):n,t("translateend",{lon:n[0],lat:n[1]});const c=e.layer||"default";let d=r.getLayerById(c);if(d?d.getSource().addFeatures(i):r.addLayer(d=new VectorLayer({id:c,source:new VectorSource({features:new Collection([i])})})),e.draggable){let e=r.drag;e||(r.drag=e=new Drag,e.$on("up",({coordinate:e,feature:l})=>{const o=toLonLat(e);t("translateend",{lon:o[0],lat:o[1],feature:l})}),r.addInteraction(e),e.addLayers([d]))}return l&&r.getView().animate(Object.assign({center:i.getGeometry().getCoordinates(),zoom:17,duration:500},l)),i},d=e=>{const l={default:new Style({image:new Circle({radius:8,stroke:new Stroke({color:"#8a0000",width:2}),fill:new Fill({color:"#ff0000"})})}),star:[new Style({image:new RegularShape({fill:new Fill({color:"#ff0000"}),stroke:new Stroke({color:"#8a0000",width:2}),points:5,radius:10,radius2:4,angle:0})})]};let o=((e,t)=>{t||(t=window.location.href);const l=new RegExp("[?&]"+e+"=([^&#]*)").exec(t);return l&&l[1]||0})("location"),i=-1;if(o){let e=o.split("/");o=[parseFloat(e[0]),parseFloat(e[1])],i=e[2],n.value=!0}else o=!1;const d=new Map({target:e,layers:[new Tile({source:new OSM})],view:new View({center:[0,0],zoom:2})});d.getLayerById=function(e="default"){let t;return d.getLayers().forEach(l=>{l.get("id")!==e||(t=l)}),t},d.styleMap=l,n.value?(d.getView().setCenter(o),console.log("en el momento de cargar moved to pageLocation="+o),d.getView().setZoom(i||12),a.value=d,console.log("distarar evento buid pageLocation="+o),t("build",m)):(d.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],d.getSize()),a.value=d,t("build",{map:d}),s.forEach(e=>{e(d)})),d.getView().getZoom(),d.on("moveend",()=>{r.value&&(r.value(m),r.value=null),d.getView().getZoom()}),d.on("singleclick",e=>{let t=d.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(t){let l=t[1],o=t[0];if(e.feature=o,e.map=d,e.preventDefault(),l.onSelect)return void l.onSelect(e)}}),d.on("dblclick",e=>{let l=d.forEachFeatureAtPixel(e.pixel,(e,t)=>{if(t)return[e,t]});if(l){let o=l[1];if(l=l[0],e.feature=l,e.map=d,o.onChange)return void o.onChange(e);t("change",l),d.getView().animate({center:l.getGeometry().getCoordinates(),zoom:17,duration:500},()=>{for(let t=0;t<m.$children.length;t++){let t=m.$children[0];t.open&&t.open(e)}})}}),a.value=d,setTimeout(()=>{d.updateSize(),d.getView().fit([-8756221.995832639,-1207995.483261405,-8541070.763947014,-899052.0546471546],d.getSize()),a.value=d,t("build",{map:d,addFeature:c})},100)};return watch(o,e=>{e&&nextTick(()=>{t("beforeBuild"),d(e)})}),l({addFeature:c,addLayer:i,map:a,empty:(e="default")=>{if(e=a.value.getLayerById(e)){const t=e.getSource();if(t instanceof VectorSource){return 0===t.getFeatures().length}}return!0}}),{el:o,addLayer:i,addFeature:c}},data:()=>({moved:!1,map:null,movingCompleted:null,styleMap:null,coordinate:{}})};const _hoisted_1$b={ref:"el"};function render$a(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$b,[renderSlot(e.$slots,"default")],512)}script$g.render=render$a,script$g.__file="src/v-map.vue";var script$f={name:"VNumber",props:{value:Number,max:Number,min:Number,delay:Number},setup(e,t){const{emit:l}=t,o=ref(null);onMounted(()=>{o.value=e.value}),onUpdated(()=>{o.value=t.attrs.modelValue});return{v:o,handleInput:t=>{let a=o.value;const n=t.target.getAttribute("decimal");null!==a?(a=num(a),e.max&&a>num(e.max)&&(a=num(e.max)),e.min&&a<num(e.min)&&(a=num(e.min)),null!==n&&(a=a.toFixed(Number(n)))):a=null,o.value=t.target.value;let r=_$1.calendarTimer;r&&clearTimeout(r),e.delay?_$1.calendarTimer=setTimeout(()=>{l("input",a),_$1.calendarTimer=null},13===t.keyCode?0:e.delay):l("input",a)}}}};function render$9(e,t,l,o,a,n){return withDirectives((openBlock(),createElementBlock("input",{type:"number",onKeyup:t[0]||(t[0]=withKeys((...e)=>o.handleInput&&o.handleInput(...e),["enter"])),"onUpdate:modelValue":t[1]||(t[1]=e=>o.v=e),onInput:t[2]||(t[2]=(...e)=>o.handleInput&&o.handleInput(...e)),class:"_"},null,544)),[[vModelText,o.v,void 0,{number:!0}]])}script$f.render=render$9,script$f.__file="src/v-number.vue";var script$e={setup(e,t){const l=e,{valueField:o,displayField:a,store:n,name:r,src:s}=l,i=toRef(e,"filter"),c=useAppStore(),{expose:d,emit:u}=t,p=ref([]),m=ref([]),v=ref([]),h=ref(null),f=inject("collect");o&&(v.value=o.split("."));const g=computed(()=>{const e=(l.data||[]).concat(m.value||[]),t=i.value;return t?"string"==typeof t?e.filter(e=>JSON.stringify(e).toLowerCase().includes(t.toLowerCase())):"object"==typeof t?e.filter(e=>Object.entries(t).every(([t,l])=>null==l||""===l||String(e[t]??"").toLowerCase().includes(String(l).toLowerCase()))):e:e});watch(g,e=>{});const y=(e,t)=>{const l=v.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};let $=o,b=a;b||(b=$);const w=async(e=null,t=null,o=!1)=>{if(!o&&t&&e&&p.value.push([e,t]),!(p.value.length>1)){if(m.value=[],n){const t=await getStoredList(n);console.log(n,e),e&&Object.keys(e).length?m.value=t.filter(t=>Object.entries(e).every(([e,l])=>String(t[e]??"").startsWith(l))):m.value.push(...t)}for(s&&(l.filters&&(e=mergeDeep(e||{},l.filters)),r&&console.log(r+".options.load ",JSON.stringify(e)),await c.axios.get(s,{params:e}).then(e=>{let o=e.data.data?e.data.data:e.data;u("loaded",{target:l,data:o}),m.value=m.value.concat(o),f(m),h.value=1,t&&t()}).catch(l.error)),f(g),o||p.value.shift();p.value.length;){const e=p.value.shift()||[];await w(e[0],e[1],!0)}}};return w.getObjectByIndex=e=>{const t=g.value;return t?t[e]:null},w.getValueByIndex=e=>{const t=g.value;return t?y(t[e],1):null},w.getIndexByValue=(e,t)=>{e&&e.id?e=e.id:e&&e.code&&(e=e.code);for(let l=0;l<g.value.length;l++){const o=g.value[l];if(y(o)==e)return t&&t(l,o),l}return t&&t(-1),-1},f.push(w),onUpdated(()=>{f((l.data||[]).concat(m.value))}),onUnmounted(()=>{f.remove(w)}),d({load:w}),{filterList:g,getValueField:y,vf:$,df:b}},name:"VOptions",props:{url:String,src:String,name:String,displayField:String,data:Array,store:null,valueField:String,filters:null,filter:null,mode:null},updated(){let e=this;!e.loaded&&e.data&&(e.data2=e.data)},methods:{getParentE(){return this.$el.parentElement.parentElement},getSelectedItem(){let e=this.$el.parentElement;return this.filterList[e.selectedIndex-1]}}};const _hoisted_1$a=["value"];function render$8(e,t,l,o,a,n){return openBlock(!0),createElementBlock(Fragment,null,renderList(o.filterList,(t,l)=>(openBlock(),createElementBlock("option",{key:l,value:o.vf?o.getValueField(t):t.id||t.code||JSON.stringify(t)},[renderSlot(e.$slots,"default",{item:t},()=>[createTextVNode(toDisplayString(o.df?t[o.df]:t),1)])],8,_hoisted_1$a))),128)}script$e.render=render$8,script$e.__file="src/v-options.vue";var ol=window.ol,_=window._,axios$1=window.axios,script$d={name:"VOverlay",props:{value:{value:Object},src:String,width:{default:400},header:String},data:()=>({coordinate:null,overlay:null,location:null,ele:null,c:0}),created(){var e=this;e.$parent.$on("beforeBuild",t=>{console.log(t),e.overlay=new ol.Overlay({element:e.$el,positioning:"bottom-right"})}),e.$parent.$on("build",t=>{t.map.addOverlay(e.overlay)})},mounted(){var e=this;e.header&&e.$el.childNodes[0].addEventListener("mousedown",function(t){const l=e.$el.parentElement;var o=window.getComputedStyle(l),a=parseFloat(o.left),n=parseFloat(o.top),r=t.clientX,s=t.clientY,i=l.parentElement;function c(e){l.style.left=a+e.clientX-r+"px",l.style.top=n+e.clientY-s+"px"}i.addEventListener("mousemove",c,!1),i.addEventListener("mouseup",function(){i.removeEventListener("mousemove",c,!1)},!1)},!1)},methods:{close(){this.overlay&&this.overlay.setPosition()},hasSlot(e="default"){return!!this.$slots[e]||!!this.$scopedSlots[e]},load(){var e=this;axios$1.get(_.remoteServer+e.src).then(t=>{e.$emit("input",t.data)})},open(e){for(var t=this,l=e.map,o=e.feature,a=t.overlay,n=a.element,r=t.$parent.$children,s=0;s<r.length;s++)r[s].close&&(r[s].$el.style.opacity=0,r[s].close());e.coordinate?t.coordinate=e.coordinate:(e.coordinate=l.getView().getCenter(),t.coordinate=null),a.setPosition(e.coordinate);var i=l.getView().getCenter(),c=l.getView().getResolution(),d=o?o.getGeometry().getCoordinates():[null],u=l.getPixelFromCoordinate(Number(d[0])?d:e.coordinate);if(this.src)axios$1.get(_.remoteServer+this.src).then(e=>{t.$emit("input",e.data),t.c++,setTimeout(function(){var e=l.viewport_.offsetWidth,o=l.viewport_.offsetHeight,r=n.children[0].children[1];r.scrollTop=0;var s=n.offsetHeight;r.style.height=s+100>=o?o-100-n.children[0].children[0].offsetHeight+"px":"300px",s=n.offsetHeight;var d=1*t.width,p=e<=d+40?e-40:d;if(n.style.zIndex=10,n.style.width=p+"px",p/=2,l.getView().animate({center:[i[0]+(u[0]+p+20>=e?+(u[0]+p+20-e):u[0]-20-p<0?-p+u[0]-20:0)*c,i[1]+(u[1]<s?s-u[1]:0)*c],duration:500}),u[0]=u[0]+p-0,u[1]=u[1]-12,a.setPosition(l.getCoordinateFromPixel(u)),t.$el.style.opacity=1,_.mobil)for(var m=a.getElement().querySelectorAll("a:not(._)"),v=0;v<m.length;v++)m[v].addEventListener("click",_.open2)},400)}).catch(e=>{console.log(e)});else{var p=l.viewport_.offsetWidth,m=l.viewport_.offsetHeight,v=n.children[0].children[1];v.scrollTop=0;var h=n.offsetHeight;console.log(n.offsetHeight),v.style.height=h+100>=m?m-100-n.children[0].children[0].offsetHeight+"px":"300px",h=n.offsetHeight;var f=1*t.width,g=p<=f+40?p-40:f;if(n.style.zIndex=10,n.style.width=g+"px",g/=2,l.getView().animate({center:[i[0]+(u[0]+g+20>=p?+(u[0]+g+20-p):u[0]-20-g<0?-g+u[0]-20:0)*c,i[1]+(u[1]<h?h-u[1]:0)*c],duration:500}),u[0]=u[0]+g-0,u[1]=u[1]-12,a.setPosition(l.getCoordinateFromPixel(u)),t.$el.parentNode.style.opacity=0,t.$el.style.opacity=1,t.$el.parentNode.style.top=(m-t.$el.offsetHeight)/2+"px",t.$el.parentNode.style.opacity=1,_.mobil){var y=a.getElement().querySelectorAll("a:not(._)");for(s=0;s<y.length;s++)y[s].addEventListener("click",_.open2)}t.$emit("opened",{target:t})}}}};const _hoisted_1$9={class:"v-ol-overlay"},_hoisted_2$7={key:0,class:"v-panel-titlebar"},_hoisted_3$5={key:2,style:{"text-align":"center"}};function render$7(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$9,[l.header?(openBlock(),createElementBlock("div",_hoisted_2$7,[createElementVNode("span",{class:"v-icon v-icon-close",onClick:t[0]||(t[0]=(...e)=>n.close&&n.close(...e))},[...t[1]||(t[1]=[createElementVNode("i",{class:"fa fa-times"},null,-1)])]),createTextVNode(toDisplayString(l.header),1)])):createCommentVNode("v-if",!0),(openBlock(),createElementBlock("div",{class:"v-ol-body",key:"c-"+a.c,style:{padding:"10px"}},[l.value?renderSlot(e.$slots,"default",{key:0,value:l.value}):createCommentVNode("v-if",!0)])),n.hasSlot("footer")&&l.value?(openBlock(),createElementBlock("footer",{key:"f-"+a.c},[renderSlot(e.$slots,"footer",{value:l.value})])):createCommentVNode("v-if",!0),a.coordinate?(openBlock(),createElementBlock("div",_hoisted_3$5,[...t[2]||(t[2]=[createElementVNode("img",{src:_imports_0,width:"20",height:"18"},null,-1)])])):createCommentVNode("v-if",!0)])}script$d.render=render$7,script$d.__file="src/v-overlay.vue";var script$c={name:"VPanel",props:{header:String}};const _hoisted_1$8={class:"ui-panel"},_hoisted_2$6={key:0,class:"v-panel-titlebar v-widget-header ui-helper-clearfix ui-corner-all"},_hoisted_3$4={class:"v-panel-title"},_hoisted_4$4={class:"v-panel-content v-dialog-content v-widget-content"};function render$6(e,t,l,o,a,n){return openBlock(),createElementBlock("div",_hoisted_1$8,[l.header?(openBlock(),createElementBlock("div",_hoisted_2$6,[createElementVNode("span",_hoisted_3$4,toDisplayString(l.header),1)])):createCommentVNode("v-if",!0),createElementVNode("div",_hoisted_4$4,[renderSlot(e.$slots,"default")])])}script$c.render=render$6,script$c.__file="src/v-panel.vue";var script$b={__name:"v-popup",props:{width:{type:String,default:"600px"},name:{type:String,default:null}},emits:["success","close"],setup(e,{expose:t,emit:l}){const o=e,a=l,n=useRouter(),r=ref(!1),s=shallowRef(null),i=ref({}),c=inject("viewCollector"),d=inject("refresh",null),u=async(e=null,t=null)=>{if(!e)return s.value=null,i.value=t??{},void(r.value=!0);const l=await(async e=>{let t=n.getRoutes().find(t=>t.name===e),l={};if(!t){const o=n.resolve(e);t=o.matched.at(-1),l=o.params}if(!t)throw new Error(`No existe la ruta "${e}"`);let o=t.components?.default??t.component;if(!o)throw new Error(`La ruta "${e}" no tiene componente`);if("function"==typeof o){const e=await o();o=e.default??e}return{component:o,params:l}})(e);s.value=l.component,i.value={...l.params,...t??{}},r.value=!0},p=e=>{r.value=!1,a("close",e),s.value=null},m=async(e=null)=>{e?.success&&d?.(),p(e)};return c.push({open:u,props:o,type:"v-popup"}),t({open:u,close:p}),(t,l)=>(openBlock(),createBlock(Teleport,{to:"body"},[r.value?(openBlock(),createElementBlock("div",{key:0,class:"popup-overlay",onClick:withModifiers(p,["self"])},[createElementVNode("div",{class:"popup",style:normalizeStyle({width:e.width})},[createElementVNode("button",{type:"button",class:"popup-close",onClick:p}," ✕ "),createCommentVNode(" Componente cargado por ruta "),s.value?(openBlock(),createBlock(resolveDynamicComponent(s.value),mergeProps({key:0},i.value,{callback:m}),null,16)):(openBlock(),createElementBlock(Fragment,{key:1},[createCommentVNode(" Si no hay componente, mostrar slot "),renderSlot(t.$slots,"default",{close:p,callback:m})],2112))],4)])):createCommentVNode("v-if",!0)]))},__file:"src/v-popup.vue"},script$a={name:"VRadio",props:{value:String,label:String,className:String},methods:{getClass(){return"v-radio "+this.className}},mounted(){var e=this,t=e.$el.querySelector("input");e.$parent&&e.$parent.nam&&(t.name=e.$parent.nam),t.onclick=function(){}},updated(){this.$el.querySelector("input")}};const _hoisted_1$7=["value"];function render$5(e,t,l,o,a,n){return openBlock(),createElementBlock("label",{class:normalizeClass(n.getClass())},[createTextVNode(toDisplayString(l.label?l.label:l.value)+" ",1),createElementVNode("input",{type:"radio",value:l.value},null,8,_hoisted_1$7),t[0]||(t[0]=createElementVNode("span",{class:"checkmark"},null,-1)),renderSlot(e.$slots,"default")],2)}script$a.render=render$5,script$a.__file="src/v-radio.vue";var script$9={__name:"v-radio-group",props:{required:String,name:String,modelValue:String,items:{type:Array},type:{type:String,default:"radio"},label:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=ref(l.modelValue),{proxy:n}=getCurrentInstance(),r=new Set,s=(e,t)=>(e.children&&Array.from(e.children).forEach(e=>{"INPUT"===e.tagName?t.push(e):e.classList&&e.classList.contains("v-group")||s(e,t)}),t),i=()=>{const e=s(n.$el,[]);let t=l.name;t||(t="input_"+Date.now().toString(36)+Math.random().toString(36).substring(2,15));const o=""===n.$props.required||n.$props.required;let i=!1;for(let l=0;l<e.length;l++)e[l].name=t,r.has(e[l])||(e[l].addEventListener("change",c),r.add(e[l])),e[l].checked=null!=a.value&&e[l].value===String(a.value),e[l].checked&&(i=!0),e[l].required=o,o&&(a.value?e[l].nextElementSibling.classList.remove("required"):e[l].nextElementSibling.classList.add("required"));i&&removeError(e[0].parentNode.parentNode)},c=e=>{let t=e.target.value;""===t&&(t=null),a.value=t,o("update:modelValue",t)};watch(()=>l.modelValue,e=>{a.value=e,i()}),onMounted(()=>{i()}),onUpdated(()=>{i()});const d=()=>{const e=[];return n.$slots.default&&e.push(...n.$slots.default()),l.items&&e.push(...l.items.map(e=>h$1(script$a,{className:l.required&&!l.modelValue?"required":null,...e,modelValue:a.value,"onUpdate:modelValue":c}))),h$1("div",{class:"v-radio-group"},[l.label&&h$1("label",l.label),...e])};return(e,t)=>(openBlock(),createBlock(d))},__file:"src/v-radio-group.vue"},script$8={name:"VSelect",setup(e,t){const{slots:l,emit:o}=t,{valueField:a,disabled:n,readonly:r,autoload:s,name:i}=e,c=ref([]),d=ref([]),u=ref(null),p=ref([]),m=[],v=ref(!(s+""=="false"||1*s==0)),h=ref(null),f=e=>{null!=e&&""!==e?Array.isArray(e)?_.value=[...e]:_.value=String(e).split(","):_.value=[]},g=t=>{const l=unref(t)||[];c.value=Array.isArray(l)?l.filter(e=>null!=e):[],nextTick(()=>{e.multiple?f(e.modelValue):y(e.modelValue||u.value)})},y=t=>{let l=t||e.modelValue;if(h.value){let t=h.value,a=t.selectedIndex;l&&""!==l||(t.selectedIndex=0),log(i,"value===",l);const n=l?""+(l.id||l.code||l):l;for(let e=0;e<t.length;e++)t[e].value===n&&(t.selectedIndex=e);const r=m;for(let n=0;n<r.length;n++){if(!r[n].getValueByIndex)continue;let s=r[n].getValueByIndex(a-1);r[n].getIndexByValue(l,(a,d)=>{if(a>-1){let d=r[n].getObjectByIndex(a),p=Number(s);p=isNaN(p)?s?!!l&&(l.id?l.id==s.id:l==s):!l:p==Number(l),u.value!=e.modelValue&&(log(i,"select.value",l,"object=",d),e.modelValue&&(u.value=e.modelValue),p||(log(i,"select.updateSelect="+l+" "+JSON.stringify(c.value.length)),t.selectedIndex=a+1,o("update:modelValue",l,{value:l,select:t,object:d}),nextTick(()=>{o("input",l,{value:l,select:t,object:d})})))}else e.modelValue&&(u.value=e.modelValue),log(i,"select.updateselect.not fout",a),o("update:modelValue",null,null),nextTick(()=>{o("input",null,{value:null})}),t.selectedIndex=0})}}};g.remove=e=>{const t=m.filter(t=>t!==e);m.length=0,t.forEach(e=>m.push(e))},g.push=e=>{m.push(e)},a&&(d.value=a.split(".")),provide("collect",g);const $=(e,t)=>{const l=d.value;if(l&&l.length)for(let t=0;t<l.length;t++)e&&(e=e[l[t]]);else e&&!t&&(e=e.id?e.id:e.code?e.code:e);return e};watch(()=>e.modelValue,(t,l)=>{t!=l&&(e.multiple?f(t):y())}),watch(()=>e.disabled,(e,t)=>{b(e,t)});const b=(e,t)=>{e=!!e,t=!!t;let l=p.value;log(i,"activate.newVal=",e,"oldVal=",t),!e&&!e===t&&l.length&&w(l[0],l[1])},w=(t,l)=>{e.disabled?(log(i,"select.load.params=",t),p.value=[t,l],m.forEach(e=>{e(t,l)})):(p.value=[],m.forEach(e=>{e(t,l)}))};onMounted(()=>{v.value&&w()});const k=ref(!1),_=ref([]),S=ref(!1),x=ref(""),E=()=>{k.value=!1},V=()=>{const e=[..._.value].map(String).sort(),t=[...x.value].map(String).sort();if(e.length!==t.length||e.some((e,l)=>e!==t[l])){const t=e.length?e.join(","):null;o("update:modelValue",t)}E()},C=()=>{_.value&&_.value.length&&_.value.join(","),console.log(_)};return{options:c,getValueField:$,onChange:e=>{e.stopPropagation();let t=e.target.value;const l=h.value;log(i,"select.onchange=",t),t&&""!==t||(t=null,l.selectedIndex=0);let a,n=0;const r=c.value;for(let e=0;e<m.length;e++){if(n=m[e].getValueByIndex(l.selectedIndex-1),-1!=n){a=m[e].getObjectByIndex(l.selectedIndex-1);break}n=0}n?(log(i,"change=found=",n),t=n):r.length&&(l.selectedIndex=0),o("update:modelValue",t,{value:t,select:l,object:a}),nextTick(()=>{o("input",t,{value:t,select:l,object:a})})},selectRef:h,load:w,lastLoad:p,autoload_:v,expand:t=>{if(e.readonly)return t.preventDefault(),!1},show:k,sel:_,sela:S,toggle:()=>{k.value||(x.value=[..._.value]),k.value=!k.value,k.value||V()},close:E,apply:V,selectAll:e=>{console.log("selectAll.checked=",e),_.value=e?c.value.map(e=>$(e)):[],C()},checkboxInput:C}},props:{modelValue:null,required:null,readonly:null,multiple:null,label:null,name:null,disabled:null,autoload:null,valueField:null},data:()=>({data:[],popup:null,tmp:[],sel2:[]}),watch:{show(e){if(e){let e=this.$refs.button,t=this.popup;t||(t=this.$refs.popup,t.style.position="absolute",document.body.append(t));let l=e.getBoundingClientRect();const o=t.children[0];window.innerWidth<400?(t.style.padding="40px",t.style.height="100%",o.style.height="100%"):(t.style.top=l.bottom+0+"px",t.style.left=l.left+0+"px",t.style.maxHeight=window.innerHeight-l.bottom-30+"px",o.style.maxHeight=t.style.maxHeight),o.style.display="flex",o.style.flexDirection="column"}}}};const _hoisted_1$6={class:"v-select",style:{position:"relative"}},_hoisted_2$5=["required","disabled","click"],_hoisted_3$3={ref:"popup",class:"v-popup"},_hoisted_4$3={class:"center"};function render$4(e,t,l,o,a,n){const r=resolveComponent("v-checkbox"),s=resolveComponent("v-checkbox-group"),i=resolveComponent("v-button");return openBlock(),createElementBlock("div",_hoisted_1$6,[l.readonly?createCommentVNode("v-if",!0):withDirectives((openBlock(),createElementBlock("select",{key:0,style:{width:"100%"},ref:"selectRef",onChange:t[0]||(t[0]=(...e)=>o.onChange&&o.onChange(...e)),required:l.required,disabled:l.disabled,click:o.expand},[renderSlot(e.$slots,"default")],40,_hoisted_2$5)),[[vShow,!l.multiple]]),l.multiple?(openBlock(),createElementBlock(Fragment,{key:1},[createElementVNode("div",{class:normalizeClass(["v-widget-header v-button v-filter",{"v-selected":o.show||o.sel.length}]),ref:"button",style:{"padding-top":"7px","padding-bottom":"7px"},onClick:t[1]||(t[1]=(...e)=>o.toggle&&o.toggle(...e))},[o.sel.length?(openBlock(),createElementBlock(Fragment,{key:0},[createTextVNode(" ("+toDisplayString(o.sel.length)+") ",1)],64)):createCommentVNode("v-if",!0),t[4]||(t[4]=createTextVNode("   ",-1))],2),withDirectives(createElementVNode("div",_hoisted_3$3,[createElementVNode("div",null,[createElementVNode("div",null,[createVNode(r,{modelValue:o.sela,"onUpdate:modelValue":t[2]||(t[2]=e=>o.sela=e),onChange:o.selectAll},null,8,["modelValue","onChange"])]),createVNode(s,{class:"v-select-checkbox-group",style:{"overflow-y":"auto"},modelValue:o.sel,"onUpdate:modelValue":t[3]||(t[3]=e=>o.sel=e),onInput:o.checkboxInput},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(o.options,e=>(openBlock(),createBlock(r,{value:e.id,label:e.name},null,8,["value","label"]))),256))]),_:1},8,["modelValue","onInput"]),createElementVNode("div",_hoisted_4$3,[createVNode(i,{icon:"fa-sync",value:"Filtrar",onClick:o.apply},null,8,["onClick"])])])],512),[[vShow,o.show]])],64)):createCommentVNode("v-if",!0),l.readonly?(openBlock(),createElementBlock(Fragment,{key:2},[createTextVNode(toDisplayString(l.label?l.label:"---"),1)],64)):createCommentVNode("v-if",!0)])}script$8.render=render$4,script$8.__file="src/v-select.vue";var script$7={name:"VSwitch",props:{modelValue:{type:Boolean,default:null}},emits:["update:modelValue"],data:()=>({options:["NO","SI"]}),computed:{selected(){return!0===this.modelValue?"SI":!1===this.modelValue?"NO":null}},methods:{onChange(e){this.$emit("update:modelValue","SI"===e||"NO"!==e&&null)}}};const _hoisted_1$5=["data-value"],_hoisted_2$4=["onClick"];function render$3(e,t,l,o,a,n){return openBlock(),createElementBlock("div",{class:"v-switch","data-value":String(l.modelValue)},[(openBlock(!0),createElementBlock(Fragment,null,renderList(a.options,e=>(openBlock(),createElementBlock("div",{key:e,onClick:t=>n.onChange(e),class:normalizeClass({"v-selected":e===n.selected})},toDisplayString(e),11,_hoisted_2$4))),128))],8,_hoisted_1$5)}script$7.render=render$3,script$7.__file="src/v-switch.vue";var script$6={name:"VTable",emits:["dblclick","row-select","loaded"],setup(e,t){const{autoload:l,src:o,rowKey:a="id",store:n,groups:r}=e,s=useAppStore(),i=inject("viewCollector"),c=inject("formCollector"),d=ref(1),u=ref(0),p=ref(null),m=ref(1),v=ref([]),h=ref([]),f=ref(null),g=ref(1),y=computed(()=>{const t=e,l=h.value;let o,a;return l.sum=sum,l.filter(e=>{for(var l in t.filters)if(o=t.filters[l],"function"==typeof o){if(!o(e))return 0}else if(o&&"string"==typeof o&&l in e&&(a=e[l],"string"==typeof a&&(a=a.toUpperCase().normalize("NFD").replace(/[\u0300-\u036f]/g,""),!a.includes(o.toUpperCase()))))return 0;return 1})}),$=computed(()=>{let e=y.value;return e=f?e.sort((e,t)=>{t=(t=t[f])||0,e=e[f];const l=Number(e);return l&&(e=l),e<t?-1*g:e>t?1*g:0}):e,e.sum=sum,e}),b=computed(()=>{const e=function(e){return this.reduce((t,l)=>"number"==typeof e||"string"==typeof e?t+(l[e]||0):t,0)};Array.prototype.sum=e;const t={},l=r;return l?$.value.forEach(o=>{const a=o[l];if(!t[a]){const l=[];l.sum=e,t[a]=l}t[a].push(o)}):$.value.length&&(t[""]=$),Object.entries(t).map(([e,t])=>({name:e,values:t}))}),w=ref(1),k=ref(1),{slots:_,expose:S,emit:x}=t;watch(()=>e.value,t=>{e.src||(h.value=Array.isArray(t)?t:[])},{immediate:!0,deep:!0});const E=getCurrentInstance(),V=async()=>{if(null!=n){let e;db&&(e=await getStoredList(n)),e||(e=[]),h.value=h.value?e.concat(h.value):e}return h.value},C=(e,t,l)=>{d.value&&0==whichChild(e.target)||N(t,l,1)},N=(e,t,l)=>{-10===t?y.value.length===v.value.length?v.value=[]:v.value=y.value.map(e=>e):l?d.value||!v.value.includes(e)?v.value=[e]:(v.value=[],e=null):v.value.includes(e)?(v.value.splice(v.value.indexOf(e),1),e=null):v.value.push(e),x("row-select",{target:this,current:e,selection:v})},B=e=>v.value.includes(e),I=t=>{const l=[];return e.selectable&&B(t)&&l.push("v-selected"),e.rowStyleClass&&("string"==typeof e.rowStyleClass?l.push(e.rowStyleClass):e.rowStyleClass&&l.push(e.rowStyleClass(t))),l},L=(e,t)=>{T(e,t)},T=(e,t)=>{(w.value!=e||t)&&(w.value=e,F())};let A=""+e.selectable;d.value="false"!=A&&"0"!=A?1:0,A=""+e.scrollable,u.value=e.scrollable&&"false"!=A&&"0"!=A?1:0;const F=()=>{const t=e;if(v.value=[],t.value&&(h.value=[],h.value=t.value,x("loaded",{target:t}),x("row-select",{}),t.remoteLoaded=1,t.loaded=1,m.value++),o){let e=o;e.endsWith("/")&&(e=e.slice(0,e.length-1));const l=t.pagination;if(l&&(e+="/"+(w.value-1)*l+"/"+l),networkStatus.connected){let a;if(t.gql){const e=t.gql,n="query{"+Object.keys(e)[0]+"(offset:"+(w.value-1)*l+" limit:"+l+"){\ndata{"+e[Object.keys(e)[0]]+"}\nsize\n}\n}";a=s.axios.post(o,{query:n})}else a=s.axios.get(e,{params:clean(t.filters)});a.then(e=>{if(e.data&&e.data.error)MsgBox(e.data.error);else{let o=e.data;t.gql&&(o=e.data.data[Object.keys(t.gql)[0]]),h.value=o.data||o,o&&o.hasOwnProperty("size")&&l&&(k.value=Math.ceil(o.size/l),w.value>k.value&&(w.value=1),t.size=o.size),V(),x("loaded",{target:t}),x("row-select",{}),t.remoteLoaded=1,t.loaded=1,m.value++}}).catch(t.error)}else{h.value=[];const e=V();e.then&&e.then(e=>{h.value=e}),x("row-select",{target:t})}}m.value++,t.loaded=1},D=computed(()=>v.value.length);F.rowSelectedCount=D,F.src=o,c&&(F.getForm=c.get),F.rowKey=a,F.rowSelect=N;const M=e=>p.value===e;F.is=M,F.remove=e=>{const t=h.value.findIndex(t=>t===e);-1!==t&&h.value.splice(t,1)},F.selected=v,F.type="v-table",i.push(F);const O=e=>{13===e.keyCode&&(e.preventDefault(),F())};return onMounted(()=>{!0===l&&F(),setTimeout(()=>{const e=E.proxy,t=e.$el.querySelectorAll(".v-cloned-header div > span"),l=Math.max(...Array.from(t).map(e=>e.offsetHeight));t.forEach(e=>{e.style.height=l+"px"});e.$el.querySelectorAll("v-filter").forEach(e=>{e.querySelectorAll("input").forEach(e=>e.addEventListener("keyup",O))})},100)}),onUnmounted(()=>{i.remove(F)}),S({load:F,rowSelectedCount:D,j_is:M}),()=>{let t=0;const l=_.default({row:{}}),o=[];l.forEach((e,l)=>{const a=e.props;e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{a.filter=t,e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{a.footer=t,e.children.shift()})),t+=a.width?Number(a.width):0,o.push({filter:a.filter,header:a.header,width:a.width})}),t+=d.value?42:0;const a=h$1("div",{className:"v-datatable-scrollable-header-box",style:"left: 0px;"},h$1("table",{className:"v-cloned-header v-table",style:{width:`${t}px`}},[d.value?h$1("th",{width:42},[h$1("span",{onclick(){N(null,-10)},className:"v-check"},h$1(FontAwesomeIcon,{icon:v.value.length?faSquareCheck:faSquare,class:"fa-lg"}))]):null,o.map(e=>h$1("th",e,h$1("div",[h$1("span",{style:"display: flex;justify-content: center;align-items: center;"},[e.header]),h$1("v-filter",e.filter?.children)])))]));return h$1("div",{ref:p,className:"v-datatable "+e.class},[_.header?h$1("div",{className:"v-datatable-header v-widget-header ui-corner-top"},_.header()):null,e.pagination?h$1("div",{className:"v-paginator v-paginator-top v-widget-header v-paginator-pages center"},[h$1(script$q,{value:"|<",disabled:w.value<=1,onClick:()=>L(1)}),h$1(script$q,{value:"<",disabled:w.value<=1,onClick:()=>L(w.value-1)}),h$1("div",{style:"padding:3px 8px;display:inline-block"},[h$1("input",{type:"number",style:"width:60px",value:w.value,onInput:e=>L(Number(e.target.value),!0)}),"/"+k.value]),h$1(script$q,{value:">",disabled:w.value==k.value,onClick:()=>L(w.value+1)}),h$1(script$q,{value:">|",disabled:w.value==k.value,onClick:()=>L(k.value)})]):null,h$1("div",{className:"v-widget-header v-datatable-scrollable-header",style:"position: relative; margin-right: 0px;"},a),h$1("div",{className:"v-datatable-scrollable-body",style:"overflow-y: auto; flex:1",onScroll(e){const t=e.currentTarget.scrollLeft;a.el.style.transform="translateX(-"+t+"px)"}},[h$1("table",{className:"v-table",style:{width:`${t}px`}},[h$1("thead",{className:"v-head-cloned"},[d.value?h$1("th",{width:42}):null,...o.map(e=>h$1("th",{width:e.width}))]),h$1("tbody",{className:"v-datatable-data",key:m.value},b.value.length<1?h$1("td",{colspan:o.length+(d.value?1:0)},e.emptyMessage):[b.value.map(e=>[_["header-group"]?h$1("tr",{className:"v-header-group"},[_["header-group"]({group:e})]):null,(e.values.value||e.values).map((e,t)=>{const l=_.default({row:e,index:t});return l.forEach((e,t)=>{e.children&&"function"==typeof e.children.filter&&(e.children.filter(e=>"v-filter"==e.type).forEach(t=>{e.children.shift()}),e.children.filter(e=>"v-footer"==e.type).forEach(t=>{e.children.shift()}))}),h$1("tr",{class:I(e),onDblclick(l){C(l,e,t),x("dblclick",l)},onclick(l){C(l,e,t)}},[d.value?h$1("td",{className:"center"},h$1("span",{onclick(){N(e,t)},className:"v-check"},h$1(FontAwesomeIcon,{icon:B(e)?faSquareCheck:faSquare,class:"fa-lg"}))):null,...l])}),_["footer-group"]?h$1("tr",{className:"v-footer-group"},[d.value?h$1("td"):null,_["footer-group"]({group:e})]):null,_["extra-group"]?_["extra-group"]({group:e,groups:b.value}):null])])])])])}},props:{class:null,value:Array,filterKey:String,reflow:null,summary:null,src:String,gql:null,filters:Object,store:null,width:null,emptyMessage:{default:"No existen registros"},groups:{default:""},rowKey:{default:"id"},rowStyleClass:null,pagination:null,selectable:{default:!0},scrollable:null,autoload:{default:!0}},data:()=>({resizeAfterUpddate:0,active:0,keyBody:1,row:{},kt:0,size:null,sortKey:"",paginatio_:0,remoteLoaded:null,loaded:!1,sortOrders:{},rowStyleClassFunc:null}),created(){const me=this;me.$parent.tabs||(me.active=1),me.paginatio_=me.pagination?me.pagination:0,me.rowStyleClass&&eval("me.rowStyleClassFunc=function(row){return "+me.rowStyleClass+"}")},beforeUpdate(){this.active&&this.value},filters:{capitalize:e=>e?e.charAt(0).toUpperCase()+e.slice(1):e},methods:{hasSlot(e){return!!this.$slots[e]},sortBy(){},filter(){alert(12)}},__file:"src/v-table.vue"},script$5={name:"VTabview",data:()=>({tabs:[],height:0,currentTabIndex:0,k:0}),methods:{load(e){var t=new Event("command",{bubbles:!1});t.name="refresh",t.target=this.$el,this.$el.children[1+this.currentTabIndex].dispatchEvent(t)},reset(){this.load(this.k++)}},watch:{currentTabIndex(e){var t=this,l=t.$el.children[e+1];if(t.$children[e+1],l){var o=new Event("tabChange",{bubbles:!1});o.$target=t,l.dispatchEvent(o),t.$el.style.height=t.height+"px",(o=new Event("parentResize",{bubbles:!1})).height=t.$el.offsetHeight-25,l.style.height=o.height+"px",setTimeout(()=>{l.dispatchEvent(o)},2)}}},updated(){for(var e=this.$el.children,t=1;t<e.length;t++)e[t].tagName&&(t-1===this.currentTabIndex&&(e[t].style.display="flex",e[t].style.flex="1",e[t].style.flexDirection="column"),t-1===this.currentTabIndex?e[t].classList.remove("hide"):(e[t].style.display="none",e[t].classList.add("hide"))),console.log(e[t])},mounted(){for(var e=this,t=e.$el.children,l=1;l<t.length;l++)t[l].style.display="none",e.tabs.push({title:""+t[l].getAttribute("tab")});e.$el.addEventListener("parentResize",l=>{e.$el.style.height=l.height+1+"px",e.height=l.height+1;var o=new Event("parentResize",{bubbles:!1});o.height=e.$el.offsetHeight-25,o.target=e.$el,o.$target=e;for(var a=1;a<t.length;a++)"none"!=t[a].style.display&&(console.log("Se envia el alto "+o.height),t[a].style.height=o.height+"px",t[a].dispatchEvent(o));e.$emit("resize",o)}),t[1+e.currentTabIndex].setAttribute("active",1);var o=new Event("tabChange",{bubbles:!1});o.$target=e,t[1+e.currentTabIndex].dispatchEvent(o)}};const _hoisted_1$4={class:"v-tab-nav"},_hoisted_2$3=["onClick"];function render$2(e,t,l,o,a,n){return openBlock(),createElementBlock("div",{class:"v-tabview",style:normalizeStyle({height:a.height+"px"})},[createElementVNode("ul",_hoisted_1$4,[(openBlock(!0),createElementBlock(Fragment,null,renderList(a.tabs,(e,t)=>(openBlock(),createElementBlock("li",{class:normalizeClass({"v-selected":t==a.currentTabIndex}),key:t,onClick:e=>a.currentTabIndex=t},toDisplayString(e.title),11,_hoisted_2$3))),128))]),renderSlot(e.$slots,"default")],4)}script$5.render=render$2,script$5.__file="src/v-tabview.vue";var script$4={name:"VTextarea",props:{modelValue:String},setup(e,{emit:t}){const l=ref(null),o=()=>{l.value&&(l.value.style.height="auto",l.value.value&&(l.value.style.height=`${l.value.scrollHeight}px`))},a=()=>{nextTick(o)};return watch(()=>e.modelValue,a,{immediate:!0}),onMounted(()=>{const e=l.value;e&&(e.addEventListener("change",o),e.addEventListener("cut",a),e.addEventListener("paste",a),e.addEventListener("drop",a),e.addEventListener("keydown",a),a())}),{textarea:l,updateValue:e=>{t("update:modelValue",e.target.value),a()}}}};const _hoisted_1$3=["value"];function render$1(e,t,l,o,a,n){return openBlock(),createElementBlock("textarea",{ref:"textarea",value:l.modelValue,onInput:t[0]||(t[0]=(...e)=>o.updateValue&&o.updateValue(...e))},null,40,_hoisted_1$3)}script$4.render=render$1,script$4.__file="src/v-textarea.vue";const _hoisted_1$2={style:{cursor:"pointer"}},_hoisted_2$2=["disabled"],_hoisted_3$2=["data-icon"],_hoisted_4$2=["value"];var script$3={__name:"v-uploader",props:{value:String,onlyicon:Boolean,click:Function,icon:String,domain:String,dst:String,disabled:{type:Boolean,default:!1}},emits:["update:value","input"],setup(e,{emit:t}){const l=e,o=t,a=ref(0),n=ref(!1);function r(){l.disabled||l.click&&l.click()}function s(e){if(l.disabled)return void(e.target.value="");const t=e.target.files?.[0];t&&(a.value=0,function(e,t){if(l.disabled)return;const r=new FormData;if(t=t||e.name.replace(/[^\w\s.]/gi,""),r.append("filename",t),r.append("file",e,t),l.dst){const e=l.dst.endsWith("\\")?l.dst+t:l.dst+"\\"+t;r.append("dst",e)}n.value=!0,axios$2.post((l.domain||"")+"/api/file/upload",r,{headers:{"Content-Type":"multipart/form-data"},onUploadProgress:e=>{a.value=Math.round(100*e.loaded/(e.total||1))}}).then(e=>{o("input",e.data),o("update:value",e.data)}).catch(e=>{console.error("Upload error:",e)}).finally(()=>{n.value=!1})}(t))}return(t,l)=>(openBlock(),createElementBlock("div",{class:normalizeClass(["v-uploader",[e.onlyicon?"":"v-button ui-widget ui-state-default ui-corner-all",{disabled:e.disabled}]]),style:normalizeStyle({padding:e.onlyicon?"0px":""}),onClick:r},[createElementVNode("label",_hoisted_1$2,[e.click?createCommentVNode("v-if",!0):(openBlock(),createElementBlock("input",{key:0,type:"file",disabled:e.disabled,onChange:s},null,40,_hoisted_2$2)),createElementVNode("i",{class:normalizeClass(["fa",e.icon||"fa-upload"]),"data-icon":e.icon,style:normalizeStyle({marginRight:e.onlyicon||!e.value?"":"10px"})},null,14,_hoisted_3$2),createTextVNode(" "+toDisplayString(e.onlyicon?"":e.value??"Adjuntar Archivo")+" ",1),n.value?(openBlock(),createElementBlock("progress",{key:1,max:"100",value:a.value,style:{width:"100%"}},null,8,_hoisted_4$2)):createCommentVNode("v-if",!0)])],6))},__file:"src/v-uploader.vue"},script$2={name:"VItem",setup:({href:e},{emit:t})=>({click:()=>{e?useAppStore().router.push({path:e}):t("click")}}),props:{icon:String,style:Object,label:String,href:String}};function render(e,t,l,o,a,n){return openBlock(),createElementBlock(Fragment,null,[createElementVNode("li",{onClick:t[0]||(t[0]=(...e)=>o.click&&o.click(...e)),style:normalizeStyle(l.style)},[createElementVNode("i",{class:normalizeClass(["fa",l.icon])},null,2),createTextVNode(toDisplayString(l.label)+" ",1),renderSlot(e.$slots,"label")],4),createElementVNode("ul",null,[renderSlot(e.$slots,"default")])],64)}script$2.render=render,script$2.__file="src/v-item.vue";const _hoisted_1$1={style:{padding:"20px"}},_hoisted_2$1={class:"v-form"},_hoisted_3$1=["onUpdate:modelValue"],_hoisted_4$1={style:{"padding-top":"5px"},class:"right"};var script$1={__name:"v-filter-date",props:{modelValue:{type:String,default:null},name:{type:String,default:""},min:{type:String,default:null},max:{type:String,default:null}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=ref(null),n=ref(!1),r=ref(null);const s=ref([{operator:"=",value:null}]);let i=null;const c=computed(()=>!!l.modelValue),d=ref(""),u=computed(()=>{const e=l.name||d.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function p(){d.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map($).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function m(){n.value=!1,i&&(unmask(i),i=null)}function v(){s.value.push({operator:"=",value:null})}function h(e){return e||null}function f(){const e=h(s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>{const t=function(e){if(!e)return null;return date(e,"date-")||null}(e.value);return t?`${e.operator}${t}`:null}).filter(Boolean).join("&"));e!==h(l.modelValue)&&o("update:modelValue",e),m()}function g(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],m()}function y(){m()}function $(e){const t=e.match(/^(>=|<=|>|<|=)(\d{4}-\d{2}-\d{2})$/);return t?{operator:t[1],value:t[2]}:null}return(t,l)=>{const o=resolveComponent("v-button"),i=resolveComponent("v-calendar"),d=resolveComponent("center"),m=resolveComponent("v-panel");return openBlock(),createElementBlock(Fragment,null,[createVNode(o,{ref_key:"button",ref:r,class:normalizeClass(["v-filter",{"v-selected":c.value}]),icon:"fa-calendar",onClick:withModifiers(p,["prevent","stop"])},null,8,["class"]),(openBlock(),createBlock(Teleport,{to:"body"},[withDirectives(createVNode(m,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:u.value},{default:withCtx(()=>[createElementVNode("div",_hoisted_1$1,[createElementVNode("div",_hoisted_2$1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(s.value,(t,a)=>(openBlock(),createElementBlock("div",{key:a,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[withDirectives(createElementVNode("select",{"onUpdate:modelValue":e=>t.operator=e,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...l[0]||(l[0]=[createElementVNode("option",{value:">="},">=",-1),createElementVNode("option",{value:">"},">",-1),createElementVNode("option",{value:"="},"=",-1),createElementVNode("option",{value:"<"},"<",-1),createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3$1),[[vModelSelect,t.operator]]),createVNode(i,{modelValue:t.value,"onUpdate:modelValue":e=>t.value=e,style:{flex:"1"},min:e.min,max:e.max},null,8,["modelValue","onUpdate:modelValue","min","max"]),createVNode(o,{icon:"fa-trash",onClick:withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(a),["prevent"])},null,8,["onClick"])]))),128)),createElementVNode("div",_hoisted_4$1,[createVNode(o,{icon:"fa-plus",onClick:withModifiers(v,["prevent"])})])]),createVNode(d,{style:{"padding-top":"20px"}},{default:withCtx(()=>[createVNode(o,{icon:"fa-check",value:"Aceptar",onClick:f}),createVNode(o,{icon:"fa-times",value:"Limpiar",onClick:g}),createVNode(o,{icon:"fa-ban",value:"Cancelar",onClick:withModifiers(y,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vShow,n.value]])]))],64)}},__file:"src/v-filter-date.vue"};const _hoisted_1={style:{padding:"20px"}},_hoisted_2={class:"v-form"},_hoisted_3=["onUpdate:modelValue"],_hoisted_4=["onUpdate:modelValue"],_hoisted_5={style:{"padding-top":"5px"},class:"right"};var script={__name:"v-filter-number",props:{modelValue:{type:String,default:null},name:{type:String,default:""}},emits:["update:modelValue"],setup(e,{emit:t}){const l=e,o=t,a=ref(null),n=ref(!1),r=ref(null);const s=ref([{operator:"=",value:null}]);let i=null;const c=computed(()=>!!l.modelValue),d=ref(""),u=computed(()=>{const e=l.name||d.value;return e?`Filtro [${e}]`:"Filtro Fecha"});async function p(){d.value=function(){const e=r.value?.$el??r.value;return e?.closest("th")?.getAttribute("header")||""}(),function(){if(!l.modelValue)return void(s.value=[{operator:"=",value:null}]);const e=l.modelValue.split("&").map(y).filter(e=>null!==e);s.value=e.length>0?e:[{operator:"=",value:null}]}(),n.value=!0,await nextTick();const e=a.value?.$el??a.value;e&&(i=mask(e))}function m(){n.value=!1,i&&(unmask(i),i=null)}function v(){s.value.push({operator:"=",value:null})}function h(){const e=s.value.filter(e=>null!==e.value&&""!==e.value).map(e=>`${e.operator}${e.value}`).join("&");o("update:modelValue",e||null),m()}function f(){o("update:modelValue",null),s.value=[{operator:"=",value:null}],m()}function g(){m()}function y(e){const t=e.match(/^(>=|<=|>|<|=)(-?\d+(?:\.\d+)?)$/);return t?{operator:t[1],value:t[2]}:null}return(e,t)=>{const l=resolveComponent("v-button"),o=resolveComponent("center"),i=resolveComponent("v-panel");return openBlock(),createElementBlock(Fragment,null,[createVNode(l,{ref_key:"button",ref:r,class:normalizeClass(["v-filter",{"v-selected":c.value}]),icon:"fa-hashtag",onClick:withModifiers(p,["prevent","stop"])},null,8,["class"]),(openBlock(),createBlock(Teleport,{to:"body"},[withDirectives(createVNode(i,{ref_key:"panel",ref:a,class:"popup",style:{"text-align":"left",position:"absolute",padding:"0px !important"},header:u.value},{default:withCtx(()=>[createElementVNode("div",_hoisted_1,[createElementVNode("div",_hoisted_2,[(openBlock(!0),createElementBlock(Fragment,null,renderList(s.value,(e,o)=>(openBlock(),createElementBlock("div",{key:o,style:{display:"flex","align-items":"center",gap:"5px","margin-bottom":"5px"}},[withDirectives(createElementVNode("select",{"onUpdate:modelValue":t=>e.operator=t,style:{"padding-left":"20px","padding-right":"20px",width:"80px"}},[...t[0]||(t[0]=[createElementVNode("option",{value:">="},">=",-1),createElementVNode("option",{value:">"},">",-1),createElementVNode("option",{value:"="},"=",-1),createElementVNode("option",{value:"<"},"<",-1),createElementVNode("option",{value:"<="},"<=",-1)])],8,_hoisted_3),[[vModelSelect,e.operator]]),withDirectives(createElementVNode("input",{"onUpdate:modelValue":t=>e.value=t,type:"number",style:{width:"120px",flex:"1"}},null,8,_hoisted_4),[[vModelText,e.value]]),createVNode(l,{icon:"fa-trash",onClick:withModifiers(e=>function(e){s.value.splice(e,1),0===s.value.length&&s.value.push({operator:"=",value:null})}(o),["prevent"])},null,8,["onClick"])]))),128)),createElementVNode("div",_hoisted_5,[createVNode(l,{icon:"fa-plus",onClick:withModifiers(v,["prevent"])})])]),createVNode(o,{style:{"padding-top":"20px"}},{default:withCtx(()=>[createVNode(l,{icon:"fa-check",value:"Aceptar",onClick:h}),createVNode(l,{icon:"fa-times",value:"Limpiar",onClick:f}),createVNode(l,{icon:"fa-ban",value:"Cancelar",onClick:withModifiers(g,["prevent"])})]),_:1})])]),_:1},8,["header"]),[[vShow,n.value]])]))],64)}},__file:"src/v-filter-number.vue"},components={InputTextarea:script$s,VItem:script$2,InputText:script$t,VAutocomplete:script$r,VButton:script$q,VCalendar:script$p,VFilterDate:script$1,VFilterNumber:script,VCheckboxGroup:script$o,VCheckbox:script$n,VDataview:script$m,VFieldset:script$l,VForm:script$k,VGroup:script$j,VLayerControl:script$i,VMapControl:script$h,VMap:script$g,VNumber:script$f,VOptions:script$e,VOverlay:script$d,VPanel:script$c,VPopup:script$b,VRadioGroup:script$9,VRadio:script$a,VSelect:script$8,VSwitch:script$7,VTable:script$6,VTabview:script$5,VTextarea:script$4,VUploader:script$3};const VForm=components.VForm,IsobitUI={install(e){setApp(e),e.BUILT_ON=import.meta.env.VITE_APP_BUILT_ON;for(const t in components)if(components.hasOwnProperty(t)){const l=components[t];e.component(l.name||t,l)}}};setTimeout(resize,400),window.addEventListener("resize",()=>{setTimeout(resize,400)});const removeError=e=>{let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)},ui=e=>{const l={computed:{user:()=>_$1.app.session,perms(){return this.session?.perms||this.session?.allcaps||{}}},data(){return{app2:null,ui:this,_session:null,x_connected_:null,row:{},networkStatus:{connected:null}}},methods:{get(e){let t=this.$el.querySelector("form").action;window.location.href=this.apiLink(t)+"/"+e},async sync(e){let t=this,l=t.$el.querySelector("form").getAttribute("action");if(!l){l=t.$el.parentNode.getAttribute("path");let e=l.split("/");e="edit"==e[e.length-1]?e.splice(0,e.length-2):e.splice(0,e.length-1),l=t.apiLink(e.join("/"))}let o=t.$children[0].$children[0];l=o.src;let a=await t.getStoredList(o.store),n=o.selected,r=[],s=[];for(let e=0;e<n.length;e++){let t=o.data[n[e]];if(t.tmpId&&!t.synchronized)for(let e=0;e<a.length;e++)if(a[e].tmpId==t.tmpId){let t=JSON.clone(a[e]);delete t.synchronized,s.push(t),r.push(e)}}r.length>0&&axios.post(l+"/bulk"+(e.sufix?e.sufix:""),s).then(function(e){let l=e.data;for(let e=0;e<l.length;e++){if(l[e].errors){MsgBox$1(JSON.stringify(l[e].errors));break}if(l[e].error){MsgBox$1(l[e].error);break}for(let t=0;t<a.length;t++)(l[e].ext&&l[e].ext.tmpId==a[t].tmpId||l[e].tmpId==a[t].tmpId)&&(log("ui.ok"),l[e].ext&&a.ext&&(a[t].ext.error=l[e].ext.error),l[e].id&&(a[t].id=l[e].id),a[t].synchronized=1,emit("sync",l[e],a[t]))}t.setStoredList(o.store,a),t.refresh()}).catch(function(e){e.response?MsgBox$1(e.response.data):console.log(e)})}}};e||(e={data:{o:{}}});const{setup:o,...a}=e,n=o;return e={mixins:[l,a],setup(e,l){const o=useAppStore();setApp(o),o.config(getConfigApp());const a=e;let r=useRouter();const s=getCurrentInstance(),c=reactive([]),d={remove(e){c.splice(c.indexOf(e),1)},push(e){c.push(e)}},u=e=>{},p=async e=>{const t=s.proxy,l=_$1.db;let a;try{a=JSON.parse(sessionStorage.getItem("loadedStores"))}catch(e){}if(null==a&&(a={}),!a[e]&&t.connected){let t=_$1.stores.filter(t=>t[0]==e)[0];if(!t[2])throw`ERROR: Url for store '${t[0]}' is empty!`;let{data:n}=await o.axios.get(t[2]);n=n.data||n,await new Promise((o,r)=>{let s=l.transaction([t[0]],"readwrite"),i=s.objectStore(t[0]);const c=i.clear();c.onsuccess=()=>{n.forEach(e=>{i.add(e).onerror=e=>{console.error(`⚠️ Store '${e[0]}' error addd data!`,e)}})},c.onerror=()=>{console.error(`⚠️ Store '${t[0]}' error data!`,t)},s.oncomplete=()=>{a[e]=1,sessionStorage.setItem("loadedStores",JSON.stringify(a)),o()},s.onerror=e=>{console.error(`ERROR: ⚠️ Error en la transacción for store '${e[0]}'!`,e),r()}})}return await new Promise((t,o)=>{if(l){const o=l.transaction(e).objectStore(e).getAll();o.onsuccess=()=>{t(o.result)}}else console.log("1=========>db=",window._.db),o("=======>db is null esta faltando")})},m=()=>{c.find(e=>"v-table"==e.type)()};provide("refresh",m);const v=(e,t,l)=>{let o=c.find(e=>"v-popup"==e.type);if(console.log(e),e.open)e.open();else if(o&&(e instanceof String||"string"==typeof e))o.open(e);else if(!(e.$el||e instanceof HTMLElement)){let t=e,l=t.target;return"string"==typeof t?l=t:"ION-ITEM"==l.tagName&&l.href?(t.preventDefault(),l=l.href):(t.preventDefault(),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l.pathname||(l=l.parentNode),l=l.pathname),void(r.path!==l&&r.push(l))}},h=(e,t,l)=>{"string"==typeof t&&(t={body:t});let a="string"==typeof l?{fileName:l}:l;a||(a={}),(""+t?o.axios.post(e,t,{responseType:"blob"}):o.axios({method:"post",url:e,data:t,headers:{"Content-Type":"multipart/form-data"}})).then(e=>{const t=window.URL.createObjectURL(new Blob([e.data])),l=document.createElement("a");if(l.href=t,!a.fileName){const t=e.headers["content-disposition"];if(t&&-1!==t.indexOf("attachment")){const e=/filename[^;=\n]*=((['"]).*?\2|[^;\n]*)/.exec(t);null!=e&&e[1]&&(a.fileName=e[1].replace(/['"]/g,"").trim())}else console.warn("content-disposition: attachment; filename = <filename>; header no es accesible o no esta definido correctamente")}l.setAttribute("download",a.fileName),document.body.appendChild(l),l.click()})},f=n=>{const r=n?.target?.closest("form"),d=r?.closest(".v-msgbox")?.closest(".v-overlay");let u=c.filter(e=>"v-form"===e.type).find(e=>e.$el?.children?.[0]===r);u||(u=c.find(e=>"v-form"===e.type));const m=s.proxy;u.$forceUpdate();let v=u.$el,h=v.querySelector("form");if(y(h)){let n=h.getAttribute("action"),r=m.data||m.o,s=JSON.parse(JSON.stringify(r));if(m.process&&(s=m.process(s)),"object"!=typeof s||Array.isArray(s)||null===s)return;if(console.log("action/componet==",n,m,l),n&&o.connected)o.axios.post(n,s).then(t=>{let l=t.data;if(s.tmpId){alert(12);let e=a.$children[0].store,t=window._.db.transaction([e],"readwrite").objectStore(e),o=t.get(s.tmpId);l.id&&(s.id=l.id,r.id=s.id),o.onsuccess=function(){let e;r.synchronized=1,s.synchronized=1,e=o.result?t.put(s):t.add(s),e.onerror=e=>{console.error(e)},a.$emit("sync",l,s)},o.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}o&&o.toast?o.toast("El registro fue grabado exitosamente!",()=>{console.log(e),m.close({success:!0,data:l}),d?.closeDialog?.(1)}):MsgBox$1("El registro fue grabado exitosamente! msg",()=>{w({success:!0,data:l}),d?.closeDialog?.(1)})}).catch(function(e){if(e.response){let l,o;if("string"==typeof e.response.data)MsgBox$1(e.response.data);else{l=e.response.data.propertyViolations;for(let e=0;e<l.length;e++){let t=l[e];o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message)}for(l=e.response.data.fieldViolations,i=0;i<l.length;i++)t=l[i],o=h.querySelector("[name="+t.path+"]"),o&&a.showerror(o,t.message+", valor="+t.value);MsgBox$1("Verifique el formulario, aun tiene campos obligatorio completar."),"v-dialog"==a.$el.parentNode.className&&a.$el.parentNode.parentNode.scroll({top:0,behavior:"smooth"})}}});else{console.log("se guarda localmente");const e=c[0].store;if(!e)return void MsgBox$1("Store in form is undefined!");p(e).then(t=>{if(t||(t=[]),s.id)for(let e=0;e<t.length;e++)t[e].tmpId==s.tmpId&&(delete s.synchronized,t[e]=s);let l=_$1.db.transaction([e],"readwrite").objectStore(e);if(s.id){delete s.synchronized;let e=l.get(s.tmpId);e.onsuccess=function(){e.result?l.put(s):t.forEach(e=>{e.tmpId==s.tmpId&&l.put(s)}),a.$emit("stored",s,t,l),a.$ionic&&o.toast("El registro fue grabado exitosamente! onstored"),m.close({success:!0,data:s})},e.onerror=function(){MsgBox$1("Error getting temporal record "+s.tmpId)}}else{s.tmpId=1*new Date,s.id=-s.tmpId;let e=l.add(s);e.onsuccess=e=>{t.unshift(s),a.$emit("stored",s,t,l),o&&o.toast&&o.toast("El registro fue grabado exitosamente! storeeeeee not connected"),r.tmpId=s.tmpId,r.id=s.id,console.log("========>>",m),m.close({success:!0,data:s})},e.onerror=e=>{o&&o.toast&&o.toast("Error!")}}})}}else MsgBox$1("Verifique el formulario, aun tiene campos obligatorios sin completar."),"v-dialog"==v.parentNode.className?v.parentNode.parentNode.scroll({top:0,behavior:"smooth"}):v.querySelector("form > .v-form").scroll({top:0,behavior:"smooth"})},g=(e,t)=>{e.$el&&(e=e.$el),removeError(e);let l=e.previousElementSibling;for(;l&&1!=l.nodeType;)l=l.previousElementSibling;if(!l)for(l=e.parentElement.previousElementSibling;l&&1!=l.nodeType;)l=l.previousElementSibling;let o=document.createElement("div");o.innerHTML="Este campo es requerido!",o.classList.add("v-error"),e.parentNode.insertBefore(o,e)},y=e=>{const t=[],l=[],o=s.proxy;e=e&&0!=e?e:o.$el;const a=e?.querySelectorAll("input,select,textarea,div[required=required]");let n,r={};for(let e=0;a?.length>e;e++){let o=a[e];if("radio"===o.type){let e=r[o.name];e||(r[o.name]=e=[]),e.push(o);continue}if(o.error&&(o.error.style.display="none"),!o.disabled&&!o.getAttribute("disabled")&&(o.required||"DIV"===o.tagName))if("DIV"!=o.tagName&&!o.value||"DIV"===o.tagName&&!o.attributes.value){for(n=o.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;if(!n)for(n=o.parentElement.previousElementSibling;n&&1!=n.nodeType;)n=n.previousElementSibling;t.push(o)}else l.push(o)}for(let e in r)if(Object.prototype.hasOwnProperty.call(r,e)){const o=r[e];let a=!1,s=!1;for(let e=0;e<o.length;e++)o[e].required&&!o[e].disabled&&(s=!0),o[e].checked&&(a=!0);const i=o[0].parentNode.parentNode;n=i.previousElementSibling,n&&n.classList&&n.classList.contains("v-error")&&n.parentNode.removeChild(n),s&&!a?t.push(i):l.push(i)}for(const e of t)g(e);for(const e of l){let t=e.previousElementSibling;t&&t.classList&&t.classList.contains("v-error")&&t.parentNode.removeChild(t)}return!t.length},$=(e,t)=>{let l=e.parentElement;for(;l;){const e=l.querySelector(t);if(e)return e;l=l.parentElement}return null},b=e=>{const t=$(e.target,".v-datatable");let l=c.filter(e=>"v-table"==e.type).find(e=>e.is(t)),o=l.getForm().action;var a;o||(o=window.location.pathname),l&&l.src&&(o=l.src),e.action&&(o=e.action),o&&(a=o.replace("/api","").replace("/0/0",""),o="/admin"+a);const n=l.selected.value[0];let r=n[l.rowKey];n.tmpId&&(r=-n.tmpId),v(o+"/"+r+"/edit")},w=t=>{t&&e.callback&&e.callback(t)};provide("viewCollector",d);const k=computed(()=>{let e=c.find(e=>e.selected?.value.length>0);return e?.rowSelectedCount||0}),_=computed(()=>clean(S.value)),S=reactive({}),x=ref(null);let E;watch(S,()=>{c.find(e=>"v-table"==e.type)&&(x.value&&clearTimeout(x.value),x.value=setTimeout(()=>{m()},1200))});const V=()=>{clearTimeout(E),E=setTimeout(()=>{const e=document.querySelector(".v-datatable");e?.parentNode&&buildPopupMenu(e)},100)};onMounted(()=>{r=useRouter(),l.emit("sync",{u:9}),V(),window.addEventListener("resize",V)}),onUnmounted(()=>{window.removeEventListener("resize",V)});const C=computed(()=>o.axios.defaults.baseURL),N=computed(()=>o.session);let B=n?n({...e,$on:(e,t)=>{},router:r,getStoredList:p,app:o,save:f,open:v,refresh:m,saveAs:h,edit:b},l):{};l.expose({router:r});let I={app:o,cleanedFilters:_,router:r,baseURL:C,filters:S,session:N,date:date,pad:pad,getStoredList:p,refresh:m,getSelected:()=>c.find(e=>"v-table"==e.type).selected.value,saveAs:h,validate:y,save:f,open:v,close:w,create:e=>{const t=$(e.target,".v-datatable");let l=c.filter(e=>"v-table"==e.type).find(e=>e.is(t)).getForm().action;l||(l=window.location.pathname),l&&(l=l.replace("/api","")),l+="/create",o&&v(l)},edit:b,destroy:e=>{let t=this;const l=$(e.target,".v-datatable");let a=c.filter(e=>"v-table"==e.type).find(e=>e.is(l));c.find(e=>"v-table"!=e.type).action;let n=e.$vnode?e.load:null,r=a.rowKey,s=a.selected.value[0];if(s.tmpId)MsgBox$1("Esta seguro que desea eliminar los registros temporales seleccionados ?",function(e){if(0==e){let e=0,l=_$1.db.transaction([a.store],"readwrite").objectStore(a.store),r=[];for(let t=a.selected.length-1;t>=0;t--)s=a.data[a.selected[t]],r.push(s),s.tmpId&&l.delete(s.tmpId),e++,a.data.splice(a.selected[t],1);e&&(o&&o.toast?o.toast(e+" registros eliminados"):MsgBox$1(e+" registros eliminados")),a.rowSelect(null,-1),a.selected=[],t.$emit("destroyed",r,a.store),n&&n()}},["SI","NO"]);else{if(!r)return alert("Table don`t have defined attribute 'rowkey'");let e=s[r];MsgBox$1("Esta seguro que desea eliminar el registro seleccionado?",t=>{if(0==t){const t=a.src.replace("/0/0",""),l=[];let n=a.selected.value.length-1;o.axios.delete(t+"/"+e,{params:S.value}).then(()=>{for(;n>=0;n--)s=a.selected.value[n],l.push(s),a.remove(s);o&&o.toast?o.toast(l.length+" registros eliminados"):MsgBox$1(l.length+" registros eliminados"),a.rowSelect(null,-1),a.selected.value=[]}).catch(u)}},["SI","NO"])}},rowSelectedCount:k,...B};return I}},e};export{Drag,IsobitUI,MsgBox$1 as MsgBox,VForm,_$1 as _,app,date,db,getStoredList,id,initDB,mask,pad,removeError,resize,setupApp,ui,unmask,useAppStore};
@@ -2,6 +2,7 @@ export declare const useAppStore: import("pinia").StoreDefinition<"connection",
2
2
  connected: import("vue").Ref<boolean, boolean>;
3
3
  session: import("vue").Ref<Record<string, any> | null, Record<string, any> | null>;
4
4
  logout: () => void;
5
+ refreshSession: () => Promise<Record<string, any>>;
5
6
  unauthorized: import("vue").Ref<boolean, boolean>;
6
7
  connect: (value: Record<string, any>) => void;
7
8
  authenticated: import("vue").ComputedRef<boolean>;
@@ -14,6 +15,7 @@ export declare const useAppStore: import("pinia").StoreDefinition<"connection",
14
15
  connected: import("vue").Ref<boolean, boolean>;
15
16
  session: import("vue").Ref<Record<string, any> | null, Record<string, any> | null>;
16
17
  logout: () => void;
18
+ refreshSession: () => Promise<Record<string, any>>;
17
19
  unauthorized: import("vue").Ref<boolean, boolean>;
18
20
  connect: (value: Record<string, any>) => void;
19
21
  authenticated: import("vue").ComputedRef<boolean>;
@@ -26,6 +28,7 @@ export declare const useAppStore: import("pinia").StoreDefinition<"connection",
26
28
  connected: import("vue").Ref<boolean, boolean>;
27
29
  session: import("vue").Ref<Record<string, any> | null, Record<string, any> | null>;
28
30
  logout: () => void;
31
+ refreshSession: () => Promise<Record<string, any>>;
29
32
  unauthorized: import("vue").Ref<boolean, boolean>;
30
33
  connect: (value: Record<string, any>) => void;
31
34
  authenticated: import("vue").ComputedRef<boolean>;
@@ -34,4 +37,4 @@ export declare const useAppStore: import("pinia").StoreDefinition<"connection",
34
37
  router: import("vue").Ref<any, any>;
35
38
  online: import("vue").ComputedRef<any>;
36
39
  networkStatusChange: (status: any) => void;
37
- }, "logout" | "connect" | "config" | "networkStatusChange">>;
40
+ }, "logout" | "refreshSession" | "connect" | "config" | "networkStatusChange">>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "isobit-ui",
3
- "version": "1.2.1",
3
+ "version": "1.2.2",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "main": "dist/library.js",