{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/utils/axiosWrapper.ts","webpack:///./src/components/QrScannerInput.vue?0d9c","webpack:///./src/App.vue","webpack:///./src/components/DownloadBanner.vue","webpack:///src/components/DownloadBanner.vue","webpack:///./src/components/DownloadBanner.vue?2200","webpack:///./src/components/DownloadBanner.vue?14f3","webpack:///./src/components/BottomNavigation.vue","webpack:///BottomNavigation.vue","webpack:///./src/components/BottomNavigation.vue?a799","webpack:///./src/components/BottomNavigation.vue?88ab","webpack:///./src/components/ScannerQr.vue","webpack:///./src/components/QrScannerInput.vue","webpack:///./src/components/QrScannerInput.vue?f45c","webpack:///./src/components/QrScannerInput.vue?fee7","webpack:///./src/components/QrScannerInput.vue?36d5","webpack:///./src/components/ScannerQr.vue?caf8","webpack:///./src/components/ScannerQr.vue?c059","webpack:///./src/components/ScannerQr.vue?a412","webpack:///App.vue","webpack:///./src/App.vue?22f9","webpack:///./src/App.vue?3aa8","webpack:///./src/modules/auth/router.js","webpack:///./src/modules/auth/store.js","webpack:///./src/modules/auth/index.js","webpack:///./src/modules/home/router.js","webpack:///./src/modules/home/store.js","webpack:///./src/modules/home/index.js","webpack:///./src/store/index.js","webpack:///./src/modules/facturas/router.js","webpack:///./src/modules/facturas/store.js","webpack:///./src/modules/facturas/index.js","webpack:///./src/modules/borradores/router.js","webpack:///./src/modules/borradores/store.js","webpack:///./src/modules/borradores/index.js","webpack:///./src/modules/descargas/router.js","webpack:///./src/modules/descargas/store.js","webpack:///./src/modules/descargas/index.js","webpack:///./src/modules/tickets/router.js","webpack:///./src/modules/tickets/store.js","webpack:///./src/modules/tickets/index.js","webpack:///./src/modules/audios/router.js","webpack:///./src/modules/audios/store.js","webpack:///./src/modules/audios/index.js","webpack:///./src/modules/leads/router.js","webpack:///./src/modules/leads/store.js","webpack:///./src/modules/leads/index.js","webpack:///./src/router/index.js","webpack:///./src/components/icons/donvatio.vue","webpack:///./src/components/icons/donvatio.vue?7015","webpack:///./src/components/icons/donvatio.vue?dbc1","webpack:///./src/utils/customIcons.ts","webpack:///./src/plugins/vuetify.js","webpack:///./src/registerServiceWorker.js","webpack:///./src/locales/es.js","webpack:///./src/locales/pt.js","webpack:///./src/plugins/i18n.js","webpack:///./src/main.js","webpack:///./src/utils/validations.js","webpack:///./src/modules/contratos/router.js","webpack:///./src/modules/contratos/store.js","webpack:///./src/modules/contratos/index.js","webpack:///./src/components/ConfirmDialog.vue","webpack:///src/components/ConfirmDialog.vue","webpack:///./src/components/ConfirmDialog.vue?c534","webpack:///./src/components/ConfirmDialog.vue?0380","webpack:///./src/App.vue?d98c","webpack:///./src/components/ScannerQr.vue?2043","webpack:///./src/utils/index.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","updateOptions","options","url","httpRequest","args","default","pending","makeRequest","extra_options","json","axios","transform","response","responseType","JSON","parse","text","transformError","lazy","refresh","_vm$$route","staticClass","_vm","_v","_s","staticStyle","_c","attrs","$store","$vuetify","breakpoint","mobile","_l","tab","events","_setup","theme","dark","$event","on","stopPropagation","burgerMenu","scopedSlots","$$v","style","DownloadBanner","callback","$set","snack","expression","scanningQr","model","ScannerQr","qr","ref","staticRenderFns","render","this","_self","deferredPrompt","created","addEventListener","preventDefault","querySelector","getters","getTenant","manifest","methods","prompt","component","link","alert","store","getCurrentInstance","proxy","route","$route","menu","computed","getMenu","filter","bottom","sort","a","b","props","hasCamera","QrcodeStream","qrDetected","QrScannerInput","directives","rawName","domProps","composing","__name","emits","__props","emit","refs","$refs","nextTick","$nextTick","setFocus","textareaUrl","focus","toQrResult","log","rawValue","__sfc","videoInputs","cameras","root","$root","tipoEscaner","qrFile","qrResult","formData","FormData","content","append","method","$emit","detail","vuetify","meta","$meta","router","$router","i18n","$i18n","set","addApp","async","tenant","headers","location","hostname","slug","light","keys","forEach","themes","primary","locale","pais","toLowerCase","dispatch","watch","reactive","show","msg","defaultProps","color","resumen","loading","reloadMenu","$axios","estados_llamadas","linkDonvatio","block","open","title","mod","icon","icon_inactive","main","acceso","contratosDetenidos","tc","borradoresSinEnviar","facturasPendientes","verificacionesPendientes","Vue","h","VSimpleTable","dense","class","map","llamada","leads","mensajes_sin_leer","btnText","btnClass","click","sec","logout","confirm","confirmColor","changeTheme","localStorage","setItem","onMounted","_store$getters","app","$on","_msg","colors","routes","path","children","beforeEnter","to","from","next","isLoggedIn","urlB64ToUint8Array","base64String","padding","repeat","base64","replace","rawData","atob","outputArray","Uint8Array","charCodeAt","decode64","TextDecoder","decode","auth","state","token","getItem","permisos","refreshLock","Date","now","estados","getToken","getTokenPayload","split","getPermisos","getEstados","mutations","removeItem","login","setEstados","stringify","setTenant","setPermisos","per","actions","commit","user","password","db","Authorization","token_type","access_token","baseURL","refreshToken","requiresAuth","setMenu","use","Vuex","Store","home","assign","query","params","VueRouter","contratos","facturas","borradores","descargas","tickets","audios","redirect","x","base","process","validarToken","exp","getTime","beforeEach","matched","some","record","_setupProxy","icons","donvatio","Vuetify","mq","matchMedia","storedTheme","matches","customProperties","iconfont","values","customIcons","lang","locales","es","current","register","registrationOptions","scope","ready","registered","cached","updatefound","updated","offline","common","dragAndDrop","aceptar","cancelar","ok","tipo","nombre","recargar","editar","volver","guardar","subir","validar","eliminar","cups","exportar","cargados","cargar_mas","descargar","busqueda","ver","audios_gana","venta","legal","certificado","subir_todo","nif_no_detectado","subida_ok","archivo","borrador","ok_result","mensaje","revision","error_result","anular","motivo","enviar_consentimiento","mail","usuario","pass","noticias","novedades","mas_menos","inicio","documentos","verificaciones","llamadas","comparativas","comparativas_qr","chat","tarjetas","nuevo","fecha","comer","tipo_contrato","tarifa","potencia","consumo","oferta","dni_titular","nombre_titular","dni_firmante","telefono","telefono2","nombre_firmante","cp_cups","pob_cups","dir_cups","prov_cups","telf","email","iban","otros","cups2","refcomer","refcomer2","cnae","cambiotit","cambiopot","fecha_act","dir_corres","cp","cp_corres","per_contacto","telf2","prod_adicionales","documentacion","adjunta_doc","validacion_ok","cups_o_titular","intervalo","factura_electronica","pago_domiciliado","not_found","error_subir","verificacion","adjuntar","estado","motivo_dev","motivo_anu","motivo_det","datos","factura","bimp","ver_doc","ver_fac","motivo_anulacion","comentario","agente","historico","vacio","comers","pago_fac","cuenta_pago","desglose","razon_social","nif","fecha_fac","n_doc","iva","irpf","total","dir","pob","prov","contenido","lineas","hist","ver_contrato","fechafactura","numerofactura","bifactura","totalfactura","estadofactura","archivos_adjuntos","escribe_aqui","adjuntar_archivos","VueI18n","messages","pt","_store$getters2","_store$getters3","_store$getters4","config","productionTip","portal","VueHotkey","parseFloat","toFixed","parseDate","App","includes","permiso","$mount","req","Array","isArray","String","CUPS","toUpperCase","Math","fmod","Number","floor","toPrecision","status","RegExPattern","match","CUPS_16","substr","control","fmodv","imod","parseInt","quotient","remainder","dc1","dc2","input","CODE_LENGTHS","AD","AE","AT","AZ","BA","BE","BG","BH","BR","CH","CR","CY","CZ","DE","DK","DO","EE","ES","FI","FO","FR","GB","GI","GL","GR","GT","HR","HU","IE","IL","IS","IT","JO","KW","KZ","LB","LI","LT","LU","LV","MC","MD","ME","MK","MR","MT","MU","NL","NO","PK","PL","PS","PT","QA","RO","RS","SA","SE","SI","SK","SM","TN","TR","AL","BY","EG","GE","IQ","LC","SC","ST","SV","TL","UA","VA","VG","XK","digits","mod97","string","fragment","checksum","offset","substring","letter","phone","v","pattern","test","str","keymap","explanation","email_escrito","nativeOn","confirmText","dialog","width","zIndex","cancelColor","addExplanation","cancel","agree","form","validate","date","timestamp","mes","hora","isNaN","replaceAll","setHours","MESES","day","getDate","month","getMonth","year","getFullYear","HORA","getHours","getMinutes","join","downloadFile","file","URL","createObjectURL","navigator","platform","download","perColumnFilter","dataType","filterText","normalize","isOperation","filterDate","f","temp","max","min","filterSelect","filterBool","jsonToCsv","items","csvHeaders","filename","JStoExcelDate","csvString","item","valor","csvFile","File","alias"],"mappings":"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","file":"js/app.b265e709.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-0b58c0df\":\"5ffe8aab\",\"chunk-19550692\":\"35119dd1\",\"chunk-2d0db7fd\":\"45ddecae\",\"chunk-2d0f024f\":\"d6d0f070\",\"chunk-2d2217ba\":\"28ef87ac\",\"chunk-2d230a68\":\"49c2cfaf\",\"chunk-462129d6\":\"05e10f0d\",\"chunk-5ed998e3\":\"a19d4794\",\"chunk-63ebd864\":\"ca53aacf\",\"chunk-3bc35ebf\":\"7e465b5d\",\"chunk-7bf662de\":\"b9f337a0\",\"chunk-ae1a0cd0\":\"842f26b0\",\"chunk-0a7641e7\":\"4434d106\",\"chunk-bf3ad5e4\":\"aeed7c29\",\"chunk-510d4593\":\"f9c81edb\",\"chunk-765eb219\":\"d12d60a2\",\"chunk-1a3fa364\":\"ee2f9ec1\",\"chunk-e6454d38\":\"bc6cd004\",\"chunk-77770818\":\"e5d1e43d\",\"chunk-2d221b96\":\"7e23354c\",\"chunk-652ff93e\":\"01f1fa6b\",\"chunk-21abf978\":\"529e9375\",\"chunk-4c7dc72c\":\"57cf6a41\",\"chunk-a9c06b3a\":\"938d5917\",\"chunk-2d22495e\":\"f187d024\",\"chunk-1521a070\":\"562fe099\",\"chunk-8225d23c\":\"9e38f934\",\"chunk-2d0a3c7d\":\"18c0e353\",\"chunk-e2a410da\":\"f2c4b1ea\",\"chunk-2d0c8fe2\":\"541d497c\",\"chunk-2d0a4771\":\"ca106a77\",\"chunk-2d0d0092\":\"0a5da092\",\"chunk-2d229083\":\"45775cbf\",\"chunk-2d0db0b6\":\"b84ebd6c\",\"chunk-2d22d993\":\"cc0163cf\",\"chunk-2d0e91b3\":\"3bfe5f43\",\"chunk-2d217b04\":\"49ea8c46\",\"chunk-52667de9\":\"8650dee4\",\"chunk-23e8a645\":\"95a0b76f\",\"chunk-8bd413e2\":\"52f1e35f\",\"chunk-18ee8e3a\":\"20f0bc4d\",\"chunk-2d0afe39\":\"b0f32bd5\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"chunk-0b58c0df\":1,\"chunk-19550692\":1,\"chunk-462129d6\":1,\"chunk-5ed998e3\":1,\"chunk-63ebd864\":1,\"chunk-3bc35ebf\":1,\"chunk-7bf662de\":1,\"chunk-0a7641e7\":1,\"chunk-bf3ad5e4\":1,\"chunk-510d4593\":1,\"chunk-765eb219\":1,\"chunk-1a3fa364\":1,\"chunk-e6454d38\":1,\"chunk-77770818\":1,\"chunk-652ff93e\":1,\"chunk-21abf978\":1,\"chunk-4c7dc72c\":1,\"chunk-a9c06b3a\":1,\"chunk-1521a070\":1,\"chunk-8225d23c\":1,\"chunk-e2a410da\":1,\"chunk-52667de9\":1,\"chunk-23e8a645\":1,\"chunk-8bd413e2\":1,\"chunk-18ee8e3a\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({}[chunkId]||chunkId) + \".\" + {\"chunk-0b58c0df\":\"f0222215\",\"chunk-19550692\":\"b94b5e8f\",\"chunk-2d0db7fd\":\"31d6cfe0\",\"chunk-2d0f024f\":\"31d6cfe0\",\"chunk-2d2217ba\":\"31d6cfe0\",\"chunk-2d230a68\":\"31d6cfe0\",\"chunk-462129d6\":\"4f4b3c7b\",\"chunk-5ed998e3\":\"f0222215\",\"chunk-63ebd864\":\"d7e56d54\",\"chunk-3bc35ebf\":\"1358cb0b\",\"chunk-7bf662de\":\"5f8a1493\",\"chunk-ae1a0cd0\":\"31d6cfe0\",\"chunk-0a7641e7\":\"8711b122\",\"chunk-bf3ad5e4\":\"558afe1e\",\"chunk-510d4593\":\"bb456ed9\",\"chunk-765eb219\":\"dd61c65f\",\"chunk-1a3fa364\":\"2267d408\",\"chunk-e6454d38\":\"f0222215\",\"chunk-77770818\":\"02794b3d\",\"chunk-2d221b96\":\"31d6cfe0\",\"chunk-652ff93e\":\"184d3575\",\"chunk-21abf978\":\"4c64a678\",\"chunk-4c7dc72c\":\"4c64a678\",\"chunk-a9c06b3a\":\"4c64a678\",\"chunk-2d22495e\":\"31d6cfe0\",\"chunk-1521a070\":\"02794b3d\",\"chunk-8225d23c\":\"2c2d8db3\",\"chunk-2d0a3c7d\":\"31d6cfe0\",\"chunk-e2a410da\":\"56524f8c\",\"chunk-2d0c8fe2\":\"31d6cfe0\",\"chunk-2d0a4771\":\"31d6cfe0\",\"chunk-2d0d0092\":\"31d6cfe0\",\"chunk-2d229083\":\"31d6cfe0\",\"chunk-2d0db0b6\":\"31d6cfe0\",\"chunk-2d22d993\":\"31d6cfe0\",\"chunk-2d0e91b3\":\"31d6cfe0\",\"chunk-2d217b04\":\"31d6cfe0\",\"chunk-52667de9\":\"d198159d\",\"chunk-23e8a645\":\"422aee9c\",\"chunk-8bd413e2\":\"b767d80c\",\"chunk-18ee8e3a\":\"cd9ca83c\",\"chunk-2d0afe39\":\"31d6cfe0\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","// import axios from \"axios\";\r\nimport { AxiosError } from \"axios\";\r\nimport { Ref, ref } from \"vue\";\r\n\r\nfunction updateOptions(options, url) {\r\n if (options === undefined) return { url };\r\n options.url = url;\r\n return options;\r\n}\r\n\r\ntype httpResponseAxios = {\r\n data: Ref;\r\n error: Ref;\r\n pending: Ref;\r\n refresh: () => void;\r\n};\r\n\r\nexport default function httpRequest(...args: any[]): httpResponseAxios {\r\n let [url, options] = args;\r\n if (!options && typeof url === \"object\") {\r\n options = url;\r\n url = options.url;\r\n }\r\n\r\n options = updateOptions(options, url);\r\n\r\n const data = ref(null);\r\n if (options.default) data.value = options.default();\r\n\r\n const error = ref();\r\n const pending = ref(false);\r\n\r\n const makeRequest = async (extra_options?: Object) => {\r\n options = { ...options, ...extra_options };\r\n pending.value = true;\r\n try {\r\n const { data: json } = await window.axios(options);\r\n if (options.transform) data.value = options.transform(json);\r\n else data.value = json;\r\n pending.value = false;\r\n return true;\r\n } catch (e) {\r\n if (e instanceof AxiosError) {\r\n if (e.response?.request?.responseType == \"blob\")\r\n error.value = JSON.parse(await e.response.data.text());\r\n else if (options.transformError)\r\n error.value = await options.transformError(e);\r\n else error.value = e.response;\r\n }\r\n pending.value = false;\r\n\r\n return false;\r\n }\r\n };\r\n\r\n if (!options.lazy) makeRequest();\r\n // if (!options.lazy) {\r\n // if (options.block) async () => await makeRequest();\r\n // else if (!options.block) makeRequest();\r\n // }\r\n\r\n return {\r\n data,\r\n error,\r\n pending,\r\n refresh: makeRequest,\r\n };\r\n}\r\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./QrScannerInput.vue?vue&type=style&index=0&id=ab051ed4&prod&lang=css\"","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.$store.getters.getTenant)?_c('v-app',[(_vm.$store.getters.isLoggedIn)?_c('v-app-bar',{staticClass:\"elevation-0\",attrs:{\"dense\":\"\",\"app\":\"\",\"extension-height\":\"24px\"},scopedSlots:_vm._u([{key:\"extension\",fn:function(){return [_c('div',{staticClass:\"text-no-wrap\"},[_vm._v(_vm._s(_vm.$route?.meta?.titulo || _vm.$route.name))]),_c('div',{staticClass:\"text-right\",staticStyle:{\"width\":\"100%\"}},[_vm._v(_vm._s(_vm.$store.getters.getTokenPayload.nombre_comercial))])]},proxy:true}],null,false,3318708259)},[_c('router-link',{staticClass:\"d-flex items-center align-center mr-4\",attrs:{\"to\":\"/\"}},[_c('img',{attrs:{\"width\":\"100\",\"src\":_vm.$store.getters.getTenant.logo}})]),(!_vm.$vuetify.breakpoint.mobile)?_c('v-tabs',{attrs:{\"optional\":\"\"}},_vm._l((_setup.menu),function(tab,i){return _c('v-tab',_vm._g({key:i,attrs:{\"exact\":\"\",\"to\":tab.link}},tab.events || {}),[_c('v-icon',{attrs:{\"small\":\"\",\"left\":\"\"}},[_vm._v(_vm._s(tab.icon))]),_vm._v(\" \"+_vm._s(tab.title))],1)}),1):_vm._e(),_c('v-spacer'),(!_vm.$vuetify.breakpoint.mobile)?[_c('v-btn',{staticClass:\"mr-2\",attrs:{\"icon\":\"\"},on:{\"click\":_setup.changeTheme}},[(_vm.$vuetify.theme.dark)?_c('v-icon',[_vm._v(\"mdi-white-balance-sunny\")]):_c('v-icon',[_vm._v(\"mdi-weather-night\")])],1),_c('v-btn',{attrs:{\"fab\":\"\",\"small\":\"\",\"color\":\"error darken-2\"},on:{\"click\":function($event){$event.stopPropagation();return _setup.logout.apply(null, arguments)}}},[_c('v-icon',{attrs:{\"small\":\"\"}},[_vm._v(\"mdi-exit-run\")])],1)]:_vm._e(),(_vm.$vuetify.breakpoint.mobile)?_c('v-btn',{attrs:{\"icon\":\"\"},on:{\"click\":function($event){$event.stopPropagation();_setup.burgerMenu = !_setup.burgerMenu}}},[_c('v-icon',[_vm._v(\"mdi-cog\")])],1):_vm._e()],2):_vm._e(),_c('v-navigation-drawer',{attrs:{\"fixed\":\"\",\"temporary\":\"\",\"app\":\"\"},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('div',{staticClass:\"pa-4 align-center d-flex flex-column\",staticStyle:{\"gap\":\"10px\"}},[_c('div',{staticClass:\"d-flex\"},[_c('img',{staticStyle:{\"max-height\":\"200px\"},attrs:{\"width\":\"100%\",\"src\":_vm.$store.getters.getTenant.logo}})]),_c('v-btn',{attrs:{\"rounded\":\"\",\"block\":\"\"},on:{\"click\":_setup.changeTheme}},[(_vm.$vuetify.theme.dark)?_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"mdi-white-balance-sunny\")]):_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"mdi-weather-night\")]),_vm._v(\" Cambiar tema \")],1),_c('v-btn',{attrs:{\"rounded\":\"\",\"block\":\"\",\"color\":\"error darken-2\"},on:{\"click\":function($event){$event.stopPropagation();return _setup.logout.apply(null, arguments)}}},[_c('v-icon',{attrs:{\"left\":\"\"}},[_vm._v(\"mdi-exit-run\")]),_vm._v(\" Cerrar sesión \")],1)],1)]},proxy:true}],null,false,1340719130),model:{value:(_setup.burgerMenu),callback:function ($$v) {_setup.burgerMenu=$$v},expression:\"burgerMenu\"}},[_c('v-tabs',{attrs:{\"background-color\":\"transparent\",\"optional\":\"\",\"vertical\":\"\"}},[_c('div',{staticClass:\"pa-2 d-flex justify-end\"},[_c('v-btn',{staticClass:\"ml-auto\",attrs:{\"icon\":\"\",\"small\":\"\"},on:{\"click\":function($event){$event.stopPropagation();_setup.burgerMenu = !_setup.burgerMenu}}},[_c('v-icon',[_vm._v(\"mdi-close\")])],1)],1),_vm._l((_setup.menu),function(link){return _c('v-tab',_vm._g({key:link.link,staticClass:\"rounded-r-pill mr-1\",attrs:{\"color\":link.color,\"exact-active-class\":\"active-tab\",\"to\":link.link}},link.events || {}),[_c('v-list-item-icon',{staticClass:\"my-auto\"},[_c('v-icon',{domProps:{\"textContent\":_vm._s(link.icon)}})],1),_c('v-list-item-content',{staticStyle:{\"font-size\":\"0.7rem\"}},[_c('div',{staticClass:\"d-flex\"},[_vm._v(_vm._s(link.title))])])],1)})],2)],1),_c('v-main',{style:(`background: ${_vm.$vuetify.theme.dark ? '' : '#e4e4e4'}; overflow-y: auto `)},[_c(_setup.DownloadBanner),_c('router-view',{on:{\"reload-menu\":_setup.reloadMenu}})],1),_c('v-snackbar',_vm._b({attrs:{\"timeout\":\"4000\"},model:{value:(_setup.snack.show),callback:function ($$v) {_vm.$set(_setup.snack, \"show\", $$v)},expression:\"snack.show\"}},'v-snackbar',_setup.snack.props,false),[_vm._v(\" \"+_vm._s(_setup.snack.msg)+\" \")]),_c('portal-target',{attrs:{\"name\":\"filter-btn\"}}),(_vm.$vuetify.breakpoint.mobile && _vm.$store.getters.isLoggedIn)?_c(_setup.BottomNavigation,{attrs:{\"color\":\"app\",\"link\":_vm.$route.path},on:{\"open-menu\":function($event){_setup.burgerMenu = !_setup.burgerMenu}}}):_vm._e(),_c('v-dialog',{attrs:{\"transition\":\"dialog-bottom-transition\",\"fullscreen\":\"\"},on:{\"close\":function($event){_setup.scanningQr = false}},model:{value:(_setup.scanningQr),callback:function ($$v) {_setup.scanningQr=$$v},expression:\"scanningQr\"}},[_c(_setup.ScannerQr,{model:{value:(_setup.qr),callback:function ($$v) {_setup.qr=$$v},expression:\"qr\"}})],1),_c(_setup.ConfirmDialog,{ref:\"confirm\"})],1):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c(\"div\")\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./DownloadBanner.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./DownloadBanner.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./DownloadBanner.vue?vue&type=template&id=a4bcc8c4\"\nimport script from \"./DownloadBanner.vue?vue&type=script&lang=js\"\nexport * from \"./DownloadBanner.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-bottom-navigation',_vm._b({staticClass:\"elevation-0\",attrs:{\"background-color\":\"app\",\"app\":\"\",\"shift\":\"\",\"value\":_setup.link}},'v-bottom-navigation',_vm.$attrs,false),_vm._l((_setup.menu),function(m){return _c('v-btn',_vm._g({key:m.link,staticClass:\"flex-grow-1\",staticStyle:{\"min-width\":\"unset\"},attrs:{\"value\":m.link,\"to\":m.link}},m.events || {}),[_c('v-badge',{staticClass:\"v-icon\",attrs:{\"dot\":\"\",\"overlap\":\"\",\"content\":m.alert,\"value\":m.alert}},[_c('v-icon',{attrs:{\"color\":\"white\"}},[_vm._v(_vm._s(_setup.link == m.link ? m.icon : m.icon_inactive || m.icon))])],1),_c('span',{staticClass:\"white--text\"},[_vm._v(_vm._s(m.title))])],1)}),1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./BottomNavigation.vue?vue&type=script&setup=true&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./BottomNavigation.vue?vue&type=script&setup=true&lang=js\"","import { render, staticRenderFns } from \"./BottomNavigation.vue?vue&type=template&id=1461d9c2\"\nimport script from \"./BottomNavigation.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./BottomNavigation.vue?vue&type=script&setup=true&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('v-card',{staticStyle:{\"overflow-y\":\"hidden\",\"position\":\"relative\",\"display\":\"grid\",\"grid-template-rows\":\"0fr 0fr 1fr\"}},[_c('v-card-title',{staticClass:\"flex gap-2 align-center\"},[_c('v-btn',{attrs:{\"icon\":\"\",\"variant\":\"text\",\"rounded\":\"\",\"size\":\"small\",\"color\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _setup.emit('close')}}},[_c('v-icon',[_vm._v(\"mdi-arrow-left\")])],1),_vm._v(\" QR CNMC (solo 2.0TD)\")],1),_c('v-divider'),_c('div',{staticClass:\"flex-grow-1 pa-1\",staticStyle:{\"display\":\"grid\",\"grid-template-rows\":\"0fr 1fr\"}},[_c('v-tabs',{attrs:{\"touchless\":\"\",\"mandatory\":\"\",\"grow\":\"\"},model:{value:(_setup.tipoEscaner),callback:function ($$v) {_setup.tipoEscaner=$$v},expression:\"tipoEscaner\"}},[(_setup.hasCamera)?_c('v-tab',{attrs:{\"tab-value\":\"camera\"}},[_vm._v(\"Cámara\")]):_vm._e(),(!_setup.hasCamera)?_c('v-tab',{attrs:{\"tab-value\":\"scanner\"}},[_vm._v(\"Escáner\")]):_vm._e()],1),(!_setup.scanningQr)?_c('v-tabs-items',{model:{value:(_setup.tipoEscaner),callback:function ($$v) {_setup.tipoEscaner=$$v},expression:\"tipoEscaner\"}},[(_setup.hasCamera)?_c('v-tab-item',{staticClass:\"h-100\",attrs:{\"value\":\"camera\"}},[_c(_setup.QrcodeStream,{on:{\"detect\":_setup.qrDetected}})],1):_vm._e(),(!_setup.hasCamera)?_c('v-tab-item',{staticClass:\"h-100\",attrs:{\"value\":\"scanner\"}},[_c('div',{staticClass:\"flex h-100 justify-center align-center\"},[_c(_setup.QrScannerInput,{on:{\"detect\":_setup.qrDetected}})],1)]):_vm._e()],1):(_setup.scanningQr)?_c('div',{staticClass:\"flex justify-center align-center flex-grow-1 pa-1\"},[_c('v-progress-circular',{attrs:{\"size\":\"50\",\"indeterminate\":\"\",\"color\":\"primary\"}})],1):_vm._e()],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticStyle:{\"position\":\"relative\"}},[_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_setup.value),expression:\"value\"}],ref:\"textareaUrl\",staticStyle:{\"position\":\"absolute\",\"opacity\":\"0\",\"pointer-events\":\"none\"},attrs:{\"autofocus\":\"\",\"name\":\"textareaUrl\",\"id\":\"textareaUrl\",\"tabindex\":\"0\"},domProps:{\"value\":(_setup.value)},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;_setup.emit('detect', _setup.toQrResult(_setup.value))},\"input\":function($event){if($event.target.composing)return;_setup.value=$event.target.value}}}),_c('div',{staticClass:\"flex flex-column gap-4 align-center justify-center w-100 text-center\"},[_c('v-card-title',{staticClass:\"text-center d-block\"},[_vm._v(\"Escanea el QR con el lector\")]),_c('v-icon',{staticClass:\"taadaa\",staticStyle:{\"font-size\":\"6rem\"}},[_vm._v(\"mdi-qrcode-scan\")])],1)])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { defineComponent as _defineComponent } from 'vue'\nimport { computed, getCurrentInstance, onMounted, ref } from 'vue'\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'QrScannerInput',\n emits: ['detect', 'input'],\n setup(__props, { emit }) {\n\r\n\r\n\r\n// const value = useVModel(props, 'value', emit)\r\n// const value = computed({\r\n// set(v) {\r\n// emit('input', v)\r\n// },\r\n// get() {\r\n// return props.value\r\n// }\r\n// })\r\nconst value = ref('')\r\n\r\n// const textareaUrl = ref(null)\r\nconst refs = getCurrentInstance()?.proxy.$refs\r\nconst nextTick = getCurrentInstance()?.proxy.$nextTick\r\n\r\nconst setFocus = () => {\r\n if (refs.textareaUrl) {\r\n nextTick(() => {\r\n refs.textareaUrl.focus()\r\n })\r\n }\r\n}\r\n\r\nonMounted(() => {\r\n setTimeout(() => {\r\n setFocus();\r\n }, 1)\r\n})\r\n\r\nconst toQrResult = (url: string) => {\r\n console.log(url);\r\n\r\n return [{ rawValue: url }]\r\n}\r\n\r\n\nreturn { __sfc: true,emit, value, refs, nextTick, setFocus, toQrResult }\n}\n\n})","import mod from \"-!../../node_modules/ts-loader/index.js??ref--15!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./QrScannerInput.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../node_modules/ts-loader/index.js??ref--15!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./QrScannerInput.vue?vue&type=script&lang=ts&setup=true\"","import { render, staticRenderFns } from \"./QrScannerInput.vue?vue&type=template&id=ab051ed4\"\nimport script from \"./QrScannerInput.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./QrScannerInput.vue?vue&type=script&lang=ts&setup=true\"\nimport style0 from \"./QrScannerInput.vue?vue&type=style&index=0&id=ab051ed4&prod&lang=css\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { defineComponent as _defineComponent } from 'vue'\nimport { QrcodeStream } from 'vue-qrcode-reader'\r\nimport { useDevicesList, useVModel } from '@vueuse/core'\r\nimport { Ref, computed, getCurrentInstance, ref } from 'vue'\r\nimport DragAndDrop from './DragAndDrop.vue'\r\nimport QrScannerInput from './QrScannerInput.vue'\r\ntype QrResult = {\r\n rawValue: string;\r\n}\r\n\r\nimport axios from 'axios'\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ScannerQr',\n props: ['value'],\n emits: ['input', 'close'],\n setup(__props, { emit }) {\n\nconst props = __props\n\r\nconst { videoInputs: cameras } = useDevicesList()\r\nconst hasCamera = computed(() => cameras.value.length > 0)\r\n\r\nconst root = getCurrentInstance()?.proxy.$root\r\n\r\n\r\n\r\n\r\nconst value = useVModel(props, 'value', emit)\r\n\r\nconst scanningQr = ref(false)\r\n\r\nconst tipoEscaner = ref(0)\r\n\r\nconst qrFile = ref([])\r\n\r\nasync function qrDetected(qrResult: Promise<{ content: string }> | null, qrFile?: Ref | null) {\r\n\r\n scanningQr.value = true\r\n\r\n const formData = new FormData()\r\n if (qrResult != null) {\r\n const { content } = await qrResult\r\n formData.append('url', content)\r\n }\r\n if (qrFile?.value != null)\r\n formData.append('qr_file', qrFile.value[0])\r\n\r\n try {\r\n const { data } = await axios({\r\n url: \"/api/comparativas/comparativa_desde_qr\",\r\n method: \"POST\",\r\n data: formData,\r\n });\r\n console.log(data);\r\n\r\n } catch (error) {\r\n root.$emit(\"snack\", `Ha ocurrido un error al crear la comparativa: ${error?.data?.detail}`, { type: 'error' });\r\n } finally {\r\n scanningQr.value = false\r\n value.value = false\r\n return\r\n }\r\n\r\n}\r\n\r\n\nreturn { __sfc: true,cameras, hasCamera, root, props, emit, value, scanningQr, tipoEscaner, qrFile, qrDetected, QrcodeStream, QrScannerInput }\n}\n\n})","import mod from \"-!../../node_modules/ts-loader/index.js??ref--15!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./ScannerQr.vue?vue&type=script&lang=ts&setup=true\"; export default mod; export * from \"-!../../node_modules/ts-loader/index.js??ref--15!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./ScannerQr.vue?vue&type=script&lang=ts&setup=true\"","import { render, staticRenderFns } from \"./ScannerQr.vue?vue&type=template&id=19e48578&scoped=true\"\nimport script from \"./ScannerQr.vue?vue&type=script&lang=ts&setup=true\"\nexport * from \"./ScannerQr.vue?vue&type=script&lang=ts&setup=true\"\nimport style0 from \"./ScannerQr.vue?vue&type=style&index=0&id=19e48578&prod&scoped=true&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"19e48578\",\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&setup=true&lang=js\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--13-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&setup=true&lang=js\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=2b9e2686\"\nimport script from \"./App.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./App.vue?vue&type=script&setup=true&lang=js\"\nimport style0 from \"./App.vue?vue&type=style&index=0&id=2b9e2686&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import store from '@/store/index.js'\r\n\r\nconst routes = {\r\n path: \"/auth\",\r\n component: () => import(\"./Module.vue\"),\r\n children: [\r\n {\r\n path: \"login\",\r\n name: \"Login\",\r\n component: () => import(\"./views/Login.vue\"),\r\n beforeEnter: (to, from, next) => {\r\n if (store.getters.isLoggedIn) next({ name: \"Inicio\" });\r\n else next();\r\n },\r\n },\r\n ],\r\n};\r\n\r\nexport default routes;\r\n","import axios from \"axios\";\r\n\r\nfunction urlB64ToUint8Array(base64String) {\r\n const padding = \"=\".repeat((4 - (base64String.length % 4)) % 4);\r\n const base64 = (base64String + padding).replace(/-/g, \"+\").replace(/_/g, \"/\");\r\n const rawData = window.atob(base64);\r\n const outputArray = new Uint8Array(rawData.length);\r\n\r\n for (let i = 0; i < rawData.length; ++i)\r\n outputArray[i] = rawData.charCodeAt(i);\r\n\r\n return outputArray;\r\n}\r\n\r\nfunction decode64(data) {\r\n return new TextDecoder().decode(urlB64ToUint8Array(data));\r\n}\r\n\r\nconst auth = {\r\n state: () => ({\r\n token: localStorage.getItem(\"token\") || null,\r\n permisos: JSON.parse(localStorage.getItem(\"permisos\")) || null,\r\n refreshLock: Date.now(),\r\n tenant: JSON.parse(localStorage.getItem(\"tenant\")) || null,\r\n estados: JSON.parse(localStorage.getItem(\"estados\")) || null,\r\n }),\r\n getters: {\r\n isLoggedIn: (state) => !!state.token,\r\n getToken: (state) => state.token,\r\n getTokenPayload: (state) =>\r\n state.token ? JSON.parse(decode64(state.token.split(\".\")[1])) : null,\r\n getTenant: (state) => state.tenant || {},\r\n getPermisos: (state) => state.permisos,\r\n getEstados: (state) => state.estados,\r\n },\r\n mutations: {\r\n logout(state) {\r\n return new Promise((resolve) => {\r\n localStorage.removeItem(\"token\");\r\n localStorage.removeItem(\"permisos\");\r\n state.token = null;\r\n resolve();\r\n });\r\n },\r\n login(state, token) {\r\n localStorage.setItem(\"token\", token);\r\n state.token = token;\r\n },\r\n setEstados(state, estados) {\r\n return new Promise((resolve) => {\r\n localStorage.setItem(\"estados\", JSON.stringify(estados));\r\n state.estados = estados;\r\n resolve();\r\n })\r\n },\r\n setTenant(state, tenant) {\r\n return new Promise((resolve) => {\r\n localStorage.setItem( \"tenant\", JSON.stringify(tenant) )\r\n state.tenant = tenant;\r\n resolve();\r\n });\r\n },\r\n setPermisos(state, per) {\r\n return new Promise(async (resolve) => {\r\n localStorage.setItem(\"permisos\", JSON.stringify(per));\r\n state.permisos = per;\r\n resolve();\r\n });\r\n },\r\n },\r\n actions: {\r\n login({ commit, getters }, { user, password }) {\r\n return new Promise(async (resolve, reject) => {\r\n try {\r\n const formData = new FormData();\r\n formData.append(\"username\", user);\r\n formData.append(\"password\", password);\r\n const { data: token } = await axios({\r\n method: \"POST\",\r\n url: `${process.env.VUE_APP_API_URL}/auth/login`,\r\n data: formData,\r\n headers: {\r\n tenant: getters.getTenant.db\r\n }\r\n });\r\n\r\n axios = axios.create({\r\n headers: {\r\n Authorization: `${token.token_type} ${token.access_token}`,\r\n tenant: getters.getTenant.db\r\n },\r\n baseURL : `${process.env.VUE_APP_API_URL}/${getters.getTenant.slug}`\r\n });\r\n\r\n\r\n await commit(\"login\", token.access_token);\r\n resolve();\r\n } catch (e) {\r\n console.error(e);\r\n reject();\r\n }\r\n });\r\n },\r\n refreshToken({ commit, getters, state }) {\r\n return new Promise(async (resolve) => {\r\n if (Date.now() < state.refreshLock || !getters.getToken) {\r\n resolve();\r\n return;\r\n }\r\n\r\n const { data: token } = await axios({\r\n method: \"GET\",\r\n url: `/auth/refresh_token`,\r\n headers: { Authorization: `bearer ${getters.getToken}` },\r\n });\r\n\r\n state.refreshLock = Date.now() + 1000 * 60 * 10;\r\n\r\n resolve(\r\n await Promise.all([\r\n commit(\"login\", token.access_token),\r\n ])\r\n );\r\n });\r\n },\r\n logout({ commit }) {\r\n return new Promise(async (resolve) => {\r\n commit(\"logout\");\r\n resolve();\r\n });\r\n },\r\n setTenant({ commit }, tenant) {\r\n return new Promise(async (resolve) => {\r\n await commit(\"setTenant\", tenant);\r\n resolve();\r\n });\r\n },\r\n setPermisos({ commit }, permisos) {\r\n return new Promise(async (resolve) => {\r\n await commit(\"setPermisos\", permisos);\r\n resolve();\r\n });\r\n },\r\n },\r\n};\r\n\r\nexport default auth;\r\n","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","const routes = {\r\n path: \"/\",\r\n name: \"Inicio\",\r\n component: () => import(\"./views/Home.vue\"),\r\n meta: { requiresAuth: true },\r\n};\r\n\r\nexport default routes;\r\n","export default {\r\n state: () => ({\r\n menu: [],\r\n }),\r\n getters: {\r\n getMenu: (state) => state.menu,\r\n },\r\n mutations: {\r\n setMenu(state, menu) {\r\n state.menu = menu;\r\n },\r\n },\r\n actions: {\r\n setMenu({ commit }, menu) {\r\n commit(\"setMenu\", menu);\r\n },\r\n },\r\n};\r\n","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","import Vue from 'vue'\r\nimport Vuex from \"vuex\";\r\n\r\nimport auth from '../modules/auth';\r\nimport home from '../modules/home';\r\n\r\nVue.use(Vuex);\r\n\r\nconst store = new Vuex.Store({\r\n modules: {\r\n auth: auth.store,\r\n store: home.store,\r\n }\r\n})\r\n\r\nexport default store","const routes = {\r\n path: \"/facturas\",\r\n name: \"Facturas\",\r\n component: () => import(\"./views/Facturas.vue\"),\r\n meta: { requiresAuth: true },\r\n props: (route) => Object.assign({}, route.query, route.params),\r\n};\r\n\r\nexport default routes;\r\n","export default {};","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","const routes = {\r\n path: \"/borradores\",\r\n component: () => import(\"./Module.vue\"),\r\n meta: { requiresAuth: true },\r\n children : [\r\n {\r\n path : '',\r\n name: \"Borradores\",\r\n component: () => import(\"./views/Borradores.vue\"),\r\n },\r\n {\r\n path : 'nuevo',\r\n name: \"NuevoBorrador\",\r\n props: route => Object.assign({}, route.params, route.query),\r\n component: () => import(\"./views/borrador-router.vue\"),\r\n },\r\n // {\r\n // path : 'nuevo1774',\r\n // name: \"NuevoBorrador1774\",\r\n // meta: {\r\n // titulo: 'Enviar borrador',\r\n // },\r\n // props: route => Object.assign({}, route.params, route.query),\r\n // component: import(\"./views/Borradores1774.vue\"),\r\n // },\r\n // {\r\n // path : 'nuevoZirconite',\r\n // name: \"NuevoBorradorZirconite\",\r\n // meta: {\r\n // titulo: 'Enviar borrador',\r\n // },\r\n // props: route => Object.assign({}, route.params, route.query),\r\n // component: () => import(\"./views/BorradoresZirconite.vue\"),\r\n // },\r\n // {\r\n // path : 'nuevoJaeva',\r\n // name: \"NuevoBorradorJaeva\",\r\n // meta: {\r\n // titulo: 'Enviar borrador',\r\n // },\r\n // props: route => Object.assign({}, route.params, route.query),\r\n // component: () => import(\"./views/BorradoresJaeva.vue\"),\r\n // },\r\n {\r\n path : ':id',\r\n name: \"EditarBorrador\",\r\n props: route => Object.assign({}, route.params, route.query),\r\n component: () => import(\"./views/borrador-router.vue\"),\r\n },\r\n ]\r\n};\r\n\r\nexport default routes;\r\n","export default {};","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","const routes = {\r\n path: \"/descargas\",\r\n name: \"ZonaDescargas\",\r\n component: () => import(\"./views/ZonaDescargas.vue\"),\r\n meta: { requiresAuth: true },\r\n props: (route) => Object.assign({}, route.query, route.params),\r\n};\r\n\r\nexport default routes;\r\n","export default {};","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","const routes = {\r\n path: \"/chat\",\r\n name: 'Chat',\r\n component: () => import(\"./views/Chat.vue\"),\r\n meta: { requiresAuth: true },\r\n // children : [\r\n // {\r\n // path : ':id',\r\n // name: \"Ticket\",\r\n // props: (route) => Object.assign({}, route.query, route.params),\r\n // component: () => import(\"./views/Ticket.vue\"),\r\n // },\r\n // ]\r\n};\r\n\r\nexport default routes;\r\n","export default {};","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","const routes = {\r\n path: \"/audios\",\r\n name: \"Audios\",\r\n component: () => import(\"./Module.vue\"),\r\n meta: { requiresAuth: true },\r\n children: [\r\n {\r\n path: 'gana',\r\n name: 'AudiosGana',\r\n component: () => import(\"./views/Gana.vue\"),\r\n }\r\n ]\r\n};\r\n\r\nexport default routes;\r\n","export default {};","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","const routes = {\r\n path: \"/leads\",\r\n name: \"LeadsCSQ\",\r\n component: () => import(\"./views/Leads.vue\"),\r\n meta: { requiresAuth: true },\r\n props: (route) => Object.assign({}, route.query, route.params),\r\n};\r\n\r\nexport default routes;\r\n","export default {};","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","import Vue from 'vue'\r\nimport VueRouter from 'vue-router'\r\nimport store from \"@/store/index.js\";\r\n// import auth from '../modules/auth/store'\r\n\r\nVue.use(VueRouter)\r\n\r\nimport home from '@/modules/home'\r\nimport auth from '@/modules/auth'\r\nimport contratos from '@/modules/contratos'\r\nimport facturas from '@/modules/facturas'\r\nimport borradores from '@/modules/borradores'\r\nimport descargas from '@/modules/descargas'\r\nimport tickets from '@/modules/tickets'\r\nimport audios from '@/modules/audios'\r\nimport leads from '@/modules/leads'\r\n\r\nconst modules = (mod) => store.getters.getTenant && store.getters.getTenant.modules\r\n\r\nconst routes = [\r\n home.router,\r\n auth.router,\r\n // modules('CONTRATOS') ? contratos.router : null,\r\n // modules('FACTURAS') ? facturas.router : null,\r\n // modules('BORRADORES') ? borradores.router : null,\r\n contratos.router,\r\n facturas.router,\r\n borradores.router,\r\n descargas.router,\r\n tickets.router,\r\n audios.router,\r\n leads.router,\r\n {\r\n path: '*',\r\n redirect : '/'\r\n }\r\n].filter(x => x !== null)\r\n\r\nconst router = new VueRouter({\r\n mode: 'history',\r\n base: process.env.BASE_URL,\r\n routes\r\n})\r\n\r\nconst validarToken = (token) => token && new Date((token.exp * 1000)).getTime() > new Date().getTime();\r\n\r\nrouter.beforeEach(async (to, from, next) => {\r\n if (\r\n to.matched.some((record) => record.meta.requiresAuth)\r\n && !validarToken(store.getters.getTokenPayload)\r\n ) {\r\n let msg = store.getters.getToken != null ? \"La sesión ha expirado\" : \"\";\r\n await store.dispatch(\"logout\");\r\n next({ name: \"Login\", query: { redirect: to.path, msg } });\r\n }\r\n\r\n // if (to.matched.some((record) => record.meta.acceso)) {\r\n // const acceso = to.matched.find((record) => record.meta.acceso).meta.acceso;\r\n // if (\r\n // !!(\r\n // store.getters.getDecodedJwtEmpresa.permisos_b &\r\n // store.getters.getPermisos[acceso]\r\n // )\r\n // )\r\n // next();\r\n // else next({ name: \"Home\" });\r\n // }\r\n next();\r\n});\r\n\r\nexport default router\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('svg',{attrs:{\"id\":\"Capa_2\",\"data-name\":\"Capa 2\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 244 244\"}},[_c('g',{attrs:{\"id\":\"Capa_1-2\",\"data-name\":\"Capa 1\",\"fill\":\"currentColor\"}},[_c('g',[_c('g',[_c('path',{staticClass:\"cls-1\",attrs:{\"d\":\"m44.67,171.23c.68,4.41,3.9,8,8.22,9.11,1.33.34,33.23,8.41,69.37,8.41s68.04-8.07,69.37-8.41c4.33-1.11,7.55-4.7,8.22-9.11l22.21-147.38c.63-4.17-1.15-8.35-4.62-10.76-3.13-2.19-22.46-13.1-95.18-13.1S30.21,10.91,27.08,13.1c-3.46,2.41-5.25,6.58-4.62,10.76l22.21,147.38Zm36.66-69.48L121.19,26.17c.49-1.33,1.76-2.21,3.18-2.21,1.87,0,3.39,1.52,3.39,3.39v57.66h33.92c3.75,0,6.78,3.04,6.78,6.78,0,1.19-.33,2.36-.93,3.39h.01s-40.16,76.17-40.16,76.17c-.58,1.13-1.75,1.84-3.02,1.84-1.87,0-3.39-1.52-3.39-3.39v-57.66h-33.92c-3.75,0-6.78-3.04-6.78-6.78,0-1.28.37-2.52,1.05-3.6Z\"}}),_c('path',{staticClass:\"cls-1\",attrs:{\"d\":\"m243.88,210.48c-1.71-4.39-6-7.22-10.7-7.07-1.44.05-2.85.37-4.16.95,0,0-42.2,17.7-106.76,17.7s-106.76-17.7-106.76-17.7c-1.36-.59-2.83-.9-4.32-.91C5.05,203.41.04,208.35,0,214.48c-.03,4.56,2.73,8.68,6.95,10.38,0,0,46.62,19.41,115.3,19.41s115.3-19.41,115.3-19.41c5.72-2.22,8.55-8.66,6.32-14.37Z\"}})])])])])\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./donvatio.vue?vue&type=script&setup=true&lang=js\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./donvatio.vue?vue&type=script&setup=true&lang=js\"","import { render, staticRenderFns } from \"./donvatio.vue?vue&type=template&id=173f985a\"\nimport script from \"./donvatio.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./donvatio.vue?vue&type=script&setup=true&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","// import donvatio from '@/assets/logo.svg'\r\nimport DonVatio from \"@/components/icons/donvatio.vue\";\r\n\r\nconst icons = {\r\n // donvatio: (\r\n // \t\r\n // \t\r\n // \t\r\n // \t\r\n // )\r\n donvatio: {\r\n component: DonVatio,\r\n props: {\r\n name: \"donvatio\",\r\n },\r\n },\r\n};\r\n\r\nexport default icons;\r\n","import Vue from 'vue';\r\nimport Vuetify from 'vuetify/lib/framework';\r\nimport {es} from 'vuetify/es5/locale'\r\nimport customIcons from '@/utils/customIcons'\r\n\r\nVue.use(Vuetify);\r\n\r\nconst mq = window.matchMedia('(prefers-color-scheme: dark)')\r\nconst storedTheme = localStorage.getItem('theme') || false;\r\nconst dark = storedTheme === null ? mq.matches : JSON.parse(storedTheme)\r\n\r\nconst tenant = localStorage.getItem('tenant') ? JSON.parse(localStorage.getItem('tenant')) : {}\r\n\r\nexport default new Vuetify({\r\n theme : {\r\n dark,\r\n options: { customProperties: true },\r\n themes: {\r\n ...tenant.theme\r\n }\r\n },\r\n icons: {\r\n iconfont: 'mdi',\r\n values: customIcons\r\n },\r\n lang: {\r\n\t\tlocales: {es},\r\n\t\tcurrent : 'es'\r\n\t}\r\n});\r\n","/* eslint-disable no-console */\r\n\r\nimport { register } from 'register-service-worker'\r\n\r\nif (process.env.NODE_ENV === 'production')\r\n{\r\n register(`${process.env.BASE_URL}dist/service-worker.js`, {\r\n registrationOptions: {\r\n type: 'module',\r\n scope: '.'\r\n // type: 'module',\r\n },\r\n ready () {\r\n console.log(\r\n 'App is being served from cache by a service worker.\\n' +\r\n 'For more details, visit https://goo.gl/AFskqB'\r\n )\r\n },\r\n registered () {\r\n console.log('Service worker has been registered.')\r\n },\r\n cached () {\r\n console.log('Content has been cached for offline use.')\r\n },\r\n updatefound () {\r\n console.log('New content is downloading.')\r\n },\r\n updated () {\r\n console.log('New content is available; please refresh.')\r\n },\r\n offline () {\r\n console.log('No internet connection found. App is running in offline mode.')\r\n },\r\n error (error) {\r\n console.error('Error during service worker registration:', error)\r\n }\r\n })\r\n}\r\n","export default {\r\n common: {\r\n dragAndDrop: \"Haz click aquí o arrastra los archivos\",\r\n aceptar: \"Aceptar\",\r\n cancelar: \"Cancelar\",\r\n ok: \"Ok\",\r\n tipo: \"Tipo\",\r\n nombre: \"Nombre\",\r\n recargar: \"Recargar\",\r\n editar: \"Editar\",\r\n volver: \"Volver\",\r\n guardar: \"Guardar\",\r\n subir: \"Subir\",\r\n validar: \"Validar campos\",\r\n eliminar: \"Eliminar\",\r\n cups: \"CUPS\",\r\n exportar: \"Exportar\",\r\n cargados: \"Cargados {n} de {t}\",\r\n cargar_mas: \"Cargar más\",\r\n descargar: \"Descargar\",\r\n busqueda: \"Búsqueda...\",\r\n exportar: \"Exportar\",\r\n ver: \"Ver\",\r\n },\r\n\r\n audios_gana: {\r\n venta: \"Audio Venta\",\r\n legal: \"Texto Legal\",\r\n certificado: \"Certificado\",\r\n subir_todo: \"Subir todo\",\r\n nif_no_detectado: \"No se ha dectado el NIF de los siguientes archivos:\",\r\n subida_ok: \"Los archivos se han subido correctamente\",\r\n },\r\n\r\n confirm: {\r\n eliminar: {\r\n archivo: {\r\n title: \"Eliminar archivo\",\r\n text: \"¿Estás seguro de que quieres eliminar este documento?\",\r\n },\r\n borrador: {\r\n title: \"Eliminar borrador\",\r\n text: \"¿Estás seguro de que quieres eliminar este borrador? Esta acción no se puede deshacer\",\r\n ok_result: \"Eliminado con éxito\",\r\n },\r\n mensaje: {\r\n title: \"Eliminar mensaje\",\r\n text: \"¿Estás seguro de que quieres eliminar este mensaje? Esta acción no se puede deshacer\",\r\n ok_result: \"Eliminado con éxito\",\r\n },\r\n },\r\n revision: {\r\n title: \"Enviar a revisión\",\r\n text: \"¿Estás seguro de que quieres enviar este borrador a revisión? Una vez enviado no podrás modificar los datos\",\r\n ok_result: \"Guardado como contrato | Guardado como borrador\",\r\n error_result:\r\n \"Error al guardar como contrato | Error al guardar como borrador\",\r\n },\r\n anular: {\r\n title: \"Anular contrato\",\r\n text: \"¿Estás seguro de que quieres anular este contrato?\",\r\n ok_result: \"Contrato anulado con éxito\",\r\n error_result: \"Error al anular el contrato\",\r\n motivo: \"Motivo anulación\",\r\n },\r\n enviar_consentimiento : {\r\n title: \"Enviar consentimiento\",\r\n text: \"Se enviará un email al cliente con el consentimiento de tratamiento de datos, recibirás una copia en el correo que indiques a continuación que tendrás que adjuntar\",\r\n ok_result: \"Consentimiento enviado con éxito\",\r\n error_result: \"Error al enviar el consentimiento\",\r\n mail: \"true\"\r\n }\r\n },\r\n\r\n login: {\r\n error: \"Los datos de acceso no son correctos\",\r\n usuario: \"Usuario\",\r\n pass: \"Contraseña\",\r\n login: \"Acceder\",\r\n },\r\n\r\n noticias: {\r\n novedades: \"Novedades\",\r\n mas_menos: \"Leer más | Leer menos\",\r\n },\r\n\r\n menu: {\r\n inicio: \"Inicio\",\r\n contratos: \"Contratos\",\r\n borradores: \"Borradores\",\r\n documentos: \"Documentos\",\r\n facturas: \"Facturas\",\r\n verificaciones: \"Verificaciones\",\r\n llamadas: \"Llamadas\",\r\n audios_gana: \"Audios Gana\",\r\n leads: \"Leads\",\r\n comparativas: \"Comparativas\",\r\n comparativas_qr: \"Comparativas desde QR\",\r\n chat: \"Chat\",\r\n tarjetas: {\r\n inicio: \"@:menu.inicio\",\r\n contratos:\r\n \"Tienes {n} contratos detenidos | Tienes 1 contrato detenidos | No tienes contratos detenidos\",\r\n borradores:\r\n \"Tienes {n} borradores por enviar | Tienes 1 borrador por enviar | No tienes borradores por enviar\",\r\n facturas:\r\n \"Tienes {n} facturas pendientes | Tienes 1 factura pendiente | No tienes facturas pendientes\",\r\n verificaciones:\r\n \"Tienes {n} verificaciones por subir | Tienes 1 verificación por subir | No tienes verificaciones por subir\",\r\n documentos: \"Documentos disponibles para descargar\",\r\n leads: \"{0} registrados\",\r\n comparativas: \"Realiza comparativas de luz o gas a partir del CUPS\",\r\n chat: \"Tienes {0} mensajes sin leer\",\r\n },\r\n },\r\n\r\n borradores: {\r\n nuevo: \"Nuevo borrador\",\r\n fecha: \"Fecha\",\r\n cups: \"@:common.cups\",\r\n comer: \"Comercializadora\",\r\n tipo_contrato: \"Tipo contrato\",\r\n llamadas: \"Llamadas\",\r\n tarifa: \"Tarifa\",\r\n potencia: \"Pot {p}\",\r\n consumo: \"Consumo\",\r\n oferta: \"Oferta\",\r\n dni_titular: \"DNI/NIF titular\",\r\n nombre_titular: \"Nombre titular\",\r\n dni_firmante: \"DNI/NIF firmante\",\r\n telefono: \"Teléfono\",\r\n telefono2: \"Segundo teléfono \",\r\n nombre_firmante: \"Nombre firmante\",\r\n cp_cups: \"@:borradores.cp @:common.cups\",\r\n pob_cups: \"Población @:common.cups\",\r\n dir_cups: \"Dirección @:common.cups\",\r\n prov_cups: \"Provincia @:common.cups\",\r\n telf: \"Teléfono\",\r\n email: \"Email\",\r\n iban: \"Cuenta bancaria\",\r\n otros: \"Otros datos\",\r\n cups2: \"@:common.cups 2\",\r\n refcomer: \"REF.COMER\",\r\n refcomer2: \"REF.COMER2\",\r\n cnae: \"CNAE\",\r\n cambiotit: \"Camb.Tit\",\r\n cambiopot: \"Camb.Pot\",\r\n fecha_act: \"Fecha activación\",\r\n dir_corres: \"Dirección correspondencia\",\r\n cp: \"Cód.Postal\",\r\n cp_corres: \"Cód.Postal correspondencia\",\r\n per_contacto: \"Persona contacto\",\r\n telf2: \"@:borradores.telf 2\",\r\n prod_adicionales: \"Productos adicionales\",\r\n documentacion: \"Documentación\",\r\n adjunta_doc: \"Adjunta aquí la documentación del contrato\",\r\n validacion_ok: \"Campos validados con éxito\",\r\n cups_o_titular:\r\n \"Es obligatorio un CUPS o un titular para guardar el borrador\",\r\n intervalo: \"Intervalo\",\r\n factura_electronica : \"Factura electónica\",\r\n pago_domiciliado: 'Pago domiciliado',\r\n },\r\n\r\n documentacion: {\r\n not_found: \"No se ha encontrado el documento\",\r\n error_subir: \"No se ha podido subir el documento\",\r\n },\r\n verificacion: {\r\n adjuntar: \"Adjuntar verificación\",\r\n not_found: \"No se ha encontrado el documento\",\r\n error_subir: \"No se ha podido subir el documento\",\r\n },\r\n\r\n contratos: {\r\n estado: \"Estado contrato\",\r\n motivo_dev: \"MOTIVO DEVOLUCIÓN\",\r\n motivo_anu: \"MOTIVO ANULACIÓN\",\r\n motivo_det: \"MOTIVO DETENCIÓN\",\r\n\r\n datos: \"Datos contrato\",\r\n factura: \"Factura pago\",\r\n fecha: \"Fecha\",\r\n bimp: \"B.Imp.\",\r\n\r\n ver_doc: \"Ver documento\",\r\n ver_fac: \"Ver factura\",\r\n anular: \"Anular contrato\",\r\n motivo_anulacion: \"Motivo anulación\",\r\n\r\n comentario: \"Comentario\",\r\n agente: \"Agente\",\r\n tipo: \"Tipo\",\r\n nombre: \"Nombre\",\r\n\r\n documentos: \"Documentos adjuntos\",\r\n historico: \"Histórico contrato\",\r\n },\r\n\r\n descargas: {\r\n vacio: \"No hay archivos disponibles para descargar\",\r\n comers: \"TODAS COMERCIALIZADORAS\",\r\n },\r\n\r\n facturas: {\r\n estado: \"Estado factura\",\r\n pago_fac: \"Pago factura\",\r\n cuenta_pago: \"Cuenta pago\",\r\n ver_doc: \"Ver documento\",\r\n desglose: \"Desglose factura\",\r\n datos: \"Datos factura\",\r\n razon_social: \"Razón social\",\r\n nif: \"NIF/CIF\",\r\n fecha_fac: \"Fecha Factura\",\r\n n_doc: \"Número documento\",\r\n bimp: \"Base Imponible\",\r\n iva: \"IVA {pct}%\",\r\n irpf: \"IRPF {pct}%\",\r\n total: \"Total Factura\",\r\n dir: \"Dirección\",\r\n pob: \"Población\",\r\n prov: \"Provincia\",\r\n cp: \"Cod.Postal\",\r\n contenido: \"Contenido factura\",\r\n lineas: \"1 línea | {n} líneas\",\r\n hist: \"Histórico factura\",\r\n ver_contrato: \"Abrir el contrato\",\r\n adjuntar: \"Adjuntar documento\",\r\n fechafactura: \"Fecha factura\",\r\n numerofactura: \"Nº factura\",\r\n bifactura: \"Base Imp.\",\r\n totalfactura: \"Total factura\",\r\n estadofactura: \"Estado factura\",\r\n },\r\n\r\n chat: {\r\n archivos_adjuntos: \"1 archivo adjunto | {n} archivos adjuntos\",\r\n escribe_aqui: \"Escribe aquí tu mensaje...\",\r\n adjuntar_archivos: \"Adjuntar archivos\",\r\n },\r\n};\r\n","export default {\r\n common: {\r\n dragAndDrop: \"Clique aqui ou arraste arquivos\",\r\n aceptar: \"Aceitar\",\r\n cancelar: \"Cancelar\",\r\n ok: \"Ok\",\r\n tipo: \"Tipo\",\r\n nombre: \"Nome\",\r\n recargar: \"Recarregar\",\r\n editar: \"Editar\",\r\n volver: \"Voltar\",\r\n guardar: \"Salvar\",\r\n subir: \"Subir\",\r\n validar: \"Validar campos\",\r\n eliminar: \"Excluir\",\r\n cups: \"CUPS\",\r\n exportar: \"Exportar\",\r\n cargados: \"Carregados {n} de {t}\",\r\n cargar_mas: \"Carregar mais\",\r\n descargar: \"Baixar\",\r\n busqueda: \"Busca...\",\r\n exportar: \"Exportar\",\r\n ver: \"Ver\",\r\n },\r\n audios_gana: {\r\n venta: \"Áudio de Venda\",\r\n legal: \"Texto Legal\",\r\n certificado: \"Certificado\",\r\n subir_todo: \"Subir tudo\",\r\n nif_no_detectado: \"NIF não detectado nos seguintes arquivos:\",\r\n subida_ok: \"Os arquivos foram carregados com sucesso\",\r\n },\r\n confirm: {\r\n eliminar: {\r\n archivo: {\r\n title: \"Excluir arquivo\",\r\n text: \"Tem certeza de que deseja excluir este documento?\",\r\n },\r\n borrador: {\r\n title: \"Excluir rascunho\",\r\n text: \"Tem certeza de que deseja excluir este rascunho? Esta ação não pode ser desfeita\",\r\n ok_result: \"Excluído com sucesso\",\r\n },\r\n mensaje: {\r\n title: \"Excluir mensagem\",\r\n text: \"Tem certeza de que deseja excluir esta mensagem? Esta ação não pode ser desfeita\",\r\n ok_result: \"Excluído com sucesso\",\r\n },\r\n },\r\n revision: {\r\n title: \"Enviar para revisão\",\r\n text: \"Tem certeza de que deseja enviar este rascunho para revisão? Uma vez enviado, você não poderá modificar os dados\",\r\n ok_result: \"Salvo como contrato | Salvo como rascunho\",\r\n error_result:\r\n \"Erro ao salvar como contrato | Erro ao salvar como rascunho\",\r\n },\r\n anular: {\r\n title: \"Anular contrato\",\r\n text: \"Tem certeza de que deseja anular este contrato?\",\r\n ok_result: \"Contrato anulado com sucesso\",\r\n error_result: \"Erro ao anular o contrato\",\r\n motivo: \"Motivo anulação\",\r\n }\r\n },\r\n login: {\r\n error: \"Os dados de acesso estão incorretos\",\r\n usuario: \"Usuário\",\r\n pass: \"Senha\",\r\n login: \"Acessar\",\r\n },\r\n noticias: {\r\n novedades: \"Novidades\",\r\n mas_menos: \"Ler mais | Ler menos\",\r\n },\r\n menu: {\r\n inicio: \"Início\",\r\n contratos: \"Contratos\",\r\n borradores: \"Rascunhos\",\r\n documentos: \"Documentos\",\r\n facturas: \"Faturas\",\r\n verificaciones: \"Verificações\",\r\n llamadas: \"Ligações\",\r\n audios_gana: \"Áudios Gana\",\r\n leads: \"Leads\",\r\n comparativas: \"Comparativos\",\r\n chat: \"Chat\",\r\n tarjetas: {\r\n inicio: \"@:menu.inicio\",\r\n contratos:\r\n \"Você tem {n} contratos parados | Você tem 1 contrato parado | Você não tem contratos parados\",\r\n borradores:\r\n \"Você tem {n} rascunhos para enviar | Você tem 1 rascunho para enviar | Você não tem rascunhos para enviar\",\r\n facturas:\r\n \"Você tem {n} faturas pendentes | Você tem 1 fatura pendente | Você não tem faturas pendentes\",\r\n verificaciones:\r\n \"Você tem {n} verificações para subir | Você tem 1 verificação para subir | Você não tem verificações para subir\",\r\n documentos: \"Documentos disponíveis para descarregar\",\r\n leads: \"{0} registrados\",\r\n comparativas: \"Faça comparativos de luz ou gás a partir do CUPS\",\r\n chat: \"Você tem {0} mensagens não lidas\",\r\n },\r\n },\r\n borradores: {\r\n nuevo: \"Novo rascunho\",\r\n fecha: \"Data\",\r\n cups: \"@:common.cups\",\r\n comer: \"Comercializadora\",\r\n tipo_contrato: \"Tipo de contrato\",\r\n llamadas: \"Ligações\",\r\n tarifa: \"Tarifa\",\r\n potencia: \"Potência {p}\",\r\n consumo: \"Consumo\",\r\n oferta: \"Oferta\",\r\n dni_titular: \"DNI/NIF titular\",\r\n nombre_titular: \"Nome do titular\",\r\n dni_firmante: \"DNI/NIF do assinante\",\r\n nombre_firmante: \"Nome do assinante\",\r\n cp_cups: \"@:borradores.cp @:common.cups\",\r\n pob_cups: \"Cidade @:common.cups\",\r\n dir_cups: \"Endereço @:common.cups\",\r\n prov_cups: \"Província @:common.cups\",\r\n telf: \"Telefone\",\r\n email: \"Email\",\r\n iban: \"Conta bancária\",\r\n otros: \"Outros dados\",\r\n cups2: \"@:common.cups 2\",\r\n refcomer: \"REF.COMER\",\r\n refcomer2: \"REF.COMER2\",\r\n cnae: \"CNAE\",\r\n cambiotit: \"Mud.Tit\",\r\n cambiopot: \"Mud.Pot\",\r\n fecha_act: \"Data de ativação\",\r\n dir_corres: \"Endereço de correspondência\",\r\n cp: \"Cód.Postal\",\r\n cp_corres: \"Cód.Postal de correspondência\",\r\n per_contacto: \"Pessoa de contato\",\r\n telf2: \"@:borradores.telf 2\",\r\n prod_adicionales: \"Produtos adicionais\",\r\n documentacion: \"Documentação\",\r\n adjunta_doc: \"Anexe aqui a documentação do contrato\",\r\n validacion_ok: \"Campos validados com sucesso\",\r\n cups_o_titular:\r\n \"É obrigatório um CUPS ou um titular para salvar o rascunho\",\r\n intervalo: \"Intervalo\",\r\n factura_electronica: \"Fatura eletrônica\",\r\n pago_domiciliado: \"Pagamento de residente\",\r\n },\r\n documentacion: {\r\n not_found: \"Documento não encontrado\",\r\n error_subir: \"Não foi possível carregar o documento\",\r\n },\r\n verificacion: {\r\n adjuntar: \"Anexar verificação\",\r\n not_found: \"Documento não encontrado\",\r\n error_subir: \"Não foi possível enviar o documento\",\r\n },\r\n contratos: {\r\n estado: \"Estado do contrato\",\r\n motivo_dev: \"MOTIVO DE DEVOLUÇÃO\",\r\n motivo_anu: \"MOTIVO DE ANULAÇÃO\",\r\n motivo_det: \"MOTIVO DE DETENÇÃO\",\r\n datos: \"Dados do contrato\",\r\n factura: \"Fatura de pagamento\",\r\n fecha: \"Data\",\r\n bimp: \"B.Imp.\",\r\n ver_doc: \"Ver documento\",\r\n ver_fac: \"Ver fatura\",\r\n anular: \"Anular contrato\",\r\n motivo_anulacion: \"Motivo anulação\",\r\n comentario: \"Comentário\",\r\n agente: \"Agente\",\r\n tipo: \"Tipo\",\r\n nombre: \"Nome\",\r\n documentos: \"Documentos anexados\",\r\n historico: \"Histórico do contrato\",\r\n },\r\n descargas: {\r\n vacio: \"Não há arquivos disponíveis para download\",\r\n comers: \"TODAS AS COMERCIALIZADORAS\",\r\n },\r\n facturas: {\r\n estado: \"Estado da fatura\",\r\n pago_fac: \"Pagamento da fatura\",\r\n cuenta_pago: \"Conta de pagamento\",\r\n ver_doc: \"Ver documento\",\r\n desglose: \"Desdobramento da fatura\",\r\n datos: \"Dados da fatura\",\r\n razon_social: \"Razão social\",\r\n nif: \"NIF/CIF\",\r\n fecha_fac: \"Data da Fatura\",\r\n n_doc: \"Número do documento\",\r\n bimp: \"Base Imponível\",\r\n iva: \"IVA {pct}%\",\r\n irpf: \"IRPF {pct}%\",\r\n total: \"Total da Fatura\",\r\n dir: \"Endereço\",\r\n pob: \"Localidade\",\r\n prov: \"Província\",\r\n cp: \"Cód.Postal\",\r\n contenido: \"Conteúdo da fatura\",\r\n lineas: \"1 linha | {n} linhas\",\r\n hist: \"Histórico da fatura\",\r\n ver_contrato: \"Abrir o contrato\",\r\n adjuntar: \"Anexar documento\",\r\n fechafactura: \"Data da fatura\",\r\n numerofactura: \"Nº da fatura\",\r\n bifactura: \"Base Imp.\",\r\n totalfactura: \"Total da fatura\",\r\n estadofactura: \"Estado da fatura\",\r\n },\r\n chat: {\r\n archivos_adjuntos: \"1 arquivo anexado | {n} arquivos anexados\",\r\n escribe_aqui: \"Escreva aqui sua mensagem...\",\r\n adjuntar_archivos: \"Anexar arquivos\",\r\n },\r\n};\r\n","import Vue from 'vue'\r\nimport VueI18n from 'vue-i18n'\r\nimport es from '@/locales/es'\r\nimport pt from '@/locales/pt'\r\n\r\nconst i18n = () => new VueI18n({\r\n\tlocale: 'es',\r\n\tmessages: {\r\n\t\tes, pt\r\n\t}\r\n})\r\n\r\nVue.use(VueI18n)\r\n\r\nexport default i18n","import 'core-js/stable'\r\nimport 'regenerator-runtime/runtime'\r\n\r\n\r\nimport Vue from \"vue\";\r\nimport App from \"./App.vue\";\r\nimport router from \"./router\";\r\nimport store from \"./store\";\r\nimport vuetify from \"./plugins/vuetify\";\r\n\r\nVue.config.productionTip = false;\r\n\r\nimport axios from \"axios\";\r\n\r\nif ( store.getters.getToken ) {\r\n\r\n window.axios = axios.create({\r\n headers: { Authorization: `bearer ${store.getters.getToken}`, tenant : store.getters?.getTenant?.db },\r\n baseURL : `${process.env.VUE_APP_API_URL}/${ store.getters?.getTenant?.slug }`\r\n });\r\n\r\n} else {\r\n\r\n window.axios = axios.create({\r\n headers: { tenant : store.getters?.getTenant?.db },\r\n baseURL : `${process.env.VUE_APP_API_URL}/${ store.getters?.getTenant?.slug }`\r\n });\r\n\r\n}\r\n\r\nimport meta from 'vue-meta'\r\nVue.use(meta)\r\n\r\nimport portal from 'portal-vue'\r\nVue.use(portal)\r\n\r\nimport VueHotkey from 'v-hotkey'\r\nVue.use(VueHotkey)\r\n\r\nVue.filter('eur', function (value) {\r\n return parseFloat(value).toFixed(2) + ' €';\r\n});\r\n\r\nimport {parseDate} from '@/utils/index.js'\r\nimport './registerServiceWorker'\r\nVue.filter('date', function (value) {\r\n return parseDate(value);\r\n});\r\n\r\nimport i18n from '@/plugins/i18n.js'\r\n\r\nnew Vue({\r\n router,\r\n store,\r\n vuetify,\r\n i18n: i18n(),\r\n render: (h) => h(App),\r\n methods: {\r\n modules(mod) {\r\n return store.getters.getTenant && store.getters.getTenant.modules && store.getters.getTenant.modules.includes( mod )\r\n },\r\n acceso(permiso) {\r\n if (!store.getters.getTokenPayload || !store.getters.getTokenPayload.permisos) {\r\n store.commit('logout')\r\n return false\r\n }\r\n return !!store.getters.getTokenPayload.permisos[permiso]\r\n }\r\n },\r\n}).$mount(\"#app\");\r\n","export function req(value) {\r\n\t// value = String(value)\r\n\tif ( Array.isArray(value) && value.length == 0 ) return 'Este campo es obligatorio'\r\n\tif ( typeof value == 'number' ) value = String(value)\r\n\treturn !!value || \"Este campo es obligatorio\";\r\n}\r\n\r\nexport function cups(CUPS) {\r\n\tif (CUPS == \"\" || CUPS == null) return true;\r\n\tCUPS = CUPS.toUpperCase();\r\n\tMath.fmod = function(a, b) {\r\n\t\treturn Number((a - Math.floor(a / b) * b).toPrecision(8));\r\n\t};\r\n\tvar status = false;\r\n\tvar RegExPattern = /^(ES|PT)[0-9]{16}[a-zA-Z]{2}[0-9]{0,1}[a-zA-Z]{0,1}$/;\r\n\tif (CUPS.match(RegExPattern) && CUPS != \"\") {\r\n\t\tvar CUPS_16 = CUPS.substr(2, 16);\r\n\t\tvar control = CUPS.substr(18, 2);\r\n\t\tvar l = \"TRWAGMYFPDXBNJZSQVHLCKE\".split(\"\");\r\n\t\tvar fmodv = Math.fmod(CUPS_16, 529);\r\n\t\tvar imod = parseInt(fmodv);\r\n\t\tvar quotient = Math.floor(imod / 23);\r\n\t\tvar remainder = imod % 23;\r\n\r\n\t\tvar dc1 = l[quotient];\r\n\t\tvar dc2 = l[remainder];\r\n\t\tstatus = control == dc1 + dc2;\r\n\t} else {\r\n\t\tstatus = \"El CUPS no es válido\";\r\n\t}\r\n\tif (status == false)\r\n\t\tstatus = \"El CUPS no es válido\";\r\n\treturn status;\r\n}\r\n\r\nexport function iban(input) {\r\n\tif (input == null || input.length == 0) return true;\r\n\tconst CODE_LENGTHS = {\r\n\t\tAD: 24,\r\n\t\tAE: 23,\r\n\t\tAT: 20,\r\n\t\tAZ: 28,\r\n\t\tBA: 20,\r\n\t\tBE: 16,\r\n\t\tBG: 22,\r\n\t\tBH: 22,\r\n\t\tBR: 29,\r\n\t\tCH: 21,\r\n\t\tCR: 21,\r\n\t\tCY: 28,\r\n\t\tCZ: 24,\r\n\t\tDE: 22,\r\n\t\tDK: 18,\r\n\t\tDO: 28,\r\n\t\tEE: 20,\r\n\t\tES: 24,\r\n\t\tFI: 18,\r\n\t\tFO: 18,\r\n\t\tFR: 27,\r\n\t\tGB: 22,\r\n\t\tGI: 23,\r\n\t\tGL: 18,\r\n\t\tGR: 27,\r\n\t\tGT: 28,\r\n\t\tHR: 21,\r\n\t\tHU: 28,\r\n\t\tIE: 22,\r\n\t\tIL: 23,\r\n\t\tIS: 26,\r\n\t\tIT: 27,\r\n\t\tJO: 30,\r\n\t\tKW: 30,\r\n\t\tKZ: 20,\r\n\t\tLB: 28,\r\n\t\tLI: 21,\r\n\t\tLT: 20,\r\n\t\tLU: 20,\r\n\t\tLV: 21,\r\n\t\tMC: 27,\r\n\t\tMD: 24,\r\n\t\tME: 22,\r\n\t\tMK: 19,\r\n\t\tMR: 27,\r\n\t\tMT: 31,\r\n\t\tMU: 30,\r\n\t\tNL: 18,\r\n\t\tNO: 15,\r\n\t\tPK: 24,\r\n\t\tPL: 28,\r\n\t\tPS: 29,\r\n\t\tPT: 25,\r\n\t\tQA: 29,\r\n\t\tRO: 24,\r\n\t\tRS: 22,\r\n\t\tSA: 24,\r\n\t\tSE: 24,\r\n\t\tSI: 19,\r\n\t\tSK: 24,\r\n\t\tSM: 27,\r\n\t\tTN: 24,\r\n\t\tTR: 26,\r\n\t\tAL: 28,\r\n\t\tBY: 28,\r\n\t\tCR: 22,\r\n\t\tEG: 29,\r\n\t\tGE: 22,\r\n\t\tIQ: 23,\r\n\t\tLC: 32,\r\n\t\tSC: 31,\r\n\t\tST: 25,\r\n\t\tSV: 28,\r\n\t\tTL: 23,\r\n\t\tUA: 29,\r\n\t\tVA: 22,\r\n\t\tVG: 24,\r\n\t\tXK: 20,\r\n\t};\r\n\tvar iban = String(input)\r\n\t\t\t.toUpperCase()\r\n\t\t\t.replace(/[^A-Z0-9]/g, \"\"), // keep only alphanumeric characters\r\n\t\tcode = iban.match(/^([A-Z]{2})(\\d{2})([A-Z\\d]+)$/), // match and capture (1) the country code, (2) the check digits, and (3) the rest\r\n\t\tdigits;\r\n\t// check syntax and length\r\n\tif (!code || iban.length !== CODE_LENGTHS[code[1]]) {\r\n\t\treturn \"Este IBAN no es válido\";\r\n\t}\r\n\t// rearrange country code and check digits, and convert chars to ints\r\n\tdigits = (code[3] + code[1] + code[2]).replace(/[A-Z]/g, function(letter) {\r\n\t\treturn letter.charCodeAt(0) - 55;\r\n\t});\r\n\t// final check\r\n\tfunction mod97(string) {\r\n\t\tvar checksum = string.slice(0, 2),\r\n\t\t\tfragment;\r\n\t\tfor (var offset = 2; offset < string.length; offset += 7) {\r\n\t\t\tfragment = String(checksum) + string.substring(offset, offset + 7);\r\n\t\t\tchecksum = parseInt(fragment, 10) % 97;\r\n\t\t}\r\n\t\treturn checksum;\r\n\t}\r\n\treturn mod97(digits) === 1 || \"Este IBAN no es válido\";\r\n}\r\n\r\nexport function phone(p) {\r\n\tif (p == \"\" || p == null) return true;\r\n\tp = String(p).replace(/[^0-9.]/g, \"\");\r\n\treturn p.length == 9 ? true : \"El teléfono no es válido\";\r\n}\r\n\r\nexport function email(v) {\r\n\tif (!v) return true;\r\n\tconst pattern = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n\treturn pattern.test(v) || \"El email no es válido\";\r\n}\r\n\r\nexport function spainIdType(str) {\r\n\tvar DNI_REGEX = /^(\\d{8})([A-Z])$/;\r\n\tvar CIF_REGEX = /^([ABCDEFGHJKLMNPQRSUVW])(\\d{7})([0-9A-J])$/;\r\n\tvar NIE_REGEX = /^[XYZ]\\d{7,8}[A-Z]$/;\r\n\tif (str.match(DNI_REGEX)) {\r\n\t\treturn \"dni\";\r\n\t}\r\n\tif (str.match(CIF_REGEX)) {\r\n\t\treturn \"cif\";\r\n\t}\r\n\tif (str.match(NIE_REGEX)) {\r\n\t\treturn \"nie\";\r\n\t}\r\n}\r\n\r\nexport function nif(str) {\r\n\tif (!str) return true;\r\n\tvar DNI_REGEX = /^(\\d{8})([A-Z])$/;\r\n\tvar CIF_REGEX = /^([ABCDEFGHJKLMNPQRSUVW])(\\d{7})([0-9A-J])$/;\r\n\tvar NIE_REGEX = /^[XYZ]\\d{7,8}[A-Z]$/;\r\n\r\n\treturn String(str).match(/([(A-Z)|(0-9)]{9})/) || 'El identificador no es válido';\r\n\r\n\tvar ValidateSpanishID = function(str) {\r\n\t\t// Ensure upcase and remove whitespace\r\n\t\tstr = str.toUpperCase().replace(/\\s/, \"\");\r\n\r\n\t\tvar valid = false;\r\n\t\tvar type = spainIdType(str);\r\n\r\n\t\tswitch (type) {\r\n\t\t\tcase \"dni\":\r\n\t\t\t\tvalid = validDNI(str);\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"nie\":\r\n\t\t\t\tvalid = validNIE(str);\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"cif\":\r\n\t\t\t\tvalid = validCIF(str);\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t\treturn valid || \"El identificador no es válido\";\r\n\t};\r\n\r\n\tvar validDNI = function(dni) {\r\n\t\tvar dni_letters = \"TRWAGMYFPDXBNJZSQVHLCKE\";\r\n\t\tvar letter = dni_letters.charAt(parseInt(dni, 10) % 23);\r\n\r\n\t\treturn letter == dni.charAt(8);\r\n\t};\r\n\r\n\tvar validNIE = function(nie) {\r\n\t\t// Change the initial letter for the corresponding number and validate as DNI\r\n\t\tvar nie_prefix = nie.charAt(0);\r\n\r\n\t\tswitch (nie_prefix) {\r\n\t\t\tcase \"X\":\r\n\t\t\t\tnie_prefix = 0;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Y\":\r\n\t\t\t\tnie_prefix = 1;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Z\":\r\n\t\t\t\tnie_prefix = 2;\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\treturn validDNI(nie_prefix + nie.substr(1));\r\n\t};\r\n\r\n\tconst validCIF = (cif) => {\r\n\t\tif (!cif || cif.length !== 9) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tvar letters = [\"J\", \"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\", \"H\", \"I\"];\r\n\t\tvar digits = cif.substr(1, cif.length - 2);\r\n\t\tvar letter = cif.substr(0, 1);\r\n\t\tvar control = cif.substr(cif.length - 1);\r\n\t\tvar sum = 0;\r\n\t\tvar i;\r\n\t\tvar digit;\r\n\r\n\t\tif (!letter.match(/[A-Z]/)) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\tfor (i = 0; i < digits.length; ++i) {\r\n\t\t\tdigit = parseInt(digits[i]);\r\n\r\n\t\t\tif (isNaN(digit)) {\r\n\t\t\t\treturn false;\r\n\t\t\t}\r\n\r\n\t\t\tif (i % 2 === 0) {\r\n\t\t\t\tdigit *= 2;\r\n\t\t\t\tif (digit > 9) {\r\n\t\t\t\t\tdigit = parseInt(digit / 10) + (digit % 10);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tsum += digit;\r\n\t\t\t} else {\r\n\t\t\t\tsum += digit;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tsum %= 10;\r\n\t\tif (sum !== 0) {\r\n\t\t\tdigit = 10 - sum;\r\n\t\t} else {\r\n\t\t\tdigit = sum;\r\n\t\t}\r\n\r\n\t\tif (letter.match(/[ABEH]/)) {\r\n\t\t\treturn String(digit) === control;\r\n\t\t}\r\n\t\tif (letter.match(/[NPQRSW]/)) {\r\n\t\t\treturn letters[digit] === control;\r\n\t\t}\r\n\r\n\t\treturn String(digit) === control || letters[digit] === control;\r\n\t};\r\n\r\n\treturn ValidateSpanishID(str);\r\n}","const routes = {\r\n path: \"/contratos\",\r\n name: \"Contratos\",\r\n component: () => import(\"./views/Contratos.vue\"),\r\n meta: { requiresAuth: true },\r\n props: (route) => Object.assign({}, route.query, route.params),\r\n};\r\n\r\nexport default routes;\r\n","export default {};","import router from './router'\r\nimport store from './store'\r\n\r\nexport default { router, store }","var render = function render(){var _vm=this,_c=_vm._self._c;return _c('v-dialog',{style:({ zIndex: _vm.options.zIndex }),attrs:{\"max-width\":_vm.options.width},model:{value:(_vm.show),callback:function ($$v) {_vm.show=$$v},expression:\"show\"}},[_c('v-form',{directives:[{name:\"hotkey\",rawName:\"v-hotkey\",value:(_vm.keymap),expression:\"keymap\"}],ref:\"form\"},[_c('v-card',[_c('v-toolbar',{attrs:{\"color\":_vm.options.color,\"dark\":\"\",\"dense\":\"\",\"flat\":\"\"}},[_c('v-toolbar-title',{staticClass:\"white--text\"},[_vm._v(_vm._s(_vm.title))])],1),_c('v-card-text',{directives:[{name:\"show\",rawName:\"v-show\",value:(!!_vm.message),expression:\"!!message\"}],staticClass:\"pa-4\"},[_vm._v(_vm._s(_vm.message))]),(_vm.options.addExplanation)?_c('v-textarea',{staticClass:\"mx-2\",attrs:{\"placeholder\":\"Escribe aquí el motivo...\",\"rules\":[_vm.req],\"auto-grow\":\"\",\"rows\":\"1\",\"no-resize\":\"\",\"filled\":\"\"},model:{value:(_vm.explanation),callback:function ($$v) {_vm.explanation=$$v},expression:\"explanation\"}}):_vm._e(),(_vm.mail=='true')?_c('v-text-field',{attrs:{\"placeholder\":\"Email para enviar copia\"},model:{value:(_vm.email_escrito),callback:function ($$v) {_vm.email_escrito=$$v},expression:\"email_escrito\"}}):_vm._e(),_c('v-divider',{staticClass:\"my-1\"}),_c('v-card-actions',{staticClass:\"pt-0 mt-2\"},[_c('v-spacer'),_c('v-btn',{attrs:{\"color\":_vm.options.cancelColor,\"text\":\"\"},nativeOn:{\"click\":function($event){return _vm.cancel.apply(null, arguments)}}},[_vm._v(\"Cancelar\")]),_c('v-btn',{attrs:{\"color\":_vm.options.confirmColor,\"dark\":\"\"},nativeOn:{\"click\":function($event){return _vm.agree.apply(null, arguments)}}},[_vm._v(_vm._s(_vm.options.confirmText))])],1)],1)],1)],1)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmDialog.vue?vue&type=script&lang=js\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./ConfirmDialog.vue?vue&type=script&lang=js\"","import { render, staticRenderFns } from \"./ConfirmDialog.vue?vue&type=template&id=27bda2d4\"\nimport script from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\nexport * from \"./ConfirmDialog.vue?vue&type=script&lang=js\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../node_modules/cache-loader/dist/cjs.js??ref--1-0!../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&id=2b9e2686&prod&lang=scss\"","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/@vue/cli-service/node_modules/vue-loader/lib/index.js??vue-loader-options!./ScannerQr.vue?vue&type=style&index=0&id=19e48578&prod&scoped=true&lang=scss\"","export function encode64(data) {\r\n return btoa(data);\r\n}\r\nexport function decode64(data) {\r\n return new TextDecoder().decode(urlB64ToUint8Array(data));\r\n}\r\n\r\nfunction urlB64ToUint8Array(base64String) {\r\n const padding = \"=\".repeat((4 - (base64String.length % 4)) % 4);\r\n const base64 = (base64String + padding).replace(/-/g, \"+\").replace(/_/g, \"/\");\r\n const rawData = window.atob(base64);\r\n const outputArray = new Uint8Array(rawData.length);\r\n\r\n for (let i = 0; i < rawData.length; ++i)\r\n outputArray[i] = rawData.charCodeAt(i);\r\n\r\n return outputArray;\r\n}\r\n\r\nexport function humanFileSize(bytes, dp = 1, units = \"file\") {\r\n const thresh = 1000;\r\n\r\n let unitArray;\r\n switch (units) {\r\n case \"file\":\r\n unitArray = [\"b\", \"kB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"];\r\n break;\r\n case \"length\":\r\n unitArray = [\"mm\", \"m\", \"km\"];\r\n break;\r\n case \"area\":\r\n unitArray = [\"m2\", \"km2\"];\r\n break;\r\n }\r\n\r\n\tif (Math.abs(bytes) < thresh) {\r\n return bytes + unitArray[0];\r\n }\r\n\r\n let u = -1;\r\n const r = 10 ** dp;\r\n\r\n do {\r\n bytes /= thresh;\r\n ++u;\r\n } while (\r\n Math.round(Math.abs(bytes) * r) / r >= thresh &&\r\n u < unitArray.length - 1\r\n );\r\n\r\n return bytes.toFixed(dp) + \" \" + unitArray[u];\r\n}\r\n\r\nexport function parseDate(date, timestamp = false, mes = true, hora = false) {\r\n if (date == null || date == undefined || date == \"\") return \"\";\r\n let fecha;\r\n\r\n if (!isNaN(Number(date))) fecha = new Date(Number(date));\r\n else\r\n fecha = new Date(\r\n String(date)\r\n .replaceAll(/\\\\/g, \"\")\r\n .split(\" \")[0]\r\n );\r\n\r\n if (timestamp) {\r\n fecha.setHours(0, 0, 0, 0);\r\n return fecha.getTime();\r\n }\r\n\r\n const MESES = [\r\n \"Enero\",\r\n \"Febrero\",\r\n \"Marzo\",\r\n \"Abril\",\r\n \"Mayo\",\r\n \"Junio\",\r\n \"Julio\",\r\n \"Agosto\",\r\n \"Septiembre\",\r\n \"Octubre\",\r\n \"Noviembre\",\r\n \"Diciembre\",\r\n ];\r\n let day = `0${fecha.getDate()}`.slice(-2);\r\n let month = mes\r\n ? MESES[fecha.getMonth()]\r\n : `0${fecha.getMonth() + 1}`.slice(-2);\r\n let year = fecha.getFullYear();\r\n\r\n if (hora)\r\n var HORA = [\r\n (\"00\" + fecha.getHours()).slice(-2),\r\n (\"00\" + fecha.getMinutes()).slice(-2),\r\n ].join(\":\");\r\n\r\n return [[day, month, year].join(\" \"), HORA].filter((v) => !!v).join(\", \");\r\n}\r\n\r\n// const status = {\r\n// ...store.getters.getEstados\r\n// };\r\n\r\n// export function getSituacionIcon(situacion) {\r\n// return status[situacion] || { color: \"grey\", icon: \"mdi-circle\" };\r\n// }\r\n\r\nexport function downloadFile(file, open = false) {\r\n let a = document.createElement(\"a\");\r\n a.href = URL.createObjectURL(file);\r\n if (\r\n open &&\r\n ![\r\n \"iPad\",\r\n \"iPhone\",\r\n \"iPod\",\r\n \"iPhone Simulator\",\r\n \"iPod Simulator\",\r\n \"iPad Simulator\",\r\n \"Macintosh\",\r\n \"MacIntel\",\r\n \"MacPPC\",\r\n \"Mac68K\",\r\n \"Pike v7.6 release 92\",\r\n \"Pike v7.8 release 517\",\r\n ].includes(navigator.platform)\r\n )\r\n a.target = \"_blank\";\r\n else a.download = file.name;\r\n a.click();\r\n}\r\n\r\nexport const perColumnFilter = (value, filter, dataType = \"text\") => {\r\n // console.log('FUNCION FILTRO', {filter, value})\r\n\r\n if (\r\n filter === \"\" ||\r\n filter === null ||\r\n filter === undefined ||\r\n (Array.isArray(filter) && filter.length == 0)\r\n )\r\n return true;\r\n if (filter === \"-\") return value === null;\r\n if (value === \"\" || value === null || value === undefined) return false;\r\n\r\n const filterText = (filter, value) => {\r\n value = String(value)\r\n .toLowerCase()\r\n .normalize(\"NFD\")\r\n .replace(/[\\u0300-\\u036f]/g, \"\");\r\n filter = String(filter)\r\n .toLowerCase()\r\n .normalize(\"NFD\")\r\n .replace(/[\\u0300-\\u036f]/g, \"\");\r\n const isOperation = /=|<|>|!/.test(filter[0]);\r\n if (isOperation) {\r\n switch (filter[0]) {\r\n case \"!\":\r\n return !value.includes(filter.substring(1));\r\n case \"=\":\r\n return value == filter.substring(1);\r\n case \">\":\r\n return Number(value) >= Number(filter.substring(1));\r\n case \"<\":\r\n return Number(value) <= Number(filter.substring(1));\r\n default:\r\n return false;\r\n }\r\n } else {\r\n return value.includes(filter);\r\n }\r\n };\r\n const filterDate = (filter, value) => {\r\n filter = filter.map((f) => {\r\n let temp = new Date(f);\r\n temp.setHours(0, 0, 0, 0);\r\n return temp.getTime();\r\n });\r\n value = parseDate(value, true);\r\n let max = Math.max(...filter);\r\n let min = Math.min(...filter);\r\n return max >= value && value >= min;\r\n };\r\n const filterSelect = (filter, value) => {\r\n if (filter.length > 1) return filter.includes(value);\r\n else return filterText(\"=\" + filter[0], value);\r\n };\r\n const filterBool = (filter, value) => filter == value\r\n\r\n switch (dataType) {\r\n case \"select\":\r\n return filterSelect(filter, value);\r\n case \"date\":\r\n return filterDate(filter, value);\r\n case \"bool\":\r\n return filterBool(filter, value);\r\n case \"text\":\r\n default:\r\n return filterText(filter, value);\r\n }\r\n};\r\n\r\nexport function timeAgo(timestamp, hours = true) {\r\n // if (timestamp == null) return null;\r\n\tlet now = Date.now();\r\n if (!hours) {\r\n let dateAux = new Date(timestamp);\r\n dateAux.setHours(0, 0, 0, 0);\r\n timestamp = dateAux.getTime();\r\n\t\tdateAux = new Date();\r\n dateAux.setHours(0, 0, 0, 0);\r\n now = dateAux.getTime();\r\n }\r\n const future = timestamp > now;\r\n const DATE_UNITS = {\r\n // week: 86400 * 7,\r\n day: 86400,\r\n hour: 3600,\r\n minute: 60,\r\n second: 1,\r\n };\r\n\r\n const getUnitAndValueDate = (secondsElapsed) => {\r\n secondsElapsed = Math.abs(secondsElapsed);\r\n for (const [unit, secondsInUnit] of Object.entries(DATE_UNITS)) {\r\n if (secondsElapsed >= secondsInUnit || unit === \"second\") {\r\n const value = Math.floor(secondsElapsed / secondsInUnit) * -1;\r\n return { value, unit };\r\n }\r\n }\r\n };\r\n\r\n const getTimeAgo = () => {\r\n const rtf = new Intl.RelativeTimeFormat(\"es\", {\r\n localeMatcher: 'best fit',\r\n numeric: 'auto',\r\n });\r\n\r\n const { value, unit } = getUnitAndValueDate(secondsElapsed);\r\n return rtf.format(future ? Math.abs(value) : Math.abs(value) * -1, unit);\r\n };\r\n\r\n const secondsElapsed = (now - timestamp) / 1000;\r\n // const secondsElapsed = Date.now() > timestamp ? (Date.now() - timestamp) / 1000 : (timestamp - Date.now()) / 1000\r\n\r\n if (secondsElapsed >= DATE_UNITS.week) {\r\n return parseDate(timestamp, false, true, true);\r\n } else {\r\n const [first, ...rest] = getTimeAgo(timestamp);\r\n return [first.toUpperCase(), rest.join(\"\")].join(\"\");\r\n }\r\n}\r\n\r\nexport function jsonToCsv(items, csvHeaders, filename) {\r\n const JStoExcelDate = (date) => {\r\n const [day, month, year] = date.split(' ')\r\n return [year, month, day].join('-');\r\n }\r\n\r\n const csvString = [\r\n ...items.map(item => {\r\n let temp = [];\r\n csvHeaders.forEach(({ value : key, dataType }) => {\r\n let valor = (item[key] != null ? String(item[key]) : item[key] || '\\u0020').replace('\\r\\n', '');\r\n if (dataType == 'date') valor = JStoExcelDate(parseDate(valor, false, false));\r\n else if (dataType == 'number') valor = valor.replace('.', ',');\r\n else if (dataType == 'html') valor = valor.replaceAll(/<[^>]*>/g, '').replaceAll(/;/g, '');\r\n temp.push(valor)\r\n })\r\n return temp;\r\n })\r\n ];\r\n\r\n const csvFile = new File(['\\ufeff', [csvHeaders.map(h => h.alias || h.value), ...csvString].map(e => e.join(\";\")).join(\"\\n\")], `${filename}.csv`, { type: 'text/csv;charset=utf-8;' });\r\n\r\n downloadFile(csvFile);\r\n}\r\n\r\nexport async function copyText(text) {\r\n return await navigator.clipboard.writeText(text)\r\n}\r\n\r\nexport function getTicketStatus(state) {\r\n\t// state = state.toLowerCase() || \"\";\r\n\tswitch (state) {\r\n\t\tcase \"abierto\":\r\n\t\t\treturn { color: \"primary\", icon: \"mdi-lock-open-variant\" };\r\n\t\tcase \"cerrado\":\r\n\t\t\treturn { color: \"error\", icon: \"mdi-lock\" };\r\n\t\tdefault:\r\n\t\t\treturn { color: \"error\", icon: \"\" };\r\n\t}\r\n}"],"sourceRoot":""}