{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/utils/axiosWrapper.ts","webpack:///./src/components/QrScannerInput.vue?0d9c","webpack:///./src/App.vue?1537","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/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","quitar","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","nombrefiscalcolaborador","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.f632ad12.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\":\"670d3190\",\"chunk-19550692\":\"7a44c7c5\",\"chunk-2d0c4a27\":\"2146fad2\",\"chunk-0a7641e7\":\"06a36f76\",\"chunk-2d0db7fd\":\"bb694c59\",\"chunk-2d0f024f\":\"48cbd523\",\"chunk-2d2217ba\":\"2fa424fe\",\"chunk-2d230a68\":\"fc85bf3e\",\"chunk-462129d6\":\"0cc35cec\",\"chunk-5ed998e3\":\"83088946\",\"chunk-63ebd864\":\"01aaa660\",\"chunk-346221c2\":\"1c92fcb6\",\"chunk-7bf662de\":\"d041ea4f\",\"chunk-bf3ad5e4\":\"91e6d564\",\"chunk-510d4593\":\"d473bfdc\",\"chunk-765eb219\":\"7aa0a543\",\"chunk-1a3fa364\":\"1ae3617d\",\"chunk-e6454d38\":\"00f6622c\",\"chunk-77770818\":\"2ab7154f\",\"chunk-2d221b96\":\"4103d153\",\"chunk-652ff93e\":\"c14a5fd3\",\"chunk-2d0c8fe2\":\"b97dbd1e\",\"chunk-243df1f1\":\"cbc85f04\",\"chunk-3cdc8b6e\":\"d2b90f3f\",\"chunk-78629d81\":\"81446c50\",\"chunk-2d22495e\":\"04656e5a\",\"chunk-1521a070\":\"311b7964\",\"chunk-8225d23c\":\"e2e90a1b\",\"chunk-2d0a3c7d\":\"c6cdf6fe\",\"chunk-f6748030\":\"23b52828\",\"chunk-2d0a4771\":\"ee5b90ff\",\"chunk-2d0d0092\":\"77fffa68\",\"chunk-2d229083\":\"1a919ace\",\"chunk-2d0db0b6\":\"df7c214a\",\"chunk-2d22d993\":\"0af4ae0d\",\"chunk-23e8a645\":\"23ad397f\",\"chunk-2d0e91b3\":\"2cbfbbcc\",\"chunk-2d217b04\":\"9d487270\",\"chunk-52667de9\":\"425ccba7\",\"chunk-8bd413e2\":\"d2ff9540\",\"chunk-18ee8e3a\":\"62be7337\",\"chunk-2d0afe39\":\"8cd7dd16\"}[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-0a7641e7\":1,\"chunk-462129d6\":1,\"chunk-5ed998e3\":1,\"chunk-63ebd864\":1,\"chunk-346221c2\":1,\"chunk-7bf662de\":1,\"chunk-bf3ad5e4\":1,\"chunk-510d4593\":1,\"chunk-765eb219\":1,\"chunk-1a3fa364\":1,\"chunk-e6454d38\":1,\"chunk-77770818\":1,\"chunk-652ff93e\":1,\"chunk-243df1f1\":1,\"chunk-3cdc8b6e\":1,\"chunk-78629d81\":1,\"chunk-1521a070\":1,\"chunk-8225d23c\":1,\"chunk-f6748030\":1,\"chunk-23e8a645\":1,\"chunk-52667de9\":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-2d0c4a27\":\"31d6cfe0\",\"chunk-0a7641e7\":\"8711b122\",\"chunk-2d0db7fd\":\"31d6cfe0\",\"chunk-2d0f024f\":\"31d6cfe0\",\"chunk-2d2217ba\":\"31d6cfe0\",\"chunk-2d230a68\":\"31d6cfe0\",\"chunk-462129d6\":\"4f4b3c7b\",\"chunk-5ed998e3\":\"f0222215\",\"chunk-63ebd864\":\"d7e56d54\",\"chunk-346221c2\":\"f74616dc\",\"chunk-7bf662de\":\"2c3a2505\",\"chunk-bf3ad5e4\":\"558afe1e\",\"chunk-510d4593\":\"bb456ed9\",\"chunk-765eb219\":\"dd61c65f\",\"chunk-1a3fa364\":\"5a896e90\",\"chunk-e6454d38\":\"f0222215\",\"chunk-77770818\":\"02794b3d\",\"chunk-2d221b96\":\"31d6cfe0\",\"chunk-652ff93e\":\"e6c767eb\",\"chunk-2d0c8fe2\":\"31d6cfe0\",\"chunk-243df1f1\":\"ae48a48e\",\"chunk-3cdc8b6e\":\"ae48a48e\",\"chunk-78629d81\":\"ae48a48e\",\"chunk-2d22495e\":\"31d6cfe0\",\"chunk-1521a070\":\"02794b3d\",\"chunk-8225d23c\":\"2c2d8db3\",\"chunk-2d0a3c7d\":\"31d6cfe0\",\"chunk-f6748030\":\"fd60fb55\",\"chunk-2d0a4771\":\"31d6cfe0\",\"chunk-2d0d0092\":\"31d6cfe0\",\"chunk-2d229083\":\"31d6cfe0\",\"chunk-2d0db0b6\":\"31d6cfe0\",\"chunk-2d22d993\":\"31d6cfe0\",\"chunk-23e8a645\":\"d352a15f\",\"chunk-2d0e91b3\":\"31d6cfe0\",\"chunk-2d217b04\":\"31d6cfe0\",\"chunk-52667de9\":\"d198159d\",\"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\";\nimport { AxiosError } from \"axios\";\nimport { Ref, ref } from \"vue\";\n\nfunction updateOptions(options, url) {\n if (options === undefined) return { url };\n options.url = url;\n return options;\n}\n\ntype httpResponseAxios = {\n data: Ref;\n error: Ref;\n pending: Ref;\n refresh: () => void;\n};\n\nexport default function httpRequest(...args: any[]): httpResponseAxios {\n let [url, options] = args;\n if (!options && typeof url === \"object\") {\n options = url;\n url = options.url;\n }\n\n options = updateOptions(options, url);\n\n const data = ref(null);\n if (options.default) data.value = options.default();\n\n const error = ref();\n const pending = ref(false);\n\n const makeRequest = async (extra_options?: Object) => {\n options = { ...options, ...extra_options };\n pending.value = true;\n try {\n const { data: json } = await window.axios(options);\n if (options.transform) data.value = options.transform(json);\n else data.value = json;\n pending.value = false;\n return true;\n } catch (e) {\n if (e instanceof AxiosError) {\n if (e.response?.request?.responseType == \"blob\")\n error.value = JSON.parse(await e.response.data.text());\n else if (options.transformError)\n error.value = await options.transformError(e);\n else error.value = e.response;\n }\n pending.value = false;\n\n return false;\n }\n };\n\n if (!options.lazy) makeRequest();\n // if (!options.lazy) {\n // if (options.block) async () => await makeRequest();\n // else if (!options.block) makeRequest();\n // }\n\n return {\n data,\n error,\n pending,\n refresh: makeRequest,\n };\n}\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\"","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=1e3926e0&prod&lang=scss\"","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 }","\n\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 }","\n\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'\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'QrScannerInput',\n emits: ['detect', 'input'],\n setup(__props, { emit }) {\n\n\n\n// const value = useVModel(props, 'value', emit)\n// const value = computed({\n// set(v) {\n// emit('input', v)\n// },\n// get() {\n// return props.value\n// }\n// })\nconst value = ref('')\n\n// const textareaUrl = ref(null)\nconst refs = getCurrentInstance()?.proxy.$refs\nconst nextTick = getCurrentInstance()?.proxy.$nextTick\n\nconst setFocus = () => {\n if (refs.textareaUrl) {\n nextTick(() => {\n refs.textareaUrl.focus()\n })\n }\n}\n\nonMounted(() => {\n setTimeout(() => {\n setFocus();\n }, 1)\n})\n\nconst toQrResult = (url: string) => {\n console.log(url);\n\n return [{ rawValue: url }]\n}\n\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'\nimport { useDevicesList, useVModel } from '@vueuse/core'\nimport { Ref, computed, getCurrentInstance, ref } from 'vue'\nimport DragAndDrop from './DragAndDrop.vue'\nimport QrScannerInput from './QrScannerInput.vue'\ntype QrResult = {\n rawValue: string;\n}\n\nimport axios from 'axios'\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'ScannerQr',\n props: ['value'],\n emits: ['input', 'close'],\n setup(__props, { emit }) {\n\nconst props = __props;\n\nconst { videoInputs: cameras } = useDevicesList()\nconst hasCamera = computed(() => cameras.value.length > 0)\n\nconst root = getCurrentInstance()?.proxy.$root\n\n\n\n\nconst value = useVModel(props, 'value', emit)\n\nconst scanningQr = ref(false)\n\nconst tipoEscaner = ref(0)\n\nconst qrFile = ref([])\n\nasync function qrDetected(qrResult: Promise<{ content: string }> | null, qrFile?: Ref | null) {\n\n scanningQr.value = true\n\n const formData = new FormData()\n if (qrResult != null) {\n const { content } = await qrResult\n formData.append('url', content)\n }\n if (qrFile?.value != null)\n formData.append('qr_file', qrFile.value[0])\n\n try {\n const { data } = await axios({\n url: \"/api/comparativas/comparativa_desde_qr\",\n method: \"POST\",\n data: formData,\n });\n console.log(data);\n\n } catch (error) {\n root.$emit(\"snack\", `Ha ocurrido un error al crear la comparativa: ${error?.data?.detail}`, { type: 'error' });\n } finally {\n scanningQr.value = false\n value.value = false\n return\n }\n\n}\n\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","\n\n\n\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=1e3926e0\"\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=1e3926e0&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'\n\nconst routes = {\n path: \"/auth\",\n component: () => import(\"./Module.vue\"),\n children: [\n {\n path: \"login\",\n name: \"Login\",\n component: () => import(\"./views/Login.vue\"),\n beforeEnter: (to, from, next) => {\n if (store.getters.isLoggedIn) next({ name: \"Inicio\" });\n else next();\n },\n },\n ],\n};\n\nexport default routes;\n","import axios from \"axios\";\n\nfunction urlB64ToUint8Array(base64String) {\n const padding = \"=\".repeat((4 - (base64String.length % 4)) % 4);\n const base64 = (base64String + padding).replace(/-/g, \"+\").replace(/_/g, \"/\");\n const rawData = window.atob(base64);\n const outputArray = new Uint8Array(rawData.length);\n\n for (let i = 0; i < rawData.length; ++i)\n outputArray[i] = rawData.charCodeAt(i);\n\n return outputArray;\n}\n\nfunction decode64(data) {\n return new TextDecoder().decode(urlB64ToUint8Array(data));\n}\n\nconst auth = {\n state: () => ({\n token: localStorage.getItem(\"token\") || null,\n permisos: JSON.parse(localStorage.getItem(\"permisos\")) || null,\n refreshLock: Date.now(),\n tenant: JSON.parse(localStorage.getItem(\"tenant\")) || null,\n estados: JSON.parse(localStorage.getItem(\"estados\")) || null,\n }),\n getters: {\n isLoggedIn: (state) => !!state.token,\n getToken: (state) => state.token,\n getTokenPayload: (state) =>\n state.token ? JSON.parse(decode64(state.token.split(\".\")[1])) : null,\n getTenant: (state) => state.tenant || {},\n getPermisos: (state) => state.permisos,\n getEstados: (state) => state.estados,\n },\n mutations: {\n logout(state) {\n return new Promise((resolve) => {\n localStorage.removeItem(\"token\");\n localStorage.removeItem(\"permisos\");\n state.token = null;\n resolve();\n });\n },\n login(state, token) {\n localStorage.setItem(\"token\", token);\n state.token = token;\n },\n setEstados(state, estados) {\n return new Promise((resolve) => {\n localStorage.setItem(\"estados\", JSON.stringify(estados));\n state.estados = estados;\n resolve();\n })\n },\n setTenant(state, tenant) {\n return new Promise((resolve) => {\n localStorage.setItem( \"tenant\", JSON.stringify(tenant) )\n state.tenant = tenant;\n resolve();\n });\n },\n setPermisos(state, per) {\n return new Promise(async (resolve) => {\n localStorage.setItem(\"permisos\", JSON.stringify(per));\n state.permisos = per;\n resolve();\n });\n },\n },\n actions: {\n login({ commit, getters }, { user, password }) {\n return new Promise(async (resolve, reject) => {\n try {\n const formData = new FormData();\n formData.append(\"username\", user);\n formData.append(\"password\", password);\n const { data: token } = await axios({\n method: \"POST\",\n url: `${process.env.VUE_APP_API_URL}/auth/login`,\n data: formData,\n headers: {\n tenant: getters.getTenant.db\n }\n });\n\n axios = axios.create({\n headers: {\n Authorization: `${token.token_type} ${token.access_token}`,\n tenant: getters.getTenant.db\n },\n baseURL : `${process.env.VUE_APP_API_URL}/${getters.getTenant.slug}`\n });\n\n\n await commit(\"login\", token.access_token);\n resolve();\n } catch (e) {\n console.error(e);\n reject();\n }\n });\n },\n refreshToken({ commit, getters, state }) {\n return new Promise(async (resolve) => {\n if (Date.now() < state.refreshLock || !getters.getToken) {\n resolve();\n return;\n }\n\n const { data: token } = await axios({\n method: \"GET\",\n url: `/auth/refresh_token`,\n headers: { Authorization: `bearer ${getters.getToken}` },\n });\n\n state.refreshLock = Date.now() + 1000 * 60 * 10;\n\n resolve(\n await Promise.all([\n commit(\"login\", token.access_token),\n ])\n );\n });\n },\n logout({ commit }) {\n return new Promise(async (resolve) => {\n commit(\"logout\");\n resolve();\n });\n },\n setTenant({ commit }, tenant) {\n return new Promise(async (resolve) => {\n await commit(\"setTenant\", tenant);\n resolve();\n });\n },\n setPermisos({ commit }, permisos) {\n return new Promise(async (resolve) => {\n await commit(\"setPermisos\", permisos);\n resolve();\n });\n },\n },\n};\n\nexport default auth;\n","import router from './router'\nimport store from './store'\n\nexport default { router, store }","const routes = {\n path: \"/\",\n name: \"Inicio\",\n component: () => import(\"./views/Home.vue\"),\n meta: { requiresAuth: true },\n};\n\nexport default routes;\n","export default {\n state: () => ({\n menu: [],\n }),\n getters: {\n getMenu: (state) => state.menu,\n },\n mutations: {\n setMenu(state, menu) {\n state.menu = menu;\n },\n },\n actions: {\n setMenu({ commit }, menu) {\n commit(\"setMenu\", menu);\n },\n },\n};\n","import router from './router'\nimport store from './store'\n\nexport default { router, store }","import Vue from 'vue'\nimport Vuex from \"vuex\";\n\nimport auth from '../modules/auth';\nimport home from '../modules/home';\n\nVue.use(Vuex);\n\nconst store = new Vuex.Store({\n modules: {\n auth: auth.store,\n store: home.store,\n }\n})\n\nexport default store","const routes = {\n path: \"/facturas\",\n name: \"Facturas\",\n component: () => import(\"./views/Facturas.vue\"),\n meta: { requiresAuth: true },\n props: (route) => Object.assign({}, route.query, route.params),\n};\n\nexport default routes;\n","export default {};","import router from './router'\nimport store from './store'\n\nexport default { router, store }","const routes = {\n path: \"/borradores\",\n component: () => import(\"./Module.vue\"),\n meta: { requiresAuth: true },\n children : [\n {\n path : '',\n name: \"Borradores\",\n component: () => import(\"./views/Borradores.vue\"),\n },\n {\n path : 'nuevo',\n name: \"NuevoBorrador\",\n props: route => Object.assign({}, route.params, route.query),\n component: () => import(\"./views/borrador-router.vue\"),\n },\n // {\n // path : 'nuevo1774',\n // name: \"NuevoBorrador1774\",\n // meta: {\n // titulo: 'Enviar borrador',\n // },\n // props: route => Object.assign({}, route.params, route.query),\n // component: import(\"./views/Borradores1774.vue\"),\n // },\n // {\n // path : 'nuevoZirconite',\n // name: \"NuevoBorradorZirconite\",\n // meta: {\n // titulo: 'Enviar borrador',\n // },\n // props: route => Object.assign({}, route.params, route.query),\n // component: () => import(\"./views/BorradoresZirconite.vue\"),\n // },\n // {\n // path : 'nuevoJaeva',\n // name: \"NuevoBorradorJaeva\",\n // meta: {\n // titulo: 'Enviar borrador',\n // },\n // props: route => Object.assign({}, route.params, route.query),\n // component: () => import(\"./views/BorradoresJaeva.vue\"),\n // },\n {\n path : ':id',\n name: \"EditarBorrador\",\n props: route => Object.assign({}, route.params, route.query),\n component: () => import(\"./views/borrador-router.vue\"),\n },\n ]\n};\n\nexport default routes;\n","export default {};","import router from './router'\nimport store from './store'\n\nexport default { router, store }","const routes = {\n path: \"/descargas\",\n name: \"ZonaDescargas\",\n component: () => import(\"./views/ZonaDescargas.vue\"),\n meta: { requiresAuth: true },\n props: (route) => Object.assign({}, route.query, route.params),\n};\n\nexport default routes;\n","export default {};","import router from './router'\nimport store from './store'\n\nexport default { router, store }","const routes = {\n path: \"/chat\",\n name: 'Chat',\n component: () => import(\"./views/Chat.vue\"),\n meta: { requiresAuth: true },\n // children : [\n // {\n // path : ':id',\n // name: \"Ticket\",\n // props: (route) => Object.assign({}, route.query, route.params),\n // component: () => import(\"./views/Ticket.vue\"),\n // },\n // ]\n};\n\nexport default routes;\n","export default {};","import router from './router'\nimport store from './store'\n\nexport default { router, store }","const routes = {\n path: \"/audios\",\n name: \"Audios\",\n component: () => import(\"./Module.vue\"),\n meta: { requiresAuth: true },\n children: [\n {\n path: 'gana',\n name: 'AudiosGana',\n component: () => import(\"./views/Gana.vue\"),\n }\n ]\n};\n\nexport default routes;\n","export default {};","import router from './router'\nimport store from './store'\n\nexport default { router, store }","const routes = {\n path: \"/leads\",\n name: \"LeadsCSQ\",\n component: () => import(\"./views/Leads.vue\"),\n meta: { requiresAuth: true },\n props: (route) => Object.assign({}, route.query, route.params),\n};\n\nexport default routes;\n","export default {};","import router from './router'\nimport store from './store'\n\nexport default { router, store }","import Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport store from \"@/store/index.js\";\n// import auth from '../modules/auth/store'\n\nVue.use(VueRouter)\n\nimport home from '@/modules/home'\nimport auth from '@/modules/auth'\nimport contratos from '@/modules/contratos'\nimport facturas from '@/modules/facturas'\nimport borradores from '@/modules/borradores'\nimport descargas from '@/modules/descargas'\nimport tickets from '@/modules/tickets'\nimport audios from '@/modules/audios'\nimport leads from '@/modules/leads'\n\nconst modules = (mod) => store.getters.getTenant && store.getters.getTenant.modules\n\nconst routes = [\n home.router,\n auth.router,\n // modules('CONTRATOS') ? contratos.router : null,\n // modules('FACTURAS') ? facturas.router : null,\n // modules('BORRADORES') ? borradores.router : null,\n contratos.router,\n facturas.router,\n borradores.router,\n descargas.router,\n tickets.router,\n audios.router,\n leads.router,\n {\n path: '*',\n redirect : '/'\n }\n].filter(x => x !== null)\n\nconst router = new VueRouter({\n mode: 'history',\n base: process.env.BASE_URL,\n routes\n})\n\nconst validarToken = (token) => token && new Date((token.exp * 1000)).getTime() > new Date().getTime();\n\nrouter.beforeEach(async (to, from, next) => {\n if (\n to.matched.some((record) => record.meta.requiresAuth)\n && !validarToken(store.getters.getTokenPayload)\n ) {\n let msg = store.getters.getToken != null ? \"La sesión ha expirado\" : \"\";\n await store.dispatch(\"logout\");\n next({ name: \"Login\", query: { redirect: to.path, msg } });\n }\n\n // if (to.matched.some((record) => record.meta.acceso)) {\n // const acceso = to.matched.find((record) => record.meta.acceso).meta.acceso;\n // if (\n // !!(\n // store.getters.getDecodedJwtEmpresa.permisos_b &\n // store.getters.getPermisos[acceso]\n // )\n // )\n // next();\n // else next({ name: \"Home\" });\n // }\n next();\n});\n\nexport default router\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'\nimport DonVatio from \"@/components/icons/donvatio.vue\";\n\nconst icons = {\n // donvatio: (\n // \t\n // \t\n // \t\n // \t\n // )\n donvatio: {\n component: DonVatio,\n props: {\n name: \"donvatio\",\n },\n },\n};\n\nexport default icons;\n","import Vue from 'vue';\nimport Vuetify from 'vuetify/lib/framework';\nimport {es} from 'vuetify/es5/locale'\nimport customIcons from '@/utils/customIcons'\n\nVue.use(Vuetify);\n\nconst mq = window.matchMedia('(prefers-color-scheme: dark)')\nconst storedTheme = localStorage.getItem('theme') || false;\nconst dark = storedTheme === null ? mq.matches : JSON.parse(storedTheme)\n\nconst tenant = localStorage.getItem('tenant') ? JSON.parse(localStorage.getItem('tenant')) : {}\n\nexport default new Vuetify({\n theme : {\n dark,\n options: { customProperties: true },\n themes: {\n ...tenant.theme\n }\n },\n icons: {\n iconfont: 'mdi',\n values: customIcons\n },\n lang: {\n\t\tlocales: {es},\n\t\tcurrent : 'es'\n\t}\n});\n","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production')\n{\n register(`${process.env.BASE_URL}dist/service-worker.js`, {\n registrationOptions: {\n type: 'module',\n scope: '.'\n // type: 'module',\n },\n ready () {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered () {\n console.log('Service worker has been registered.')\n },\n cached () {\n console.log('Content has been cached for offline use.')\n },\n updatefound () {\n console.log('New content is downloading.')\n },\n updated () {\n console.log('New content is available; please refresh.')\n },\n offline () {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error (error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","export default {\n common: {\n dragAndDrop: \"Haz click aquí o arrastra los archivos\",\n aceptar: \"Aceptar\",\n cancelar: \"Cancelar\",\n ok: \"Ok\",\n tipo: \"Tipo\",\n nombre: \"Nombre\",\n recargar: \"Recargar\",\n editar: \"Editar\",\n volver: \"Volver\",\n guardar: \"Guardar\",\n subir: \"Subir\",\n validar: \"Validar campos\",\n eliminar: \"Eliminar\",\n cups: \"CUPS\",\n exportar: \"Exportar\",\n cargados: \"Cargados {n} de {t}\",\n cargar_mas: \"Cargar más\",\n descargar: \"Descargar\",\n busqueda: \"Búsqueda...\",\n exportar: \"Exportar\",\n ver: \"Ver\",\n quitar: \"Quitar\",\n subir: \"Subir\",\n },\n\n audios_gana: {\n venta: \"Audio Venta\",\n legal: \"Texto Legal\",\n certificado: \"Certificado\",\n subir_todo: \"Subir todo\",\n nif_no_detectado: \"No se ha dectado el NIF de los siguientes archivos:\",\n subida_ok: \"Los archivos se han subido correctamente\",\n },\n\n confirm: {\n eliminar: {\n archivo: {\n title: \"Eliminar archivo\",\n text: \"¿Estás seguro de que quieres eliminar este documento?\",\n },\n borrador: {\n title: \"Eliminar borrador\",\n text: \"¿Estás seguro de que quieres eliminar este borrador? Esta acción no se puede deshacer\",\n ok_result: \"Eliminado con éxito\",\n },\n mensaje: {\n title: \"Eliminar mensaje\",\n text: \"¿Estás seguro de que quieres eliminar este mensaje? Esta acción no se puede deshacer\",\n ok_result: \"Eliminado con éxito\",\n },\n },\n revision: {\n title: \"Enviar a revisión\",\n text: \"¿Estás seguro de que quieres enviar este borrador a revisión? Una vez enviado no podrás modificar los datos\",\n ok_result: \"Guardado como contrato | Guardado como borrador\",\n error_result:\n \"Error al guardar como contrato | Error al guardar como borrador\",\n },\n anular: {\n title: \"Anular contrato\",\n text: \"¿Estás seguro de que quieres anular este contrato?\",\n ok_result: \"Contrato anulado con éxito\",\n error_result: \"Error al anular el contrato\",\n motivo: \"Motivo anulación\",\n },\n enviar_consentimiento : {\n title: \"Enviar consentimiento\",\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\",\n ok_result: \"Consentimiento enviado con éxito\",\n error_result: \"Error al enviar el consentimiento\",\n mail: \"true\"\n }\n },\n\n login: {\n error: \"Los datos de acceso no son correctos\",\n usuario: \"Usuario\",\n pass: \"Contraseña\",\n login: \"Acceder\",\n },\n\n noticias: {\n novedades: \"Novedades\",\n mas_menos: \"Leer más | Leer menos\",\n },\n\n menu: {\n inicio: \"Inicio\",\n contratos: \"Contratos\",\n borradores: \"Borradores\",\n documentos: \"Documentos\",\n facturas: \"Facturas\",\n verificaciones: \"Verificaciones\",\n llamadas: \"Llamadas\",\n audios_gana: \"Audios Gana\",\n leads: \"Leads\",\n comparativas: \"Comparativas\",\n comparativas_qr: \"Comparativas desde QR\",\n chat: \"Chat\",\n tarjetas: {\n inicio: \"@:menu.inicio\",\n contratos:\n \"Tienes {n} contratos detenidos | Tienes 1 contrato detenidos | No tienes contratos detenidos\",\n borradores:\n \"Tienes {n} borradores por enviar | Tienes 1 borrador por enviar | No tienes borradores por enviar\",\n facturas:\n \"Tienes {n} facturas pendientes | Tienes 1 factura pendiente | No tienes facturas pendientes\",\n verificaciones:\n \"Tienes {n} verificaciones por subir | Tienes 1 verificación por subir | No tienes verificaciones por subir\",\n documentos: \"Documentos disponibles para descargar\",\n leads: \"{0} registrados\",\n comparativas: \"Realiza comparativas de luz o gas a partir del CUPS\",\n chat: \"Tienes {0} mensajes sin leer\",\n },\n },\n\n borradores: {\n nuevo: \"Nuevo borrador\",\n fecha: \"Fecha\",\n cups: \"@:common.cups\",\n comer: \"Comercializadora\",\n tipo_contrato: \"Tipo contrato\",\n llamadas: \"Llamadas\",\n tarifa: \"Tarifa\",\n potencia: \"Pot {p}\",\n consumo: \"Consumo\",\n oferta: \"Oferta\",\n dni_titular: \"DNI/NIF titular\",\n nombre_titular: \"Nombre titular\",\n dni_firmante: \"DNI/NIF firmante\",\n telefono: \"Teléfono\",\n telefono2: \"Segundo teléfono \",\n nombre_firmante: \"Nombre firmante\",\n cp_cups: \"@:borradores.cp @:common.cups\",\n pob_cups: \"Población @:common.cups\",\n dir_cups: \"Dirección @:common.cups\",\n prov_cups: \"Provincia @:common.cups\",\n telf: \"Teléfono\",\n email: \"Email\",\n iban: \"Cuenta bancaria\",\n otros: \"Otros datos\",\n cups2: \"@:common.cups 2\",\n refcomer: \"REF.COMER\",\n refcomer2: \"REF.COMER2\",\n cnae: \"CNAE\",\n cambiotit: \"Camb.Tit\",\n cambiopot: \"Camb.Pot\",\n fecha_act: \"Fecha activación\",\n dir_corres: \"Dirección correspondencia\",\n cp: \"Cód.Postal\",\n cp_corres: \"Cód.Postal correspondencia\",\n per_contacto: \"Persona contacto\",\n telf2: \"@:borradores.telf 2\",\n prod_adicionales: \"Productos adicionales\",\n documentacion: \"Documentación\",\n adjunta_doc: \"Adjunta aquí la documentación del contrato\",\n validacion_ok: \"Campos validados con éxito\",\n cups_o_titular:\n \"Es obligatorio un CUPS o un titular para guardar el borrador\",\n intervalo: \"Intervalo\",\n factura_electronica : \"Factura electónica\",\n pago_domiciliado: 'Pago domiciliado',\n },\n\n documentacion: {\n not_found: \"No se ha encontrado el documento\",\n error_subir: \"No se ha podido subir el documento\",\n },\n verificacion: {\n adjuntar: \"Adjuntar verificación\",\n not_found: \"No se ha encontrado el documento\",\n error_subir: \"No se ha podido subir el documento\",\n },\n\n contratos: {\n estado: \"Estado contrato\",\n motivo_dev: \"MOTIVO DEVOLUCIÓN\",\n motivo_anu: \"MOTIVO ANULACIÓN\",\n motivo_det: \"MOTIVO DETENCIÓN\",\n\n datos: \"Datos contrato\",\n factura: \"Factura pago\",\n fecha: \"Fecha\",\n bimp: \"B.Imp.\",\n\n ver_doc: \"Ver documento\",\n ver_fac: \"Ver factura\",\n anular: \"Anular contrato\",\n motivo_anulacion: \"Motivo anulación\",\n\n comentario: \"Comentario\",\n agente: \"Agente\",\n tipo: \"Tipo\",\n nombre: \"Nombre\",\n\n documentos: \"Documentos adjuntos\",\n historico: \"Histórico contrato\",\n },\n\n descargas: {\n vacio: \"No hay archivos disponibles para descargar\",\n comers: \"TODAS COMERCIALIZADORAS\",\n },\n\n facturas: {\n estado: \"Estado factura\",\n pago_fac: \"Pago factura\",\n cuenta_pago: \"Cuenta pago\",\n ver_doc: \"Ver documento\",\n desglose: \"Desglose factura\",\n datos: \"Datos factura\",\n razon_social: \"Razón social\",\n nif: \"NIF/CIF\",\n fecha_fac: \"Fecha Factura\",\n n_doc: \"Número documento\",\n bimp: \"Base Imponible\",\n iva: \"IVA {pct}%\",\n irpf: \"IRPF {pct}%\",\n total: \"Total Factura\",\n dir: \"Dirección\",\n pob: \"Población\",\n prov: \"Provincia\",\n cp: \"Cod.Postal\",\n contenido: \"Contenido factura\",\n lineas: \"1 línea | {n} líneas\",\n hist: \"Histórico factura\",\n ver_contrato: \"Abrir el contrato\",\n adjuntar: \"Adjuntar documento\",\n fechafactura: \"Fecha factura\",\n numerofactura: \"Nº factura\",\n bifactura: \"Base Imp.\",\n nombrefiscalcolaborador: \"Colaborador\",\n totalfactura: \"Total factura\",\n estadofactura: \"Estado factura\",\n },\n\n chat: {\n archivos_adjuntos: \"1 archivo adjunto | {n} archivos adjuntos\",\n escribe_aqui: \"Escribe aquí tu mensaje...\",\n adjuntar_archivos: \"Adjuntar archivos\",\n },\n};\n","export default {\n common: {\n dragAndDrop: \"Clique aqui ou arraste arquivos\",\n aceptar: \"Aceitar\",\n cancelar: \"Cancelar\",\n ok: \"Ok\",\n tipo: \"Tipo\",\n nombre: \"Nome\",\n recargar: \"Recarregar\",\n editar: \"Editar\",\n volver: \"Voltar\",\n guardar: \"Salvar\",\n subir: \"Subir\",\n validar: \"Validar campos\",\n eliminar: \"Excluir\",\n cups: \"CPE/CUI\",\n exportar: \"Exportar\",\n cargados: \"Carregados {n} de {t}\",\n cargar_mas: \"Carregar mais\",\n descargar: \"Baixar\",\n busqueda: \"Busca...\",\n exportar: \"Exportar\",\n ver: \"Ver\",\n },\n audios_gana: {\n venta: \"Áudio de Venda\",\n legal: \"Texto Legal\",\n certificado: \"Certificado\",\n subir_todo: \"Subir tudo\",\n nif_no_detectado: \"NIF não detectado nos seguintes arquivos:\",\n subida_ok: \"Os arquivos foram carregados com sucesso\",\n },\n confirm: {\n eliminar: {\n archivo: {\n title: \"Excluir arquivo\",\n text: \"Tem certeza de que deseja excluir este documento?\",\n },\n borrador: {\n title: \"Excluir rascunho\",\n text: \"Tem certeza de que deseja excluir este rascunho? Esta ação não pode ser desfeita\",\n ok_result: \"Excluído com sucesso\",\n },\n mensaje: {\n title: \"Excluir mensagem\",\n text: \"Tem certeza de que deseja excluir esta mensagem? Esta ação não pode ser desfeita\",\n ok_result: \"Excluído com sucesso\",\n },\n },\n revision: {\n title: \"Enviar para revisão\",\n text: \"Tem certeza de que deseja enviar este rascunho para revisão? Uma vez enviado, você não poderá modificar os dados\",\n ok_result: \"Salvo como contrato | Salvo como rascunho\",\n error_result:\n \"Erro ao salvar como contrato | Erro ao salvar como rascunho\",\n },\n anular: {\n title: \"Anular contrato\",\n text: \"Tem certeza de que deseja anular este contrato?\",\n ok_result: \"Contrato anulado com sucesso\",\n error_result: \"Erro ao anular o contrato\",\n motivo: \"Motivo anulação\",\n }\n },\n login: {\n error: \"Os dados de acesso estão incorretos\",\n usuario: \"Usuário\",\n pass: \"Senha\",\n login: \"Acessar\",\n },\n noticias: {\n novedades: \"Novidades\",\n mas_menos: \"Ler mais | Ler menos\",\n },\n menu: {\n inicio: \"Início\",\n contratos: \"Contratos\",\n borradores: \"Rascunhos\",\n documentos: \"Documentos\",\n facturas: \"Faturas\",\n verificaciones: \"Verificações\",\n llamadas: \"Ligações\",\n audios_gana: \"Áudios Gana\",\n leads: \"Leads\",\n comparativas: \"Comparativos\",\n chat: \"Chat\",\n tarjetas: {\n inicio: \"@:menu.inicio\",\n contratos:\n \"Você tem {n} contratos parados | Você tem 1 contrato parado | Você não tem contratos parados\",\n borradores:\n \"Você tem {n} rascunhos para enviar | Você tem 1 rascunho para enviar | Você não tem rascunhos para enviar\",\n facturas:\n \"Você tem {n} faturas pendentes | Você tem 1 fatura pendente | Você não tem faturas pendentes\",\n verificaciones:\n \"Você tem {n} verificações para subir | Você tem 1 verificação para subir | Você não tem verificações para subir\",\n documentos: \"Documentos disponíveis para descarregar\",\n leads: \"{0} registrados\",\n comparativas: \"Faça comparativos de luz ou gás a partir do @:common.cups\",\n chat: \"Você tem {0} mensagens não lidas\",\n },\n },\n borradores: {\n nuevo: \"Novo rascunho\",\n fecha: \"Data\",\n cups: \"@:common.cups\",\n comer: \"Comercializadora\",\n tipo_contrato: \"Tipo de contrato\",\n llamadas: \"Ligações\",\n tarifa: \"Tarifa\",\n potencia: \"Potência {p}\",\n consumo: \"Consumo\",\n oferta: \"Oferta\",\n dni_titular: \"DNI/NIF titular\",\n nombre_titular: \"Nome do titular\",\n dni_firmante: \"DNI/NIF do assinante\",\n nombre_firmante: \"Nome do assinante\",\n cp_cups: \"@:borradores.cp @:common.cups\",\n pob_cups: \"Cidade @:common.cups\",\n dir_cups: \"Endereço @:common.cups\",\n prov_cups: \"Província @:common.cups\",\n telf: \"Telefone\",\n email: \"Email\",\n iban: \"Conta bancária\",\n otros: \"Outros dados\",\n cups2: \"@:common.cups 2\",\n refcomer: \"REF.COMER\",\n refcomer2: \"REF.COMER2\",\n cnae: \"CNAE\",\n cambiotit: \"Mud.Tit\",\n cambiopot: \"Mud.Pot\",\n fecha_act: \"Data de ativação\",\n dir_corres: \"Endereço de correspondência\",\n cp: \"Cód.Postal\",\n cp_corres: \"Cód.Postal de correspondência\",\n per_contacto: \"Pessoa de contato\",\n telf2: \"@:borradores.telf 2\",\n prod_adicionales: \"Produtos adicionais\",\n documentacion: \"Documentação\",\n adjunta_doc: \"Anexe aqui a documentação do contrato\",\n validacion_ok: \"Campos validados com sucesso\",\n cups_o_titular:\n \"É obrigatório um @:common.cups ou um titular para salvar o rascunho\",\n intervalo: \"Intervalo\",\n factura_electronica: \"Fatura eletrônica\",\n pago_domiciliado: \"Débito direto\",\n },\n documentacion: {\n not_found: \"Documento não encontrado\",\n error_subir: \"Não foi possível carregar o documento\",\n },\n verificacion: {\n adjuntar: \"Anexar verificação\",\n not_found: \"Documento não encontrado\",\n error_subir: \"Não foi possível enviar o documento\",\n },\n contratos: {\n estado: \"Estado do contrato\",\n motivo_dev: \"MOTIVO DE DEVOLUÇÃO\",\n motivo_anu: \"MOTIVO DE ANULAÇÃO\",\n motivo_det: \"MOTIVO DE DETENÇÃO\",\n datos: \"Dados do contrato\",\n factura: \"Fatura de pagamento\",\n fecha: \"Data\",\n bimp: \"B.Imp.\",\n ver_doc: \"Ver documento\",\n ver_fac: \"Ver fatura\",\n anular: \"Anular contrato\",\n motivo_anulacion: \"Motivo anulação\",\n comentario: \"Comentário\",\n agente: \"Agente\",\n tipo: \"Tipo\",\n nombre: \"Nome\",\n documentos: \"Documentos anexados\",\n historico: \"Histórico do contrato\",\n },\n descargas: {\n vacio: \"Não há arquivos disponíveis para download\",\n comers: \"TODAS AS COMERCIALIZADORAS\",\n },\n facturas: {\n estado: \"Estado da fatura\",\n pago_fac: \"Pagamento da fatura\",\n cuenta_pago: \"Conta de pagamento\",\n ver_doc: \"Ver documento\",\n desglose: \"Desdobramento da fatura\",\n datos: \"Dados da fatura\",\n razon_social: \"Razão social\",\n nif: \"NIF/CIF\",\n fecha_fac: \"Data da Fatura\",\n n_doc: \"Número do documento\",\n bimp: \"Base Imponível\",\n iva: \"IVA {pct}%\",\n irpf: \"IRPF {pct}%\",\n total: \"Total da Fatura\",\n dir: \"Endereço\",\n pob: \"Localidade\",\n prov: \"Província\",\n cp: \"Cód.Postal\",\n contenido: \"Conteúdo da fatura\",\n lineas: \"1 linha | {n} linhas\",\n hist: \"Histórico da fatura\",\n ver_contrato: \"Abrir o contrato\",\n adjuntar: \"Anexar documento\",\n fechafactura: \"Data da fatura\",\n numerofactura: \"Nº da fatura\",\n bifactura: \"Base Imp.\",\n totalfactura: \"Total da fatura\",\n estadofactura: \"Estado da fatura\",\n },\n chat: {\n archivos_adjuntos: \"1 arquivo anexado | {n} arquivos anexados\",\n escribe_aqui: \"Escreva aqui sua mensagem...\",\n adjuntar_archivos: \"Anexar arquivos\",\n },\n};\n","import Vue from 'vue'\nimport VueI18n from 'vue-i18n'\nimport es from '@/locales/es'\nimport pt from '@/locales/pt'\n\nconst i18n = () => new VueI18n({\n\tlocale: 'es',\n\tmessages: {\n\t\tes, pt\n\t}\n})\n\nVue.use(VueI18n)\n\nexport default i18n","import 'core-js/stable'\nimport 'regenerator-runtime/runtime'\n\n\nimport Vue from \"vue\";\nimport App from \"./App.vue\";\nimport router from \"./router\";\nimport store from \"./store\";\nimport vuetify from \"./plugins/vuetify\";\n\nVue.config.productionTip = false;\n\nimport axios from \"axios\";\n\nif ( store.getters.getToken ) {\n\n window.axios = axios.create({\n headers: { Authorization: `bearer ${store.getters.getToken}`, tenant : store.getters?.getTenant?.db },\n baseURL : `${process.env.VUE_APP_API_URL}/${ store.getters?.getTenant?.slug }`\n });\n\n} else {\n\n window.axios = axios.create({\n headers: { tenant : store.getters?.getTenant?.db },\n baseURL : `${process.env.VUE_APP_API_URL}/${ store.getters?.getTenant?.slug }`\n });\n\n}\n\nimport meta from 'vue-meta'\nVue.use(meta)\n\nimport portal from 'portal-vue'\nVue.use(portal)\n\nimport VueHotkey from 'v-hotkey'\nVue.use(VueHotkey)\n\nVue.filter('eur', function (value) {\n return parseFloat(value).toFixed(2) + ' €';\n});\n\nimport {parseDate} from '@/utils/index.js'\nimport './registerServiceWorker'\nVue.filter('date', function (value) {\n return parseDate(value);\n});\n\nimport i18n from '@/plugins/i18n.js'\n\nnew Vue({\n router,\n store,\n vuetify,\n i18n: i18n(),\n render: (h) => h(App),\n methods: {\n modules(mod) {\n return store.getters.getTenant && store.getters.getTenant.modules && store.getters.getTenant.modules.includes( mod )\n },\n acceso(permiso) {\n if (!store.getters.getTokenPayload || !store.getters.getTokenPayload.permisos) {\n store.commit('logout')\n return false\n }\n return !!store.getters.getTokenPayload.permisos[permiso]\n }\n },\n}).$mount(\"#app\");\n","export function req(value) {\n\t// value = String(value)\n\tif ( Array.isArray(value) && value.length == 0 ) return 'Este campo es obligatorio'\n\tif ( typeof value == 'number' ) value = String(value)\n\treturn !!value || \"Este campo es obligatorio\";\n}\n\nexport function cups(CUPS) {\n\tif (CUPS == \"\" || CUPS == null) return true;\n\tCUPS = CUPS.toUpperCase();\n\tMath.fmod = function(a, b) {\n\t\treturn Number((a - Math.floor(a / b) * b).toPrecision(8));\n\t};\n\tvar status = false;\n\tvar RegExPattern = /^(ES|PT)[0-9]{16}[a-zA-Z]{2}[0-9]{0,1}[a-zA-Z]{0,1}$/;\n\tif (CUPS.match(RegExPattern) && CUPS != \"\") {\n\t\tvar CUPS_16 = CUPS.substr(2, 16);\n\t\tvar control = CUPS.substr(18, 2);\n\t\tvar l = \"TRWAGMYFPDXBNJZSQVHLCKE\".split(\"\");\n\t\tvar fmodv = Math.fmod(CUPS_16, 529);\n\t\tvar imod = parseInt(fmodv);\n\t\tvar quotient = Math.floor(imod / 23);\n\t\tvar remainder = imod % 23;\n\n\t\tvar dc1 = l[quotient];\n\t\tvar dc2 = l[remainder];\n\t\tstatus = control == dc1 + dc2;\n\t} else {\n\t\tstatus = \"El CUPS no es válido\";\n\t}\n\tif (status == false)\n\t\tstatus = \"El CUPS no es válido\";\n\treturn status;\n}\n\nexport function iban(input) {\n\tif (input == null || input.length == 0) return true;\n\tconst CODE_LENGTHS = {\n\t\tAD: 24,\n\t\tAE: 23,\n\t\tAT: 20,\n\t\tAZ: 28,\n\t\tBA: 20,\n\t\tBE: 16,\n\t\tBG: 22,\n\t\tBH: 22,\n\t\tBR: 29,\n\t\tCH: 21,\n\t\tCR: 21,\n\t\tCY: 28,\n\t\tCZ: 24,\n\t\tDE: 22,\n\t\tDK: 18,\n\t\tDO: 28,\n\t\tEE: 20,\n\t\tES: 24,\n\t\tFI: 18,\n\t\tFO: 18,\n\t\tFR: 27,\n\t\tGB: 22,\n\t\tGI: 23,\n\t\tGL: 18,\n\t\tGR: 27,\n\t\tGT: 28,\n\t\tHR: 21,\n\t\tHU: 28,\n\t\tIE: 22,\n\t\tIL: 23,\n\t\tIS: 26,\n\t\tIT: 27,\n\t\tJO: 30,\n\t\tKW: 30,\n\t\tKZ: 20,\n\t\tLB: 28,\n\t\tLI: 21,\n\t\tLT: 20,\n\t\tLU: 20,\n\t\tLV: 21,\n\t\tMC: 27,\n\t\tMD: 24,\n\t\tME: 22,\n\t\tMK: 19,\n\t\tMR: 27,\n\t\tMT: 31,\n\t\tMU: 30,\n\t\tNL: 18,\n\t\tNO: 15,\n\t\tPK: 24,\n\t\tPL: 28,\n\t\tPS: 29,\n\t\tPT: 25,\n\t\tQA: 29,\n\t\tRO: 24,\n\t\tRS: 22,\n\t\tSA: 24,\n\t\tSE: 24,\n\t\tSI: 19,\n\t\tSK: 24,\n\t\tSM: 27,\n\t\tTN: 24,\n\t\tTR: 26,\n\t\tAL: 28,\n\t\tBY: 28,\n\t\tCR: 22,\n\t\tEG: 29,\n\t\tGE: 22,\n\t\tIQ: 23,\n\t\tLC: 32,\n\t\tSC: 31,\n\t\tST: 25,\n\t\tSV: 28,\n\t\tTL: 23,\n\t\tUA: 29,\n\t\tVA: 22,\n\t\tVG: 24,\n\t\tXK: 20,\n\t};\n\tvar iban = String(input)\n\t\t\t.toUpperCase()\n\t\t\t.replace(/[^A-Z0-9]/g, \"\"), // keep only alphanumeric characters\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\n\t\tdigits;\n\t// check syntax and length\n\tif (!code || iban.length !== CODE_LENGTHS[code[1]]) {\n\t\treturn \"Este IBAN no es válido\";\n\t}\n\t// rearrange country code and check digits, and convert chars to ints\n\tdigits = (code[3] + code[1] + code[2]).replace(/[A-Z]/g, function(letter) {\n\t\treturn letter.charCodeAt(0) - 55;\n\t});\n\t// final check\n\tfunction mod97(string) {\n\t\tvar checksum = string.slice(0, 2),\n\t\t\tfragment;\n\t\tfor (var offset = 2; offset < string.length; offset += 7) {\n\t\t\tfragment = String(checksum) + string.substring(offset, offset + 7);\n\t\t\tchecksum = parseInt(fragment, 10) % 97;\n\t\t}\n\t\treturn checksum;\n\t}\n\treturn mod97(digits) === 1 || \"Este IBAN no es válido\";\n}\n\nexport function phone(p) {\n\tif (p == \"\" || p == null) return true;\n\tp = String(p).replace(/[^0-9.]/g, \"\");\n\treturn p.length == 9 ? true : \"El teléfono no es válido\";\n}\n\nexport function email(v) {\n\tif (!v) return true;\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,}))$/;\n\treturn pattern.test(v) || \"El email no es válido\";\n}\n\nexport function spainIdType(str) {\n\tvar DNI_REGEX = /^(\\d{8})([A-Z])$/;\n\tvar CIF_REGEX = /^([ABCDEFGHJKLMNPQRSUVW])(\\d{7})([0-9A-J])$/;\n\tvar NIE_REGEX = /^[XYZ]\\d{7,8}[A-Z]$/;\n\tif (str.match(DNI_REGEX)) {\n\t\treturn \"dni\";\n\t}\n\tif (str.match(CIF_REGEX)) {\n\t\treturn \"cif\";\n\t}\n\tif (str.match(NIE_REGEX)) {\n\t\treturn \"nie\";\n\t}\n}\n\nexport function nif(str) {\n\tif (!str) return true;\n\tvar DNI_REGEX = /^(\\d{8})([A-Z])$/;\n\tvar CIF_REGEX = /^([ABCDEFGHJKLMNPQRSUVW])(\\d{7})([0-9A-J])$/;\n\tvar NIE_REGEX = /^[XYZ]\\d{7,8}[A-Z]$/;\n\n\treturn String(str).match(/([(A-Z)|(0-9)]{9})/) || 'El identificador no es válido';\n\n\tvar ValidateSpanishID = function(str) {\n\t\t// Ensure upcase and remove whitespace\n\t\tstr = str.toUpperCase().replace(/\\s/, \"\");\n\n\t\tvar valid = false;\n\t\tvar type = spainIdType(str);\n\n\t\tswitch (type) {\n\t\t\tcase \"dni\":\n\t\t\t\tvalid = validDNI(str);\n\t\t\t\tbreak;\n\t\t\tcase \"nie\":\n\t\t\t\tvalid = validNIE(str);\n\t\t\t\tbreak;\n\t\t\tcase \"cif\":\n\t\t\t\tvalid = validCIF(str);\n\t\t\t\tbreak;\n\t\t}\n\t\treturn valid || \"El identificador no es válido\";\n\t};\n\n\tvar validDNI = function(dni) {\n\t\tvar dni_letters = \"TRWAGMYFPDXBNJZSQVHLCKE\";\n\t\tvar letter = dni_letters.charAt(parseInt(dni, 10) % 23);\n\n\t\treturn letter == dni.charAt(8);\n\t};\n\n\tvar validNIE = function(nie) {\n\t\t// Change the initial letter for the corresponding number and validate as DNI\n\t\tvar nie_prefix = nie.charAt(0);\n\n\t\tswitch (nie_prefix) {\n\t\t\tcase \"X\":\n\t\t\t\tnie_prefix = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"Y\":\n\t\t\t\tnie_prefix = 1;\n\t\t\t\tbreak;\n\t\t\tcase \"Z\":\n\t\t\t\tnie_prefix = 2;\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn validDNI(nie_prefix + nie.substr(1));\n\t};\n\n\tconst validCIF = (cif) => {\n\t\tif (!cif || cif.length !== 9) {\n\t\t\treturn false;\n\t\t}\n\n\t\tvar letters = [\"J\", \"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\", \"H\", \"I\"];\n\t\tvar digits = cif.substr(1, cif.length - 2);\n\t\tvar letter = cif.substr(0, 1);\n\t\tvar control = cif.substr(cif.length - 1);\n\t\tvar sum = 0;\n\t\tvar i;\n\t\tvar digit;\n\n\t\tif (!letter.match(/[A-Z]/)) {\n\t\t\treturn false;\n\t\t}\n\n\t\tfor (i = 0; i < digits.length; ++i) {\n\t\t\tdigit = parseInt(digits[i]);\n\n\t\t\tif (isNaN(digit)) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tif (i % 2 === 0) {\n\t\t\t\tdigit *= 2;\n\t\t\t\tif (digit > 9) {\n\t\t\t\t\tdigit = parseInt(digit / 10) + (digit % 10);\n\t\t\t\t}\n\n\t\t\t\tsum += digit;\n\t\t\t} else {\n\t\t\t\tsum += digit;\n\t\t\t}\n\t\t}\n\n\t\tsum %= 10;\n\t\tif (sum !== 0) {\n\t\t\tdigit = 10 - sum;\n\t\t} else {\n\t\t\tdigit = sum;\n\t\t}\n\n\t\tif (letter.match(/[ABEH]/)) {\n\t\t\treturn String(digit) === control;\n\t\t}\n\t\tif (letter.match(/[NPQRSW]/)) {\n\t\t\treturn letters[digit] === control;\n\t\t}\n\n\t\treturn String(digit) === control || letters[digit] === control;\n\t};\n\n\treturn ValidateSpanishID(str);\n}","const routes = {\n path: \"/contratos\",\n name: \"Contratos\",\n component: () => import(\"./views/Contratos.vue\"),\n meta: { requiresAuth: true },\n props: (route) => Object.assign({}, route.query, route.params),\n};\n\nexport default routes;\n","export default {};","import router from './router'\nimport store from './store'\n\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 }","\n\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!./ScannerQr.vue?vue&type=style&index=0&id=19e48578&prod&scoped=true&lang=scss\"","export function encode64(data) {\n return btoa(data);\n}\nexport function decode64(data) {\n return new TextDecoder().decode(urlB64ToUint8Array(data));\n}\n\nfunction urlB64ToUint8Array(base64String) {\n const padding = \"=\".repeat((4 - (base64String.length % 4)) % 4);\n const base64 = (base64String + padding).replace(/-/g, \"+\").replace(/_/g, \"/\");\n const rawData = window.atob(base64);\n const outputArray = new Uint8Array(rawData.length);\n\n for (let i = 0; i < rawData.length; ++i)\n outputArray[i] = rawData.charCodeAt(i);\n\n return outputArray;\n}\n\nexport function humanFileSize(bytes, dp = 1, units = \"file\") {\n const thresh = 1000;\n\n let unitArray;\n switch (units) {\n case \"file\":\n unitArray = [\"b\", \"kB\", \"MB\", \"GB\", \"TB\", \"PB\", \"EB\", \"ZB\", \"YB\"];\n break;\n case \"length\":\n unitArray = [\"mm\", \"m\", \"km\"];\n break;\n case \"area\":\n unitArray = [\"m2\", \"km2\"];\n break;\n }\n\n\tif (Math.abs(bytes) < thresh) {\n return bytes + unitArray[0];\n }\n\n let u = -1;\n const r = 10 ** dp;\n\n do {\n bytes /= thresh;\n ++u;\n } while (\n Math.round(Math.abs(bytes) * r) / r >= thresh &&\n u < unitArray.length - 1\n );\n\n return bytes.toFixed(dp) + \" \" + unitArray[u];\n}\n\nexport function parseDate(date, timestamp = false, mes = true, hora = false) {\n if (date == null || date == undefined || date == \"\") return \"\";\n let fecha;\n\n if (!isNaN(Number(date))) fecha = new Date(Number(date));\n else\n fecha = new Date(\n String(date)\n .replaceAll(/\\\\/g, \"\")\n .split(\" \")[0]\n );\n\n if (timestamp) {\n fecha.setHours(0, 0, 0, 0);\n return fecha.getTime();\n }\n\n const MESES = [\n \"Enero\",\n \"Febrero\",\n \"Marzo\",\n \"Abril\",\n \"Mayo\",\n \"Junio\",\n \"Julio\",\n \"Agosto\",\n \"Septiembre\",\n \"Octubre\",\n \"Noviembre\",\n \"Diciembre\",\n ];\n let day = `0${fecha.getDate()}`.slice(-2);\n let month = mes\n ? MESES[fecha.getMonth()]\n : `0${fecha.getMonth() + 1}`.slice(-2);\n let year = fecha.getFullYear();\n\n if (hora)\n var HORA = [\n (\"00\" + fecha.getHours()).slice(-2),\n (\"00\" + fecha.getMinutes()).slice(-2),\n ].join(\":\");\n\n return [[day, month, year].join(\" \"), HORA].filter((v) => !!v).join(\", \");\n}\n\n// const status = {\n// ...store.getters.getEstados\n// };\n\n// export function getSituacionIcon(situacion) {\n// return status[situacion] || { color: \"grey\", icon: \"mdi-circle\" };\n// }\n\nexport function downloadFile(file, open = false) {\n let a = document.createElement(\"a\");\n a.href = URL.createObjectURL(file);\n if (\n open &&\n ![\n \"iPad\",\n \"iPhone\",\n \"iPod\",\n \"iPhone Simulator\",\n \"iPod Simulator\",\n \"iPad Simulator\",\n \"Macintosh\",\n \"MacIntel\",\n \"MacPPC\",\n \"Mac68K\",\n \"Pike v7.6 release 92\",\n \"Pike v7.8 release 517\",\n ].includes(navigator.platform)\n )\n a.target = \"_blank\";\n else a.download = file.name;\n a.click();\n}\n\nexport const perColumnFilter = (value, filter, dataType = \"text\") => {\n // console.log('FUNCION FILTRO', {filter, value})\n\n if (\n filter === \"\" ||\n filter === null ||\n filter === undefined ||\n (Array.isArray(filter) && filter.length == 0)\n )\n return true;\n if (filter === \"-\") return value === null;\n if (value === \"\" || value === null || value === undefined) return false;\n\n const filterText = (filter, value) => {\n value = String(value)\n .toLowerCase()\n .normalize(\"NFD\")\n .replace(/[\\u0300-\\u036f]/g, \"\");\n filter = String(filter)\n .toLowerCase()\n .normalize(\"NFD\")\n .replace(/[\\u0300-\\u036f]/g, \"\");\n const isOperation = /=|<|>|!/.test(filter[0]);\n if (isOperation) {\n switch (filter[0]) {\n case \"!\":\n return !value.includes(filter.substring(1));\n case \"=\":\n return value == filter.substring(1);\n case \">\":\n return Number(value) >= Number(filter.substring(1));\n case \"<\":\n return Number(value) <= Number(filter.substring(1));\n default:\n return false;\n }\n } else {\n return value.includes(filter);\n }\n };\n const filterDate = (filter, value) => {\n filter = filter.map((f) => {\n let temp = new Date(f);\n temp.setHours(0, 0, 0, 0);\n return temp.getTime();\n });\n value = parseDate(value, true);\n let max = Math.max(...filter);\n let min = Math.min(...filter);\n return max >= value && value >= min;\n };\n const filterSelect = (filter, value) => {\n if (filter.length > 1) return filter.includes(value);\n else return filterText(\"=\" + filter[0], value);\n };\n const filterBool = (filter, value) => filter == value\n\n switch (dataType) {\n case \"select\":\n return filterSelect(filter, value);\n case \"date\":\n return filterDate(filter, value);\n case \"bool\":\n return filterBool(filter, value);\n case \"text\":\n default:\n return filterText(filter, value);\n }\n};\n\nexport function timeAgo(timestamp, hours = true) {\n // if (timestamp == null) return null;\n\tlet now = Date.now();\n if (!hours) {\n let dateAux = new Date(timestamp);\n dateAux.setHours(0, 0, 0, 0);\n timestamp = dateAux.getTime();\n\t\tdateAux = new Date();\n dateAux.setHours(0, 0, 0, 0);\n now = dateAux.getTime();\n }\n const future = timestamp > now;\n const DATE_UNITS = {\n // week: 86400 * 7,\n day: 86400,\n hour: 3600,\n minute: 60,\n second: 1,\n };\n\n const getUnitAndValueDate = (secondsElapsed) => {\n secondsElapsed = Math.abs(secondsElapsed);\n for (const [unit, secondsInUnit] of Object.entries(DATE_UNITS)) {\n if (secondsElapsed >= secondsInUnit || unit === \"second\") {\n const value = Math.floor(secondsElapsed / secondsInUnit) * -1;\n return { value, unit };\n }\n }\n };\n\n const getTimeAgo = () => {\n const rtf = new Intl.RelativeTimeFormat(\"es\", {\n localeMatcher: 'best fit',\n numeric: 'auto',\n });\n\n const { value, unit } = getUnitAndValueDate(secondsElapsed);\n return rtf.format(future ? Math.abs(value) : Math.abs(value) * -1, unit);\n };\n\n const secondsElapsed = (now - timestamp) / 1000;\n // const secondsElapsed = Date.now() > timestamp ? (Date.now() - timestamp) / 1000 : (timestamp - Date.now()) / 1000\n\n if (secondsElapsed >= DATE_UNITS.week) {\n return parseDate(timestamp, false, true, true);\n } else {\n const [first, ...rest] = getTimeAgo(timestamp);\n return [first.toUpperCase(), rest.join(\"\")].join(\"\");\n }\n}\n\nexport function jsonToCsv(items, csvHeaders, filename) {\n const JStoExcelDate = (date) => {\n const [day, month, year] = date.split(' ')\n return [year, month, day].join('-');\n }\n\n const csvString = [\n ...items.map(item => {\n let temp = [];\n csvHeaders.forEach(({ value : key, dataType }) => {\n let valor = (item[key] != null ? String(item[key]) : item[key] || '\\u0020').replace('\\r\\n', '');\n if (dataType == 'date') valor = JStoExcelDate(parseDate(valor, false, false));\n else if (dataType == 'number') valor = valor.replace('.', ',');\n else if (dataType == 'html') valor = valor.replaceAll(/<[^>]*>/g, '').replaceAll(/;/g, '');\n temp.push(valor)\n })\n return temp;\n })\n ];\n\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;' });\n\n downloadFile(csvFile);\n}\n\nexport async function copyText(text) {\n return await navigator.clipboard.writeText(text)\n}\n\nexport function getTicketStatus(state) {\n\t// state = state.toLowerCase() || \"\";\n\tswitch (state) {\n\t\tcase \"abierto\":\n\t\t\treturn { color: \"primary\", icon: \"mdi-lock-open-variant\" };\n\t\tcase \"cerrado\":\n\t\t\treturn { color: \"error\", icon: \"mdi-lock\" };\n\t\tdefault:\n\t\t\treturn { color: \"error\", icon: \"\" };\n\t}\n}"],"sourceRoot":""}