{"version":3,"file":"js/chunk-common.6cd9951f.js","mappings":"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","sources":["webpack://technosoft.inventarios.v2.ui.web/./node_modules/moment/locale/ sync ^\\.\\/.*$","webpack://technosoft.inventarios.v2.ui.web/./src/app/configuracion/services/configuracionService.js","webpack://technosoft.inventarios.v2.ui.web/./src/app/generales/services/generalesService.js","webpack://technosoft.inventarios.v2.ui.web/./src/common/connector-cloud.js","webpack://technosoft.inventarios.v2.ui.web/./src/app/login/services/cuentaService.js","webpack://technosoft.inventarios.v2.ui.web/./src/common/connector.js","webpack://technosoft.inventarios.v2.ui.web/./src/common/filters.js","webpack://technosoft.inventarios.v2.ui.web/./src/common/loadingOverlay.js","webpack://technosoft.inventarios.v2.ui.web/./src/common/notify.js","webpack://technosoft.inventarios.v2.ui.web/./src/config.js","webpack://technosoft.inventarios.v2.ui.web/./src/app/lostconnection/views/LostConnection.vue","webpack://technosoft.inventarios.v2.ui.web/./src/app/lostconnection/views/LostConnection.vue?1560"],"sourcesContent":["var map = {\n\t\"./af\": 3906,\n\t\"./af.js\": 3906,\n\t\"./ar\": 902,\n\t\"./ar-dz\": 3853,\n\t\"./ar-dz.js\": 3853,\n\t\"./ar-kw\": 299,\n\t\"./ar-kw.js\": 299,\n\t\"./ar-ly\": 6825,\n\t\"./ar-ly.js\": 6825,\n\t\"./ar-ma\": 6379,\n\t\"./ar-ma.js\": 6379,\n\t\"./ar-sa\": 7700,\n\t\"./ar-sa.js\": 7700,\n\t\"./ar-tn\": 2059,\n\t\"./ar-tn.js\": 2059,\n\t\"./ar.js\": 902,\n\t\"./az\": 6043,\n\t\"./az.js\": 6043,\n\t\"./be\": 7936,\n\t\"./be.js\": 7936,\n\t\"./bg\": 4078,\n\t\"./bg.js\": 4078,\n\t\"./bm\": 4014,\n\t\"./bm.js\": 4014,\n\t\"./bn\": 9554,\n\t\"./bn-bd\": 7114,\n\t\"./bn-bd.js\": 7114,\n\t\"./bn.js\": 9554,\n\t\"./bo\": 6529,\n\t\"./bo.js\": 6529,\n\t\"./br\": 5437,\n\t\"./br.js\": 5437,\n\t\"./bs\": 9647,\n\t\"./bs.js\": 9647,\n\t\"./ca\": 9951,\n\t\"./ca.js\": 9951,\n\t\"./cs\": 6113,\n\t\"./cs.js\": 6113,\n\t\"./cv\": 7965,\n\t\"./cv.js\": 7965,\n\t\"./cy\": 5858,\n\t\"./cy.js\": 5858,\n\t\"./da\": 3515,\n\t\"./da.js\": 3515,\n\t\"./de\": 2831,\n\t\"./de-at\": 6263,\n\t\"./de-at.js\": 6263,\n\t\"./de-ch\": 1127,\n\t\"./de-ch.js\": 1127,\n\t\"./de.js\": 2831,\n\t\"./dv\": 4510,\n\t\"./dv.js\": 4510,\n\t\"./el\": 8616,\n\t\"./el.js\": 8616,\n\t\"./en-au\": 4595,\n\t\"./en-au.js\": 4595,\n\t\"./en-ca\": 3545,\n\t\"./en-ca.js\": 3545,\n\t\"./en-gb\": 9609,\n\t\"./en-gb.js\": 9609,\n\t\"./en-ie\": 3727,\n\t\"./en-ie.js\": 3727,\n\t\"./en-il\": 3302,\n\t\"./en-il.js\": 3302,\n\t\"./en-in\": 6305,\n\t\"./en-in.js\": 6305,\n\t\"./en-nz\": 9128,\n\t\"./en-nz.js\": 9128,\n\t\"./en-sg\": 4569,\n\t\"./en-sg.js\": 4569,\n\t\"./eo\": 650,\n\t\"./eo.js\": 650,\n\t\"./es\": 6358,\n\t\"./es-do\": 4214,\n\t\"./es-do.js\": 4214,\n\t\"./es-mx\": 8639,\n\t\"./es-mx.js\": 8639,\n\t\"./es-us\": 232,\n\t\"./es-us.js\": 232,\n\t\"./es.js\": 6358,\n\t\"./et\": 7279,\n\t\"./et.js\": 7279,\n\t\"./eu\": 5515,\n\t\"./eu.js\": 5515,\n\t\"./fa\": 7981,\n\t\"./fa.js\": 7981,\n\t\"./fi\": 7090,\n\t\"./fi.js\": 7090,\n\t\"./fil\": 9208,\n\t\"./fil.js\": 9208,\n\t\"./fo\": 2799,\n\t\"./fo.js\": 2799,\n\t\"./fr\": 3463,\n\t\"./fr-ca\": 2213,\n\t\"./fr-ca.js\": 2213,\n\t\"./fr-ch\": 2848,\n\t\"./fr-ch.js\": 2848,\n\t\"./fr.js\": 3463,\n\t\"./fy\": 1468,\n\t\"./fy.js\": 1468,\n\t\"./ga\": 8163,\n\t\"./ga.js\": 8163,\n\t\"./gd\": 7078,\n\t\"./gd.js\": 7078,\n\t\"./gl\": 6312,\n\t\"./gl.js\": 6312,\n\t\"./gom-deva\": 682,\n\t\"./gom-deva.js\": 682,\n\t\"./gom-latn\": 9178,\n\t\"./gom-latn.js\": 9178,\n\t\"./gu\": 5009,\n\t\"./gu.js\": 5009,\n\t\"./he\": 2795,\n\t\"./he.js\": 2795,\n\t\"./hi\": 7009,\n\t\"./hi.js\": 7009,\n\t\"./hr\": 6506,\n\t\"./hr.js\": 6506,\n\t\"./hu\": 9565,\n\t\"./hu.js\": 9565,\n\t\"./hy-am\": 3864,\n\t\"./hy-am.js\": 3864,\n\t\"./id\": 5626,\n\t\"./id.js\": 5626,\n\t\"./is\": 6649,\n\t\"./is.js\": 6649,\n\t\"./it\": 151,\n\t\"./it-ch\": 5348,\n\t\"./it-ch.js\": 5348,\n\t\"./it.js\": 151,\n\t\"./ja\": 9830,\n\t\"./ja.js\": 9830,\n\t\"./jv\": 3751,\n\t\"./jv.js\": 3751,\n\t\"./ka\": 3365,\n\t\"./ka.js\": 3365,\n\t\"./kk\": 5980,\n\t\"./kk.js\": 5980,\n\t\"./km\": 9571,\n\t\"./km.js\": 9571,\n\t\"./kn\": 5880,\n\t\"./kn.js\": 5880,\n\t\"./ko\": 6809,\n\t\"./ko.js\": 6809,\n\t\"./ku\": 6773,\n\t\"./ku.js\": 6773,\n\t\"./ky\": 5505,\n\t\"./ky.js\": 5505,\n\t\"./lb\": 553,\n\t\"./lb.js\": 553,\n\t\"./lo\": 1237,\n\t\"./lo.js\": 1237,\n\t\"./lt\": 1563,\n\t\"./lt.js\": 1563,\n\t\"./lv\": 1057,\n\t\"./lv.js\": 1057,\n\t\"./me\": 6495,\n\t\"./me.js\": 6495,\n\t\"./mi\": 3096,\n\t\"./mi.js\": 3096,\n\t\"./mk\": 3874,\n\t\"./mk.js\": 3874,\n\t\"./ml\": 6055,\n\t\"./ml.js\": 6055,\n\t\"./mn\": 7747,\n\t\"./mn.js\": 7747,\n\t\"./mr\": 7113,\n\t\"./mr.js\": 7113,\n\t\"./ms\": 8687,\n\t\"./ms-my\": 7948,\n\t\"./ms-my.js\": 7948,\n\t\"./ms.js\": 8687,\n\t\"./mt\": 4532,\n\t\"./mt.js\": 4532,\n\t\"./my\": 4655,\n\t\"./my.js\": 4655,\n\t\"./nb\": 6961,\n\t\"./nb.js\": 6961,\n\t\"./ne\": 2512,\n\t\"./ne.js\": 2512,\n\t\"./nl\": 8448,\n\t\"./nl-be\": 2936,\n\t\"./nl-be.js\": 2936,\n\t\"./nl.js\": 8448,\n\t\"./nn\": 9031,\n\t\"./nn.js\": 9031,\n\t\"./oc-lnc\": 5174,\n\t\"./oc-lnc.js\": 5174,\n\t\"./pa-in\": 118,\n\t\"./pa-in.js\": 118,\n\t\"./pl\": 3448,\n\t\"./pl.js\": 3448,\n\t\"./pt\": 3518,\n\t\"./pt-br\": 2447,\n\t\"./pt-br.js\": 2447,\n\t\"./pt.js\": 3518,\n\t\"./ro\": 817,\n\t\"./ro.js\": 817,\n\t\"./ru\": 262,\n\t\"./ru.js\": 262,\n\t\"./sd\": 8990,\n\t\"./sd.js\": 8990,\n\t\"./se\": 3842,\n\t\"./se.js\": 3842,\n\t\"./si\": 7711,\n\t\"./si.js\": 7711,\n\t\"./sk\": 756,\n\t\"./sk.js\": 756,\n\t\"./sl\": 3772,\n\t\"./sl.js\": 3772,\n\t\"./sq\": 6187,\n\t\"./sq.js\": 6187,\n\t\"./sr\": 732,\n\t\"./sr-cyrl\": 5713,\n\t\"./sr-cyrl.js\": 5713,\n\t\"./sr.js\": 732,\n\t\"./ss\": 9455,\n\t\"./ss.js\": 9455,\n\t\"./sv\": 9770,\n\t\"./sv.js\": 9770,\n\t\"./sw\": 959,\n\t\"./sw.js\": 959,\n\t\"./ta\": 6459,\n\t\"./ta.js\": 6459,\n\t\"./te\": 5302,\n\t\"./te.js\": 5302,\n\t\"./tet\": 7975,\n\t\"./tet.js\": 7975,\n\t\"./tg\": 1294,\n\t\"./tg.js\": 1294,\n\t\"./th\": 2385,\n\t\"./th.js\": 2385,\n\t\"./tk\": 4613,\n\t\"./tk.js\": 4613,\n\t\"./tl-ph\": 8668,\n\t\"./tl-ph.js\": 8668,\n\t\"./tlh\": 8190,\n\t\"./tlh.js\": 8190,\n\t\"./tr\": 4506,\n\t\"./tr.js\": 4506,\n\t\"./tzl\": 3440,\n\t\"./tzl.js\": 3440,\n\t\"./tzm\": 9852,\n\t\"./tzm-latn\": 2350,\n\t\"./tzm-latn.js\": 2350,\n\t\"./tzm.js\": 9852,\n\t\"./ug-cn\": 730,\n\t\"./ug-cn.js\": 730,\n\t\"./uk\": 99,\n\t\"./uk.js\": 99,\n\t\"./ur\": 2100,\n\t\"./ur.js\": 2100,\n\t\"./uz\": 6002,\n\t\"./uz-latn\": 6322,\n\t\"./uz-latn.js\": 6322,\n\t\"./uz.js\": 6002,\n\t\"./vi\": 4207,\n\t\"./vi.js\": 4207,\n\t\"./x-pseudo\": 4674,\n\t\"./x-pseudo.js\": 4674,\n\t\"./yo\": 570,\n\t\"./yo.js\": 570,\n\t\"./zh-cn\": 3644,\n\t\"./zh-cn.js\": 3644,\n\t\"./zh-hk\": 2591,\n\t\"./zh-hk.js\": 2591,\n\t\"./zh-mo\": 9503,\n\t\"./zh-mo.js\": 9503,\n\t\"./zh-tw\": 8080,\n\t\"./zh-tw.js\": 8080\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 6700;","\r\nimport connectorr from '../../../common/connector.js';\r\nlet connector = new connectorr();\r\n\r\nvar apiControllerConnector = \"Configuracion\";\r\n\r\nexport default {\r\n\r\n getOne(parametros) { // ciaId\r\n\r\n return connector.Get(apiControllerConnector, \"getOne\", parametros);\r\n\r\n },\r\n\r\n GetOneConfiguracionMantenimiento(parametros) { // ciaId\r\n\r\n return connector.Get(apiControllerConnector, \"GetOneConfiguracionMantenimiento\", parametros);\r\n\r\n },\r\n\r\n postDefault(parametros) {\r\n\r\n return connector.Get(apiControllerConnector, \"postDefault\", parametros);\r\n\r\n },\r\n\r\n postAdd(data) { // Creo que ya no se usa, ahora es el de mantenimiento\r\n\r\n return connector.Post(apiControllerConnector, \"postConfiguracion\", data);\r\n\r\n },\r\n\r\n UpdateConfiguracionMantenimiento(data) {\r\n\r\n return connector.Post(apiControllerConnector, \"UpdateConfiguracionMantenimiento\", data);\r\n\r\n },\r\n\r\n GetInputFocusNuevoMovimiento(parametros) { // ciaId\r\n\r\n return connector.Get(apiControllerConnector, \"GetInputFocusNuevoMovimiento\", parametros);\r\n\r\n },\r\n\r\n GetServidorCorreoActivo(parametros) { // ciaId\r\n\r\n return connector.Get(apiControllerConnector, \"GetServidorCorreoActivo\", parametros);\r\n\r\n },\r\n\r\n GetIntegrations(parametros) { // ciaId\r\n\r\n return connector.Get(apiControllerConnector, \"GetIntegrations\", parametros);\r\n\r\n },\r\n\r\n}","\r\nimport connectorr from '../../../common/connector.js';\r\nlet connector = new connectorr();\r\n\r\nvar apiControllerConnector = \"Generales\";\r\n\r\nexport default {\r\n\r\n\r\n getCompannia(parametros) { //ciaId\r\n\r\n return connector.Get(apiControllerConnector, \"getCompannia\", parametros);\r\n\r\n },\r\n\r\n GetListMonedas() {\r\n\r\n return connector.Get(apiControllerConnector, \"GetListMonedas\", null);\r\n\r\n },\r\n\r\n GetMonedaById(parametros) { // monedaId\r\n\r\n return connector.Get(apiControllerConnector, \"GetMonedaById\", parametros);\r\n\r\n },\r\n\r\n getListPaises() {\r\n\r\n return connector.Get(apiControllerConnector, \"getPaises\", null);\r\n\r\n },\r\n\r\n getListProvincias(parametros) { // pai_pk\r\n\r\n return connector.Get(apiControllerConnector, \"getProvincias\", parametros);\r\n\r\n },\r\n\r\n getListCantones(parametros) { // pai_pk, provincia_id\r\n\r\n return connector.Get(apiControllerConnector, \"getCantones\", parametros);\r\n\r\n },\r\n\r\n getListDistritos(parametros) { // pai_pk, provincia_id, canton_id\r\n\r\n return connector.Get(apiControllerConnector, \"getDistritos\", parametros);\r\n\r\n },\r\n\r\n getListBarrios(parametros) { // pai_pk, provincia_id, canton_id, distrito_id\r\n\r\n return connector.Get(apiControllerConnector, \"getBarrios\", parametros);\r\n\r\n },\r\n\r\n postCompanniEdit(data) {\r\n\r\n return connector.Post(apiControllerConnector, \"postCompanniEdit\", data);\r\n\r\n },\r\n\r\n postCompanniAdd(data) {\r\n\r\n return connector.Post(apiControllerConnector, \"postCompanniAdd\", data);\r\n\r\n },\r\n\r\n getTiposPersona(parametros) { // paisId\r\n\r\n return connector.Get(apiControllerConnector, \"getTiposPersona\", parametros);\r\n\r\n },\r\n\r\n getUsuarios(parametros) { // token\r\n\r\n return connector.Get(apiControllerConnector, \"getUsuarios\", parametros);\r\n\r\n },\r\n\r\n getUsuariosCia(parametros) { // cia_id, token\r\n\r\n return connector.Get(apiControllerConnector, \"getUsuariosCia\", parametros);\r\n\r\n },\r\n\r\n\r\n postInviteUser(parametros) { //Datos, token\r\n\r\n return connector.PostForm(apiControllerConnector, \"postInviteUser\", parametros);\r\n\r\n },\r\n\r\n postEditUser(parametros) { //Datos, token\r\n\r\n return connector.PostForm(apiControllerConnector, \"postEditUser\", parametros);\r\n\r\n },\r\n\r\n getDeleteUsuario(parametros) { //cia_id, usuario_id, token\r\n\r\n return connector.Get(apiControllerConnector, \"getDeleteUsuario\", parametros);\r\n\r\n },\r\n\r\n getAssignUsuario(parametros) { //cia_id, usuario_id, token\r\n\r\n return connector.Get(apiControllerConnector, \"getAssignUsuario\", parametros);\r\n\r\n },\r\n\r\n getUnassignUsuario(parametros) { //cia_id, usuario_id, token\r\n\r\n return connector.Get(apiControllerConnector, \"getUnassignUsuario\", parametros);\r\n\r\n },\r\n\r\n postSaveProfile(data) { //Datos, token\r\n\r\n return connector.PostForm(apiControllerConnector, \"postSaveProfile\", data);\r\n\r\n },\r\n\r\n GetReportePagoBancos(parametros) { // token\r\n\r\n return connector.Get(apiControllerConnector, \"GetReportePagoBancos\", parametros);\r\n\r\n },\r\n\r\n GetReportesPagoPaginated(parametros) { // cia_id, itemsPerPage, pagenumber, fechaInicio, fechaFinal, token\r\n\r\n return connector.Get(apiControllerConnector, \"GetReportesPago\", parametros);\r\n\r\n },\r\n\r\n PostReportePago(data) {\r\n\r\n return connector.Post(apiControllerConnector, \"PostReportePago\", data);\r\n\r\n },\r\n\r\n GetReportePago(parametros) { // reportePago_id, token\r\n\r\n return connector.Get(apiControllerConnector, \"GetReportePago\", parametros);\r\n\r\n },\r\n\r\n DeleteReportePago(parametros) { // reportePago_id, token\r\n\r\n return connector.Get(apiControllerConnector, \"GetReportePagoDelete\", parametros);\r\n\r\n },\r\n\r\n GetTiquetes(parametros) { // fechaInicio, fechaFinal\r\n\r\n return connector.Get(apiControllerConnector, \"GetTiquetes\", parametros);\r\n\r\n },\r\n\r\n PostTiquete(data) {\r\n\r\n return connector.Post(apiControllerConnector, \"PostTiquete\", data);\r\n\r\n },\r\n\r\n GetPlanIdFromToken() {\r\n\r\n return connector.Get(apiControllerConnector, \"GetPlanIdFromToken\");\r\n\r\n }\r\n\r\n\r\n}\r\n","\r\nimport axios from 'axios'\r\nimport config from '@/config.js';\r\n\r\n\r\nvar url = config.api_url_cloud;\r\nvar pathAPI = \"api/\";\r\nvar returnResult = null;\r\nvar url2 = null;\r\nvar parametrosUrl = null;\r\nvar token = null;\r\nvar withCredentials = true;\r\n\r\nvar apiClient = axios.create({\r\n baseURL: url\r\n});\r\n\r\n\r\nexport default {\r\n\r\n async Token(Data) {\r\n\r\n\r\n // Realiza la conexión al API\r\n var result = await apiClient.post(url + \"api/JWT/token\", Data, {\r\n timeout: config.httpTimeOut,\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'\r\n }\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n //console.log(error);\r\n //window.location = \"#/lostConnection\";\r\n return error;\r\n\r\n });\r\n\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n if (result.data != null) {\r\n\r\n returnResult = {\r\n ok: true,\r\n obj: result.data\r\n };\r\n\r\n } else {\r\n\r\n returnResult = {\r\n ok: false\r\n };\r\n\r\n\r\n if (result.response != null && result.response.data != null && result.response.data.error_description != null) {\r\n\r\n returnResult.msg = result.response.data.error_description;\r\n\r\n } else if (result?.response?.data?.message != null) {\r\n\r\n switch (result?.response?.data?.message) {\r\n\r\n case \"access_blocked\", \"invalid_grant\": {\r\n\r\n returnResult.msg = \"Usuario o contraseña incorrectos\";\r\n\r\n break;\r\n }\r\n case \"unconfirmed_user\": {\r\n\r\n returnResult.msg = \"Usuario sin confirmación, por favor realizar la confirmación del mismo en el correo recibido luego del registro\";\r\n\r\n break;\r\n }\r\n case \"inactive_user\": {\r\n\r\n returnResult.msg = \"Usuario inactivo\"; // inactivo de la compañía\r\n\r\n break;\r\n }\r\n case \"invalid_account\": {\r\n\r\n returnResult.msg = \"Cuenta no existe, no esta relacionada o no esta asociada con la aplicación\";\r\n\r\n break;\r\n }\r\n case \"inactive_account\": {\r\n\r\n returnResult.msg = \"Cuenta no está activa\";\r\n\r\n break;\r\n }\r\n case \"invalid_plan\": {\r\n\r\n returnResult.msg = \"El plan se encuentra inactivo o no está asignado\";\r\n\r\n break;\r\n }\r\n case \"unassigned_plan\": {\r\n\r\n returnResult.msg = \"La compañía no tiene un plan relacionado\";\r\n\r\n break;\r\n }\r\n case \"invalid_companny\": {\r\n\r\n returnResult.msg = \"Usuario no tiene compañía asignada. Consulte con el administrador de la cuenta\";\r\n\r\n break;\r\n }\r\n\r\n }\r\n\r\n } else {\r\n\r\n returnResult.msg = \"No se ha podido iniciar sesión correctamente. Favor contacte a su proveedor\";\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n return returnResult;\r\n\r\n },\r\n async PostCuentasUsuarioLogin(Data) {\r\n\r\n url2 = pathAPI + \"General\" + \"/\" + \"PostUserAccounts\";\r\n\r\n\r\n // Realiza la conexión al API\r\n var result = await apiClient.post(url2, Data, {\r\n timeout: config.httpTimeOut,\r\n withCredentials: withCredentials,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8'\r\n }\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n //window.location = \"#/lostConnection\";\r\n\r\n return error;\r\n\r\n });\r\n\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n if (result.data != null) {\r\n\r\n if (result.data.length > 0) {\r\n\r\n returnResult = {\r\n ok: true,\r\n obj: result.data\r\n };\r\n\r\n } else {\r\n\r\n returnResult = {\r\n ok: false,\r\n msg: \"El usuario ingresado no posee cuentas asignadas. Favor contacte a su proveedor\"\r\n };\r\n\r\n }\r\n\r\n } else {\r\n\r\n returnResult = {\r\n ok: false\r\n };\r\n\r\n if (result.response != null && result.response.data != null) {\r\n\r\n if (result.response.data.message == \"-1\") {\r\n\r\n returnResult.msg = \"Usuario o Contraseña incorrectos. Favor verifique\";\r\n\r\n } else {\r\n\r\n returnResult.msg = (result.response.data.error_description != null ? result.response.data.error_description : \"No se ha podido iniciar sesión correctamente. Favor contacte a su proveedor\");\r\n\r\n }\r\n\r\n } else {\r\n\r\n returnResult.msg = \"No se ha podido iniciar sesión correctamente. Favor contacte a su proveedor\";\r\n\r\n }\r\n\r\n }\r\n\r\n return returnResult;\r\n\r\n },\r\n\r\n async Get(Controller, Metodo, Parametros, timeOut) {\r\n\r\n token = localStorage.getItem(\"tech_token\");\r\n\r\n url2 = pathAPI + Controller + \"/\" + Metodo;\r\n\r\n\r\n if (timeOut == null)\r\n timeOut = config.httpTimeOut;\r\n\r\n\r\n // Verifica si viene un objeto de parámetros para hacer el agregado a la URL\r\n parametrosUrl = null;\r\n if (Parametros != null) {\r\n\r\n parametrosUrl = this.GenerarParametrosConObjeto(Parametros);\r\n\r\n if (parametrosUrl != null) {\r\n\r\n url2 += \"?\" + parametrosUrl;\r\n\r\n } else {\r\n\r\n return { ok: false, msg: \"No se pudo generar la consulta correctamente\" }\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n // Realiza la conexión al API\r\n var result = await apiClient.get(url2, {\r\n timeout: timeOut,\r\n withCredentials: withCredentials,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'Bearer ' + token\r\n }\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n if (error.code != null && error.code.toUpperCase().includes(\"ECONNABORTED\")) { // Error por TIMEOUT\r\n\r\n // Si es 1s, quiere decir que es un método que no necesita mantener la conexión o esperar una respuesta,\r\n // entonces se pone 1s para que al segundo después de hecha la conexión al API se cancele y no cuente como error\r\n if (timeOut != 1000) {\r\n\r\n console.log(error);\r\n window.location = \"#/lostConnection\";\r\n\r\n }\r\n\r\n } else {\r\n\r\n console.log(error);\r\n\r\n }\r\n\r\n return error;\r\n });\r\n\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n if (result.data != null) {\r\n\r\n returnResult = result.data;\r\n\r\n } else {\r\n\r\n returnResult = {\r\n ok: false\r\n };\r\n\r\n }\r\n\r\n return returnResult;\r\n\r\n },\r\n\r\n\r\n GenerarParametrosConObjeto(parametros) {\r\n\r\n try {\r\n\r\n var str = [];\r\n\r\n for (var p in parametros) {\r\n\r\n var valor = \"\";\r\n\r\n if (Object.prototype.hasOwnProperty.call(parametros, p)) {\r\n\r\n valor = \"\";\r\n\r\n valor = parametros[p];\r\n\r\n if (valor instanceof Date) {\r\n\r\n valor = valor.toISOString();\r\n\r\n }\r\n\r\n str.push(encodeURIComponent(p) + \"=\" + encodeURIComponent(valor));\r\n\r\n\r\n }\r\n\r\n //if (parametros.hasOwnProperty(p)) {\r\n // str.push(encodeURIComponent(p) + \"=\" + encodeURIComponent(parametros[p]));\r\n //}\r\n\r\n }\r\n\r\n return str.join(\"&\");\r\n\r\n } catch (error) {\r\n\r\n return null;\r\n\r\n }\r\n\r\n }\r\n\r\n}\r\n","import axios from 'axios'\r\nimport config from '@/config.js'\r\nimport connectorCloud from '@/common/connector-cloud.js';\r\n//import connector from '@/common/connector.js';\r\n\r\n\r\nconst apiClient = axios.create({\r\n baseURL: config.api_url_cloud\r\n\r\n})\r\n\r\nexport default {\r\n\r\n Token(data) {\r\n return connectorCloud.Token(data);\r\n },\r\n\r\n\r\n CuentasUsuarioLogin(data) {\r\n return connectorCloud.PostCuentasUsuarioLogin(data);\r\n },\r\n\r\n\r\n\r\n\r\n\r\n ListadoNotificacionesActivas(parametros) { // app\r\n return connectorCloud.Get(\"Mensaje\", \"getMensajesActivos\", parametros);\r\n },\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n postTokenOLD(data) {\r\n return apiClient.post('/token', data, {\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'\r\n }\r\n })\r\n },\r\n postUserAccountsOLD(data) {\r\n return apiClient.post('api/General/PostUserAccounts', data, {\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8'\r\n }\r\n })\r\n },\r\n postAdd(data) {\r\n return apiClient.post('api/Cuenta/PostAdd', data, {\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8'\r\n }\r\n })\r\n },\r\n postConfirm(data) {\r\n return apiClient.post('api/Cuenta/PostConfirm', data, {\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8'\r\n }\r\n })\r\n },\r\n postRemember(data) {\r\n return apiClient.post('api/Usuario/postRemeber', data, {\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8'\r\n }\r\n })\r\n },\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n postSaveProfile(data) {\r\n return apiClient.post('api/Usuario/postSaveProfile', data, {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getNotifications(fechaI, fechaF) {\r\n return apiClient.get('api/Mensaje/getMensajes?fechaInicio=' + fechaI + '&fechaFin=' + fechaF + '&estado=1&app=' + config.app_cod, {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getNotificationsActive() {\r\n return apiClient.get('api/Mensaje/getMensajesActivos?&app=' + config.app_cod, {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n\r\n postAcceptInviteExistingUser(data) {\r\n return apiClient.post('api/General/PostAcceptInviteExistingUser', data, {\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n postAcceptInviteUser(data) {\r\n return apiClient.post('api/General/PostAcceptInviteUser', data, {\r\n withCredentials: false,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getCompannias() {\r\n return apiClient.get('api/General/GetCompannias', {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getSetCiaFavorite(ciaId) {\r\n return apiClient.get('api/General/GetSetCiaFavorite?pCompannia=' + ciaId, {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getCiaFavorite() {\r\n return apiClient.get('api/General/GetCiaFavorite', {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getCompanniasUnasigned() {\r\n return apiClient.get('api/General/GetUnasignedCompannias', {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getCompanniaAsignApp(cia_id) {\r\n return apiClient.get('api/General/GetCompanniaAsignApp?pNumero=' + cia_id, {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n getCompanniaUnasignApp(cia_id) {\r\n return apiClient.get('api/General/GetCompanniaUnasignApp?pNumero=' + cia_id, {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n GetCompanniasApp(appCod) { // Obtiene las compa��as de otra aplicaci�n (Facel o Conta)\r\n return apiClient.get('api/General/GetCompanniasApp?app=' + appCod, {\r\n withCredentials: true,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'bearer ' + localStorage.getItem(\"tech_token\")\r\n }\r\n })\r\n },\r\n}","import axios from 'axios';\r\nimport config from '@/config.js';\r\n\r\nexport default class Connector {\r\n constructor(urlP, apiP) {\r\n\r\n this.url = \"\"; // config.api_url;\r\n //this.pathAPI = \"api/\";\r\n this.pathAPI = \"\"; // \"/\";\r\n this.returnResult = null;\r\n this.url2 = null;\r\n this.parametrosUrl = null;\r\n this.token = null;\r\n this.withCredentials = true;\r\n this.customErrorCode = \"*ERRORAPI*\";\r\n\r\n this.apiClient = null;\r\n\r\n if (urlP == null) {\r\n\r\n this.url = config.api_url;\r\n this.pathAPI = \"/\";\r\n\r\n } else {\r\n\r\n this.url = urlP;\r\n this.pathAPI = apiP;\r\n\r\n }\r\n\r\n this.apiClient = axios.create({\r\n baseURL: this.url\r\n });\r\n\r\n }\r\n\r\n async Get(Controller, Metodo, Parametros, timeOut) {\r\n\r\n\r\n\r\n //// Agregar un interceptor de respuesta\r\n //this.apiClient.interceptors.response.use(\r\n // function (response) {\r\n\r\n // //console.log(\"entra interceptor\");\r\n // alert(\"entra interceptor\");\r\n\r\n // // Si la respuesta es exitosa, devolverla directamente\r\n // return response;\r\n // },\r\n // async function (error) {\r\n\r\n // let resulttt = { ...error };\r\n // resulttt.stack = null;\r\n // //console.log(\"entra interceptor ERROR\", resulttt);\r\n\r\n\r\n\r\n // // Si hay un error en la respuesta, almacenar el cuerpo de la respuesta\r\n // if (error.response && error.response.data) {\r\n // error.responseData = await error.response.data.text();\r\n // }\r\n // return Promise.reject(error);\r\n // }\r\n //);\r\n\r\n\r\n\r\n\r\n\r\n this.token = localStorage.getItem(\"tech_token\");\r\n\r\n this.url2 = this.pathAPI + Controller + \"/\" + Metodo;\r\n\r\n\r\n if (timeOut == null)\r\n timeOut = config.httpTimeOut;\r\n\r\n Parametros = { ...Parametros };\r\n\r\n\r\n // Verifica si viene un objeto de parámetros para hacer el agregado a la URL\r\n this.parametrosUrl = null;\r\n if (Parametros != null) {\r\n\r\n this.parametrosUrl = this.GenerarParametrosConObjeto(Parametros);\r\n\r\n if (this.parametrosUrl != null) {\r\n\r\n this.url2 += \"?\" + this.parametrosUrl;\r\n\r\n } else {\r\n\r\n return { ok: false, msg: \"No se pudo generar la consulta correctamente\" }\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n // Realiza la conexión al API\r\n var result = await this.apiClient.get(this.url2, {\r\n timeout: timeOut,\r\n withCredentials: this.withCredentials,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'Bearer ' + this.token\r\n }\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n if (error.code != null && error.code.toUpperCase().includes(\"ECONNABORTED\")) { // Error por TIMEOUT\r\n\r\n // Si es 1s, quiere decir que es un método que no necesita mantener la conexión o esperar una respuesta,\r\n // entonces se pone 1s para que al segundo después de hecha la conexión al API se cancele y no cuente como error\r\n if (timeOut != 1000) {\r\n\r\n console.log(error);\r\n window.location = \"#/lostConnection\";\r\n\r\n }\r\n\r\n } else {\r\n\r\n console.log(error);\r\n\r\n }\r\n\r\n return error;\r\n });\r\n\r\n\r\n //let resulttt = { ...result };\r\n //resulttt.stack = null;\r\n //console.log(\"resulttt\", resulttt);\r\n //console.log(JSON.stringify(resulttt, null, 2));\r\n //console.log(result.response);\r\n\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n if (result.data != null) {\r\n\r\n this.returnResult = result.data;\r\n\r\n } else {\r\n\r\n this.returnResult = {\r\n ok: false,\r\n msg: this.ValidateContextResultCustomErrorMessage(result)\r\n };\r\n\r\n }\r\n\r\n return this.returnResult;\r\n\r\n }\r\n async GetArray(Controller, Metodo, Parametros, timeOut) {\r\n\r\n this.token = localStorage.getItem(\"tech_token\");\r\n\r\n this.url2 = this.pathAPI + Controller + \"/\" + Metodo;\r\n\r\n\r\n if (timeOut == null)\r\n timeOut = config.httpTimeOut;\r\n\r\n Parametros = { ...Parametros };\r\n\r\n\r\n // Verifica si viene un objeto de parámetros para hacer el agregado a la URL\r\n this.parametrosUrl = null;\r\n if (Parametros != null) {\r\n\r\n this.parametrosUrl = this.GenerarParametrosConObjeto(Parametros);\r\n\r\n if (this.parametrosUrl != null) {\r\n\r\n this.url2 += \"?\" + this.parametrosUrl;\r\n\r\n } else {\r\n\r\n return { ok: false, msg: \"No se pudo generar la consulta correctamente\" }\r\n\r\n }\r\n\r\n }\r\n\r\n\r\n // Realiza la conexión al API\r\n var result = await this.apiClient.get(this.url2, {\r\n timeout: timeOut,\r\n withCredentials: this.withCredentials,\r\n responseType: 'arraybuffer',\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'Bearer ' + this.token\r\n }\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n if (error.code != null && error.code.toUpperCase().includes(\"ECONNABORTED\")) { // Error por TIMEOUT\r\n\r\n // Si es 1s, quiere decir que es un método que no necesita mantener la conexión o esperar una respuesta,\r\n // entonces se pone 1s para que al segundo después de hecha la conexión al API se cancele y no cuente como error\r\n if (timeOut != 1000) {\r\n\r\n console.log(error);\r\n window.location = \"#/lostConnection\";\r\n\r\n }\r\n\r\n } else {\r\n\r\n console.log(error);\r\n\r\n }\r\n\r\n return error;\r\n });\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n if (result.status == 200) { // Si el status, es porque no se hizo, automáticamente pasa abajo\r\n\r\n this.returnResult = {\r\n ok: true,\r\n obj: result.data\r\n };\r\n\r\n } else {\r\n\r\n if (result.data != null) {\r\n\r\n this.returnResult = result.data;\r\n\r\n } else {\r\n\r\n this.returnResult = {\r\n ok: false,\r\n msg: this.ValidateContextResultCustomErrorMessageArrayBuffer(result)\r\n };\r\n\r\n }\r\n }\r\n\r\n return this.returnResult;\r\n\r\n }\r\n async Post(Controller, Metodo, Data) {\r\n\r\n this.token = localStorage.getItem(\"tech_token\");\r\n\r\n this.url2 = this.pathAPI + Controller + \"/\" + Metodo;\r\n\r\n\r\n Data = { ...Data };\r\n await this.ObjectConvertDatesToISOString(Data);\r\n\r\n // Realiza la conexión al API\r\n var result = await this.apiClient.post(this.url2, Data, {\r\n timeout: config.httpTimeOut,\r\n withCredentials: this.withCredentials,\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'Bearer ' + this.token\r\n }\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n if (error.code != null && error.code.toUpperCase().includes(\"ECONNABORTED\")) { // Error por TIMEOUT\r\n\r\n // Si es 1s, quiere decir que es un método que no necesita mantener la conexión o esperar una respuesta,\r\n // entonces se pone 1s para que al segundo después de hecha la conexión al API se cancele y no cuente como error\r\n //if (timeOut != 1000) { // Por el momento comentado, ya que no se hace recibimiento de ese parámetro todavía\r\n\r\n console.log(error);\r\n window.location = \"#/lostConnection\";\r\n\r\n //}\r\n\r\n } else {\r\n\r\n console.log(error);\r\n\r\n }\r\n\r\n return error;\r\n\r\n });\r\n\r\n\r\n\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n if (result.data != null) {\r\n\r\n this.returnResult = result.data;\r\n\r\n } else {\r\n\r\n this.returnResult = {\r\n ok: false,\r\n msg: this.ValidateContextResultCustomErrorMessage(result)\r\n };\r\n\r\n }\r\n\r\n return this.returnResult;\r\n\r\n }\r\n async PostArray(Controller, Metodo, Data, timeOut) {\r\n\r\n this.token = localStorage.getItem(\"tech_token\");\r\n\r\n this.url2 = this.pathAPI + Controller + \"/\" + Metodo;\r\n\r\n\r\n if (timeOut == null)\r\n timeOut = config.httpTimeOut;\r\n\r\n Data = { ...Data };\r\n await this.ObjectConvertDatesToISOString(Data);\r\n\r\n // Realiza la conexión al API\r\n var result =\r\n await\r\n this.apiClient.post(this.url2, Data, {\r\n timeout: timeOut,\r\n withCredentials: this.withCredentials,\r\n responseType: 'arraybuffer',\r\n headers: {\r\n 'Content-Type': 'application/json; charset=UTF-8',\r\n 'Authorization': 'Bearer ' + this.token\r\n },\r\n\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n if (error.code != null && error.code.toUpperCase().includes(\"ECONNABORTED\")) { // Error por TIMEOUT\r\n\r\n // Si es 1s, quiere decir que es un método que no necesita mantener la conexión o esperar una respuesta,\r\n // entonces se pone 1s para que al segundo después de hecha la conexión al API se cancele y no cuente como error\r\n if (timeOut != 1000) {\r\n\r\n console.log(error);\r\n window.location = \"#/lostConnection\";\r\n\r\n }\r\n\r\n } else {\r\n\r\n console.log(error);\r\n\r\n }\r\n\r\n return error;\r\n });\r\n\r\n if (result.status == 200) { // Si el status, es porque no se hizo, automáticamente pasa abajo\r\n\r\n this.returnResult = {\r\n ok: true,\r\n obj: result.data\r\n };\r\n\r\n } else {\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n this.returnResult = {\r\n ok: false,\r\n msg: this.ValidateContextResultCustomErrorMessageArrayBuffer(result)\r\n };\r\n\r\n }\r\n\r\n return this.returnResult;\r\n\r\n }\r\n async PostForm(Controller, Metodo, Data) { // Form porque se puede enviar solo información pero también archivos FILE FILES ARCHIVO ARCHIVOS\r\n\r\n this.token = localStorage.getItem(\"tech_token\");\r\n\r\n this.url2 = this.pathAPI + Controller + \"/\" + Metodo;\r\n\r\n\r\n Data = { ...Data };\r\n await this.ObjectConvertDatesToISOString(Data);\r\n\r\n\r\n // Realiza la conexión al API\r\n var result = await this.apiClient.post(this.url2, Data, {\r\n timeout: config.httpTimeOut,\r\n withCredentials: this.withCredentials,\r\n headers: {\r\n //'Content-Type': 'application/json; charset=UTF-8',\r\n 'Content-Type': 'multipart/form-data; charset=UTF-8',\r\n 'Authorization': 'Bearer ' + this.token\r\n }\r\n }).then(function (value) {\r\n return value;\r\n }).catch(error => {\r\n\r\n if (error.code != null && error.code.toUpperCase().includes(\"ECONNABORTED\")) { // Error por TIMEOUT\r\n\r\n // Si es 1s, quiere decir que es un método que no necesita mantener la conexión o esperar una respuesta,\r\n // entonces se pone 1s para que al segundo después de hecha la conexión al API se cancele y no cuente como error\r\n //if (timeOut != 1000) { // Por el momento comentado, ya que no se hace recibimiento de ese parámetro todavía\r\n\r\n console.log(error);\r\n window.location = \"#/lostConnection\";\r\n\r\n //}\r\n\r\n } else {\r\n\r\n console.log(error);\r\n\r\n }\r\n\r\n return error;\r\n\r\n });\r\n\r\n\r\n\r\n\r\n // Para evitar la validación en Controller de si es != null el objeto, ya inmediatamente se devuelve con ok en false\r\n if (result.data != null) {\r\n\r\n this.returnResult = result.data;\r\n\r\n } else {\r\n\r\n this.returnResult = {\r\n ok: false,\r\n msg: this.ValidateContextResultCustomErrorMessage(result)\r\n };\r\n\r\n }\r\n\r\n return this.returnResult;\r\n\r\n }\r\n GenerarParametrosConObjeto(parametros) {\r\n\r\n try {\r\n\r\n var str = [];\r\n\r\n for (var p in parametros) {\r\n\r\n var valor = \"\";\r\n\r\n if (Object.prototype.hasOwnProperty.call(parametros, p)) {\r\n\r\n valor = \"\";\r\n\r\n valor = parametros[p];\r\n\r\n if (valor instanceof Date) {\r\n\r\n //valor = valor.toISOString();\r\n\r\n let year = valor.getFullYear();\r\n let month = (valor.getMonth() + 1).toString().padStart(2, '0');\r\n let day = valor.getDate().toString().padStart(2, '0');\r\n let hours = valor.getHours().toString().padStart(2, '0');\r\n let minutes = valor.getMinutes().toString().padStart(2, '0');\r\n let seconds = valor.getSeconds().toString().padStart(2, '0');\r\n\r\n valor = `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.000Z`;\r\n\r\n }\r\n\r\n str.push(encodeURIComponent(p) + \"=\" + encodeURIComponent(valor));\r\n\r\n\r\n }\r\n\r\n //if (parametros.hasOwnProperty(p)) {\r\n // str.push(encodeURIComponent(p) + \"=\" + encodeURIComponent(parametros[p]));\r\n //}\r\n\r\n }\r\n\r\n return str.join(\"&\");\r\n\r\n } catch (error) {\r\n\r\n return null;\r\n\r\n }\r\n\r\n }\r\n\r\n async ObjectConvertDatesToISOString(objeto) {\r\n\r\n var valor = \"\";\r\n\r\n for (var p in objeto) {\r\n\r\n if (Object.prototype.hasOwnProperty.call(objeto, p)) {\r\n\r\n valor = \"\";\r\n\r\n if (typeof objeto[p] === 'object') {\r\n\r\n valor = objeto[p];\r\n\r\n if (valor instanceof Date) {\r\n\r\n let year = valor.getFullYear();\r\n let month = (valor.getMonth() + 1).toString().padStart(2, '0');\r\n let day = valor.getDate().toString().padStart(2, '0');\r\n let hours = valor.getHours().toString().padStart(2, '0');\r\n let minutes = valor.getMinutes().toString().padStart(2, '0');\r\n let seconds = valor.getSeconds().toString().padStart(2, '0');\r\n\r\n objeto[p] = `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.000Z`;\r\n\r\n\r\n //console.log(objeto[p]);\r\n\r\n //valor = valor.toISOString();\r\n //objeto[p] = valor;\r\n\r\n\r\n //console.log((encodeURIComponent(p) + \"=\" + encodeURIComponent(valor)));\r\n\r\n } else {\r\n\r\n await this.ObjectConvertDatesToISOString(objeto[p]);\r\n\r\n }\r\n\r\n\r\n\r\n } else {\r\n\r\n valor = objeto[p];\r\n\r\n if (valor instanceof Date) {\r\n\r\n let year = valor.getFullYear();\r\n let month = (valor.getMonth() + 1).toString().padStart(2, '0');\r\n let day = valor.getDate().toString().padStart(2, '0');\r\n let hours = valor.getHours().toString().padStart(2, '0');\r\n let minutes = valor.getMinutes().toString().padStart(2, '0');\r\n let seconds = valor.getSeconds().toString().padStart(2, '0');\r\n\r\n objeto[p] = `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.000Z`;\r\n\r\n\r\n //valor = valor.toISOString();\r\n //objeto[p] = valor;\r\n\r\n //console.log(objeto[p]);\r\n\r\n }\r\n\r\n //console.log((encodeURIComponent(p) + \"=\" + encodeURIComponent(valor)));\r\n\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n //async ObjectConvertDatesToISOString(objeto) {\r\n\r\n // var valor = \"\";\r\n\r\n // for (var p in objeto) {\r\n\r\n // if (Object.prototype.hasOwnProperty.call(objeto, p)) {\r\n\r\n // valor = \"\";\r\n\r\n // //console.log(\"objeto[p]\", objeto[p]);\r\n\r\n // if (typeof objeto[p] === 'object') {\r\n\r\n // valor = objeto[p];\r\n\r\n // if (valor instanceof Date) {\r\n\r\n // let year = valor.getFullYear();\r\n // let month = (valor.getMonth() + 1).toString().padStart(2, '0');\r\n // let day = valor.getDate().toString().padStart(2, '0');\r\n // let hours = valor.getHours().toString().padStart(2, '0');\r\n // let minutes = valor.getMinutes().toString().padStart(2, '0');\r\n // let seconds = valor.getSeconds().toString().padStart(2, '0');\r\n\r\n // objeto[p] = `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.000Z`;\r\n\r\n\r\n // //console.log(objeto[p]);\r\n\r\n // //valor = valor.toISOString();\r\n // //objeto[p] = valor;\r\n\r\n\r\n // //console.log((encodeURIComponent(p) + \"=\" + encodeURIComponent(valor)));\r\n\r\n // } else {\r\n\r\n // await this.ObjectConvertDatesToISOString(objeto[p]);\r\n\r\n // }\r\n\r\n\r\n\r\n // } else {\r\n\r\n // valor = objeto[p];\r\n\r\n // if (valor instanceof Date) {\r\n\r\n // //console.log(\"¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡FECHITA BABY!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\");\r\n\r\n // let year = 1999; // valor.getFullYear();\r\n // let month = (valor.getMonth() + 1).toString().padStart(2, '0');\r\n // let day = valor.getDate().toString().padStart(2, '0');\r\n // let hours = valor.getHours().toString().padStart(2, '0');\r\n // let minutes = valor.getMinutes().toString().padStart(2, '0');\r\n // let seconds = valor.getSeconds().toString().padStart(2, '0');\r\n\r\n // objeto[p] = `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.000Z`;\r\n\r\n\r\n // //valor = valor.toISOString();\r\n // //objeto[p] = valor;\r\n\r\n // //console.log(objeto[p]);\r\n\r\n // } else if (typeof objeto[p] === 'string') {\r\n\r\n // try {\r\n\r\n // const parsedObject = JSON.parse(objeto[p]);\r\n // if (typeof parsedObject === 'object') {\r\n\r\n // //console.log(\"------ENTRA OBJETO parsedObject\");\r\n\r\n // await this.ObjectConvertDatesToISOString(parsedObject);\r\n // objeto[p] = JSON.stringify(parsedObject);\r\n\r\n // //console.log(\"------SALE OBJETO parsedObject\");\r\n\r\n // }\r\n\r\n // } catch (error) {\r\n // // Si hay un error al analizar el JSON, no hacemos nada\r\n // }\r\n\r\n // }\r\n\r\n // //console.log((encodeURIComponent(p) + \"=\" + encodeURIComponent(valor)));\r\n\r\n // }\r\n\r\n // }\r\n\r\n\r\n\r\n\r\n // }\r\n\r\n\r\n\r\n\r\n // // Código anterior, supongo jeje\r\n\r\n // //for (var clave in objeto) {\r\n\r\n // // //console.log(\"\");\r\n\r\n // // //console.log(objeto[clave]);\r\n\r\n // // if (typeof objeto[clave] === 'object') {\r\n\r\n // // //console.log(\"objeto[clave]: == object\");\r\n\r\n // // this.ObjectConvertDatesToISOString(objeto[clave]); // Llamada recursiva para verificar en objetos internos\r\n\r\n // // } else if (objeto[clave] instanceof Date) { // typeof objeto[clave] === 'object' &&\r\n\r\n // // //console.log(\"objeto[clave]: == Date\");\r\n\r\n\r\n // // objeto[clave] = objeto[clave].toISOString();\r\n // // //console.log(objeto[clave]);\r\n\r\n\r\n // // }\r\n // //}\r\n\r\n\r\n\r\n\r\n\r\n //}\r\n\r\n ValidateContextResultCustomErrorMessage(result) {\r\n\r\n \r\n\r\n //console.log(\"result\", result);\r\n\r\n if (result?.response?.status == config.statusCodeExpiredToken) {\r\n\r\n this.CerrarSesion();\r\n\r\n }\r\n\r\n if (typeof result.response?.data === 'string' && result.response?.data?.includes(this.customErrorCode))\r\n return result.response.data.replace(this.customErrorCode, \"\");\r\n else\r\n return null;\r\n\r\n }\r\n ValidateContextResultCustomErrorMessageArrayBuffer(result) {\r\n\r\n //console.log(\"result\", result);\r\n\r\n if (result?.response?.status == config.statusCodeExpiredToken) {\r\n\r\n this.CerrarSesion();\r\n\r\n }\r\n\r\n let resultMsg = null;\r\n if (result.response != null) {\r\n if (result.response.data != null) {\r\n // Actualmente los únicos que se pueden devolver personalizados\r\n // Solo acá se validan dado que no sé qué tanto puede devolver un \"arrayBuffer\" cuando es error, entonces para no hacer esto en todas las posibilidades, solo en las que puedan pasar\r\n if (result.response.status == 303 || result.response.status == 406 || result.response.status == 403) { // || result.response.status == 401 // Por el momento 401 será solo por TOKEN vencido\r\n let mensaje = new TextDecoder().decode(result.response.data);\r\n if (mensaje != null && typeof mensaje === \"string\" && mensaje != \"\" && mensaje.includes(this.customErrorCode)) {\r\n resultMsg = mensaje.replace(this.customErrorCode, \"\");\r\n }\r\n }\r\n }\r\n }\r\n\r\n return resultMsg;\r\n\r\n }\r\n\r\n // También está este método en TobBar.vue\r\n CerrarSesion() {\r\n\r\n localStorage.removeItem(\"tech_token\");\r\n localStorage.removeItem(\"tech_refreshtoken\");\r\n localStorage.removeItem(\"tech_tokenexpires\");\r\n localStorage.removeItem(\"tech_user\");\r\n localStorage.removeItem(\"tech_userName\");\r\n localStorage.removeItem(\"tech_uTipo\");\r\n localStorage.removeItem(\"tech_cia\");\r\n localStorage.removeItem(\"tech_ciaName\");\r\n localStorage.removeItem(\"tech_userId\");\r\n localStorage.removeItem(\"tech_usercIden\");\r\n localStorage.removeItem(\"tech_usercta_id\");\r\n localStorage.removeItem(\"tech_planId\");\r\n localStorage.removeItem(\"tech_planNombre\");\r\n localStorage.removeItem(\"tech_planVencimiento\");\r\n localStorage.removeItem(\"tech_diasVigente\");\r\n localStorage.removeItem(\"tech_ciaMoneda\");\r\n localStorage.removeItem(\"tech_ciaPais\");\r\n localStorage.removeItem(\"tech_ciaActualizacionRapida\");\r\n localStorage.removeItem(\"tech_ciaMonedaConfiguracion\");\r\n\r\n\r\n window.location.href = config.login_url;\r\n\r\n }\r\n\r\n\r\n\r\n}\r\n","import moment from 'moment';\r\nimport numeral from 'numeral';\r\nimport config from './../config';\r\n\r\nvar defaultLengthDB = 17; // 18 es la base de datos, pero voy a ponerlo 17 para que acepte solo 12 enteros y 5 decimales, para evitar una caída por overflow\r\nvar defaultDecimal = 5;\r\nvar defaultDecimalFormat = 2;\r\n\r\nconst Filters = (app) => {\r\n\r\n app.config.globalProperties.$filters = {\r\n\r\n // {{ $filters.dateFormat(variableFecha) }} - Este solo es fecha\r\n dateFormat(value) {\r\n\r\n return moment(value).format(config.formatoFecha);\r\n\r\n },\r\n\r\n // {{ $filters.dateFormat(variableFecha) }} - Este tiene fecha y hora formateada\r\n dateTimeFormat(value) {\r\n\r\n return moment(value).format(config.formatoFechaHora);\r\n\r\n },\r\n\r\n // {{ $filters.numberFormat(variableMonto) }}\r\n numberFormat(value, decimal) {\r\n\r\n if (decimal == null)\r\n decimal = defaultDecimalFormat;\r\n\r\n var num = 0;\r\n var varPadeada = num.toString().padStart(decimal, '0');\r\n\r\n\r\n return numeral(value).format(`0,0.${varPadeada}`)\r\n // displaying other groupings/separators is possible, look at the docs\r\n\r\n },\r\n\r\n // Esto sirve cuando se hacen cálculos y tiene demasiados decimales, entonces se asigna la cantidad de decimales estimado y se devuelve como decimal no como string\r\n // this.$filters.numberFormatDecimalInput(variableDecimal)\r\n numberFormatDecimalInput(value, decimal) {\r\n\r\n if (value.toString().includes(\",\") || value.toString().includes(\".\")) {\r\n\r\n if (decimal == null)\r\n decimal = defaultDecimal;\r\n\r\n let num = 0;\r\n let varPadeada = num.toString().padStart(decimal, '0');\r\n\r\n return parseFloat(numeral(value).format(`0.${varPadeada}`))\r\n\r\n } else {\r\n\r\n return parseFloat(numeral(value).format(`0`))\r\n\r\n }\r\n\r\n },\r\n\r\n\r\n\r\n\r\n // Acepta solo decimales (decimales y cantidadTotalDecimalEnBase son opcionales, en caso de no querer indicarlos, revisar los \"por defecto\" en el método de abajito jeje)\r\n // \r\n OnlyDecimals(evt, decimales, cantidadTotalDecimalEnBase, maxLength, noNegativo) {\r\n\r\n let key = evt.which || evt.keyCode;\r\n let chark = String.fromCharCode(key);\r\n\r\n return this.OnlyDecimalsValidRegex(evt, decimales, cantidadTotalDecimalEnBase, chark, maxLength, noNegativo);\r\n\r\n },\r\n OnlyDecimalsPaste(evt, decimales, cantidadTotalDecimalEnBase, maxLength, noNegativo) {\r\n\r\n let textoIngresado = evt.clipboardData.getData('text');\r\n\r\n return this.OnlyDecimalsValidRegex(evt, decimales, cantidadTotalDecimalEnBase, textoIngresado, maxLength, noNegativo);\r\n\r\n },\r\n OnlyDecimalsValidRegex(evt, decimales, cantidadTotalDecimalEnBase, textoIngresado, maxLength, noNegativo) {\r\n\r\n const input = evt.target;\r\n\r\n var textoActual = \"\";\r\n\r\n if (input.value != null && input.value.length > 0) {\r\n\r\n if (input.selectionStart == input.value.length) { // Si se ingresó algo al puro final del input, nada mas lo agrega al final y listo\r\n\r\n textoActual = input.value + textoIngresado;\r\n\r\n } else { // Si ingresó un texto en otra parte que no es el final, tiene que recorrer para ingresarlo donde realmente se digitó\r\n\r\n for (var i = 0; i < input.value.length; i++) {\r\n\r\n if (i == input.selectionStart) // Cuando ya va por la posición donde estaba el Focus, lo ingresa\r\n textoActual += textoIngresado;\r\n\r\n if (input.selectionStart != input.selectionEnd) {\r\n\r\n if (i >= input.selectionStart && i < input.selectionEnd) {\r\n\r\n // En teoría no ingresa nada, ya que se sustituye\r\n\r\n } else {\r\n\r\n textoActual += input.value.charAt(i);\r\n\r\n }\r\n\r\n } else {\r\n\r\n textoActual += input.value.charAt(i);\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n }\r\n\r\n } else {\r\n\r\n textoActual += textoIngresado;\r\n\r\n }\r\n\r\n\r\n\r\n\r\n if (noNegativo == null)\r\n noNegativo = false;\r\n\r\n if (decimales == null)\r\n decimales = defaultDecimal;\r\n\r\n if (cantidadTotalDecimalEnBase == null)\r\n cantidadTotalDecimalEnBase = defaultLengthDB;\r\n\r\n var cantidadNumeroRegex = cantidadTotalDecimalEnBase - decimales;\r\n\r\n let regex;\r\n\r\n if (decimales > 0 && textoActual.includes(\".\")) {\r\n\r\n if (noNegativo) {\r\n\r\n regex = new RegExp(`^[0-9]{0,${cantidadNumeroRegex}}[.]?[0-9]{0,${decimales}}$`);\r\n\r\n } else {\r\n\r\n regex = new RegExp(`^-?[0-9]{0,${cantidadNumeroRegex}}[.]?[0-9]{0,${decimales}}$`);\r\n\r\n }\r\n\r\n } else {\r\n\r\n if (noNegativo) {\r\n\r\n regex = new RegExp(`^[0-9]{0,${cantidadNumeroRegex}}$`);\r\n\r\n } else {\r\n\r\n regex = new RegExp(`^-?[0-9]{0,${cantidadNumeroRegex}}$`);\r\n\r\n }\r\n\r\n }\r\n\r\n if (regex.test(textoActual) === true) {\r\n //if (regex.test(textoActual)) {\r\n //return true;\r\n\r\n if (maxLength != null) {\r\n\r\n if (textoActual > maxLength) {\r\n\r\n evt.preventDefault();\r\n\r\n } else {\r\n\r\n return true;\r\n\r\n }\r\n\r\n } else {\r\n\r\n return true;\r\n\r\n }\r\n\r\n\r\n } else {\r\n //return false;\r\n evt.preventDefault();\r\n }\r\n\r\n },\r\n\r\n\r\n OnlyNumbers(evt, maxLength) {\r\n\r\n let key = evt.which || evt.keyCode;\r\n let chark = String.fromCharCode(key);\r\n\r\n return this.OnlyNumbersValidRegex(evt, chark, maxLength);\r\n\r\n },\r\n OnlyNumbersPaste(evt, maxLength) {\r\n\r\n let textoIngresado = evt.clipboardData.getData('text');\r\n\r\n return this.OnlyNumbersValidRegex(evt, textoIngresado, maxLength);\r\n\r\n },\r\n OnlyNumbersValidRegex(evt, textoIngresado, maxLength) {\r\n\r\n const input = evt.target;\r\n\r\n var textoActual = \"\";\r\n\r\n if (input.value != null && input.value.length > 0) {\r\n\r\n if (input.selectionStart == input.value.length) { // Si se ingresó algo al puro final del input, nada mas lo agrega al final y listo\r\n\r\n textoActual = input.value + textoIngresado;\r\n\r\n } else { // Si ingresó un texto en otra parte que no es el final, tiene que recorrer para ingresarlo donde realmente se digitó\r\n\r\n for (var i = 0; i < input.value.length; i++) {\r\n\r\n if (i == input.selectionStart) // Cuando ya va por la posición donde estaba el Focus, lo ingresa\r\n textoActual += textoIngresado;\r\n\r\n if (input.selectionStart != input.selectionEnd) {\r\n\r\n if (i >= input.selectionStart && i < input.selectionEnd) {\r\n\r\n // En teoría no ingresa nada, ya que se sustituye\r\n\r\n } else {\r\n\r\n textoActual += input.value.charAt(i);\r\n\r\n }\r\n\r\n } else {\r\n\r\n textoActual += input.value.charAt(i);\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n }\r\n\r\n } else {\r\n\r\n textoActual += textoIngresado;\r\n\r\n }\r\n\r\n\r\n\r\n\r\n let regex;\r\n\r\n regex = new RegExp(`^[0-9]*$`);\r\n\r\n //regex = new RegExp(`^-?[0-9]{0,${cantidadNumeroRegex}}$`);\r\n\r\n if (regex.test(textoActual) === true) {\r\n //if (regex.test(textoActual)) {\r\n //return true;\r\n\r\n if (maxLength != null) {\r\n\r\n if (textoActual > maxLength) {\r\n\r\n evt.preventDefault();\r\n\r\n } else {\r\n\r\n return true;\r\n\r\n }\r\n\r\n } else {\r\n\r\n return true;\r\n\r\n }\r\n\r\n\r\n } else {\r\n //return false;\r\n evt.preventDefault();\r\n }\r\n\r\n },\r\n\r\n\r\n OnlyNumbersAndLetters(evt) {\r\n\r\n let key = evt.which || evt.keyCode;\r\n let chark = String.fromCharCode(key);\r\n\r\n return this.OnlyNumbersAndLettersValidRegex(evt, chark);\r\n\r\n },\r\n OnlyNumbersAndLettersPaste(evt) {\r\n\r\n let textoIngresado = evt.clipboardData.getData('text');\r\n\r\n return this.OnlyNumbersAndLettersValidRegex(evt, textoIngresado);\r\n\r\n },\r\n OnlyNumbersAndLettersValidRegex(evt, textoIngresado) {\r\n\r\n const input = evt.target;\r\n\r\n var textoActual = \"\";\r\n\r\n if (input.value != null && input.value.length > 0) {\r\n\r\n if (input.selectionStart == input.value.length) { // Si se ingresó algo al puro final del input, nada mas lo agrega al final y listo\r\n\r\n textoActual = input.value + textoIngresado;\r\n\r\n } else { // Si ingresó un texto en otra parte que no es el final, tiene que recorrer para ingresarlo donde realmente se digitó\r\n\r\n for (var i = 0; i < input.value.length; i++) {\r\n\r\n if (i == input.selectionStart) // Cuando ya va por la posición donde estaba el Focus, lo ingresa\r\n textoActual += textoIngresado;\r\n\r\n if (input.selectionStart != input.selectionEnd) {\r\n\r\n if (i >= input.selectionStart && i < input.selectionEnd) {\r\n\r\n // En teoría no ingresa nada, ya que se sustituye\r\n\r\n } else {\r\n\r\n textoActual += input.value.charAt(i);\r\n\r\n }\r\n\r\n } else {\r\n\r\n textoActual += input.value.charAt(i);\r\n\r\n }\r\n\r\n\r\n }\r\n\r\n }\r\n\r\n } else {\r\n\r\n textoActual += textoIngresado;\r\n\r\n }\r\n\r\n let regex;\r\n\r\n regex = new RegExp(`^[A-Za-z0-9]*$`);\r\n\r\n\r\n if (regex.test(textoActual) === true) {\r\n //if (regex.test(textoActual)) {\r\n //return true;\r\n\r\n return true;\r\n\r\n\r\n } else {\r\n //return false;\r\n evt.preventDefault();\r\n }\r\n\r\n },\r\n\r\n\r\n\r\n\r\n // \r\n VerifyHeightTextArea() {\r\n\r\n setTimeout(() => {\r\n\r\n var textAreas = document.querySelectorAll('[name=\"verifyHeightTextArea\"]');\r\n\r\n if (textAreas.length > 0) {\r\n\r\n textAreas.forEach(function (value) {\r\n\r\n if (value.value != null && value.value != \"\") {\r\n\r\n if (value.style.height == null || value.style.height == \"\")\r\n value.style.height = \"40px\";\r\n\r\n value.style.height = (value.scrollHeight + 5) + 'px';\r\n\r\n } else {\r\n\r\n value.style.height = \"40px\";\r\n\r\n }\r\n\r\n }, this);\r\n\r\n }\r\n\r\n }, 100);\r\n\r\n },\r\n\r\n\r\n // npm install b64-to-blob\r\n DownloadBase64File(base64, extension, nombre, mediaType) {\r\n\r\n let linkSource;\r\n let downloadLink;\r\n\r\n if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') > -1) {\r\n let fileName;\r\n linkSource = `data:application/${extension};base64,${base64}`;\r\n downloadLink = document.createElement(\"a\");\r\n fileName = nombre;\r\n downloadLink.href = linkSource;\r\n downloadLink.download = fileName + \".\" + extension;\r\n downloadLink.click();\r\n } else {\r\n let b64toBlob = require('b64-to-blob');\r\n let blob = b64toBlob(base64, `data: ${mediaType}`);\r\n const blobUrl = URL.createObjectURL(blob);\r\n fetch(blobUrl).then(res => res.arrayBuffer()).then(res => {\r\n const file = new Blob([res], { type: \"application/octet-stream\" }); // mediaType\r\n const fileURL = URL.createObjectURL(file);\r\n const link = document.createElement('a');\r\n link.href = fileURL;\r\n link.download = nombre + \".\" + extension;\r\n link.click();\r\n link.remove();\r\n });\r\n }\r\n\r\n\r\n },\r\n\r\n DownloadBlobFile(blob, nombre, extension) {\r\n\r\n let mediaType = \"application/octet-stream\";\r\n\r\n switch (extension) {\r\n\r\n case \"xls\": case \"xls2\": case \"xlsx\":\r\n\r\n mediaType = \"application/vnd.ms-excel\";\r\n extension = \"xls\";\r\n\r\n break;\r\n case \"pdf\":\r\n\r\n mediaType = \"application/pdf\";\r\n extension = \"pdf\";\r\n\r\n break;\r\n case \"doc\": case \"docx\":\r\n\r\n mediaType = \"application/msword\";\r\n extension = \"doc\";\r\n\r\n break;\r\n case \"txt\":\r\n\r\n mediaType = \"text/plain\";\r\n extension = \"txt\";\r\n\r\n break;\r\n }\r\n\r\n if (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) {\r\n let file = new Blob([blob], { type: `data: ${mediaType}` }) // text/csv;charset=utf-8 attachment/pdf\r\n let fileURL = URL.createObjectURL(file);\r\n let a = window.document.createElement(\"a\");\r\n a.target = '_blank';\r\n a.href = fileURL;\r\n\r\n let e = window.document.createEvent(\"MouseEvents\");\r\n e.initMouseEvent(\"click\", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);\r\n a.dispatchEvent(e);\r\n\r\n } else {\r\n\r\n let fileName = `${nombre}.${extension}`;\r\n let a = document.createElement(\"a\");\r\n document.body.appendChild(a);\r\n a.style = \"display: none\";\r\n\r\n let myBlob = new Blob([blob], { type: `data: ${mediaType}` });\r\n\r\n if (window.navigator && window.navigator.msSaveOrOpenBlob) {\r\n window.navigator.msSaveOrOpenBlob(myBlob, fileName);\r\n } else {\r\n let blobURL = window.URL.createObjectURL(myBlob);\r\n\r\n a.href = blobURL;\r\n a.download = fileName;\r\n a.click();\r\n }\r\n }\r\n\r\n },\r\n\r\n\r\n\r\n ValidateValidEmail(correo) {\r\n\r\n let regex = /^[^\\s@]+@[^\\s@]+\\.[a-zA-Z]{2,}$/;\r\n //let regex = /^[a-z0-9]+@[a-z]+\\.[a-z]{2,}$/; \r\n //let regex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\\.[a-zA-Z0-9-]+)*$/;\r\n //let regex = /^[A-Za-z0-9_!#$%&'*+\\/=?`{|}~^.-]+@[A-Za-z0-9.-]+$/gm;\r\n //let regex = /^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$/;\r\n //let regex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\r\n //let regex = /^(?:[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[^\\s\"\\\\]|\\\\[\\s\\S])*\")|[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$/;\r\n //const emailRegex = /^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])$/i;\r\n //const emailRegex = /^(?:[A-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[A-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9]{2,}(?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])$/i;\r\n \r\n \r\n\r\n if (regex.test(correo)) {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n },\r\n\r\n\r\n // La idea es revisar cualquier tipo de \"validación\" que impida poder ver alguna acción (sea por rol, plan gratuito o por permiso)\r\n ValidateActionAccess(allowedRoles, blockFreePlan, permission, returnBool) {\r\n\r\n let allowed = true;\r\n let msg = \"\";\r\n let blockedByRole = false;\r\n let blockedByFreePlan = false;\r\n let blockedByPermission = false;\r\n let roles = [];\r\n let role = localStorage.getItem(\"tech_uTipo\");\r\n\r\n if (returnBool == null)\r\n returnBool = false;\r\n\r\n if (allowedRoles != null) {\r\n\r\n allowedRoles = allowedRoles.split(\",\");\r\n\r\n allowedRoles.forEach((value) => {\r\n roles.push(value.replace(\" \", \"\"));\r\n });\r\n\r\n allowed = roles.some(allowedRole => allowedRole == role);\r\n\r\n if (!allowed) {\r\n msg = config.blocked_msg_role1;\r\n blockedByRole = true;\r\n }\r\n \r\n\r\n }\r\n\r\n if (blockFreePlan) {\r\n\r\n let planId = localStorage.getItem(\"tech_planId\");\r\n\r\n if (planId == 55) {\r\n\r\n if (allowed) {\r\n\r\n allowed = false;\r\n msg = config.blocked_msg_free_plan1;\r\n\r\n }\r\n\r\n blockedByFreePlan = true;\r\n\r\n }\r\n\r\n }\r\n // No tiene else, si ya viene FALSE es porque está bloqueado, no se necesita volver a validar otra vez\r\n\r\n if (returnBool) {\r\n\r\n return allowed;\r\n\r\n } else {\r\n\r\n return {\r\n allowed: allowed,\r\n msg: msg,\r\n blockedByRole: blockedByRole,\r\n blockedByFreePlan: blockedByFreePlan,\r\n blockedByPermission: blockedByPermission,\r\n blockedByFreePlanOnly: (!blockedByRole && !blockedByPermission && blockedByFreePlan)\r\n };\r\n\r\n }\r\n\r\n },\r\n\r\n\r\n // $filters.ObjectConvertDatesToISOString({}) // si no viene devuelveObjeto se asigna FALSE, por ende, devuevle el JSON\r\n ObjectConvertDatesToISOString(objeto, devuelveObjeto) {\r\n\r\n if (devuelveObjeto == null) {\r\n\r\n devuelveObjeto = false;\r\n\r\n }\r\n\r\n objeto = { ...objeto };\r\n\r\n var valor = \"\";\r\n\r\n for (var p in objeto) {\r\n\r\n if (Object.prototype.hasOwnProperty.call(objeto, p)) {\r\n\r\n valor = \"\";\r\n\r\n if (typeof objeto[p] === 'object') {\r\n\r\n valor = objeto[p];\r\n\r\n if (valor instanceof Date) {\r\n\r\n let year = valor.getFullYear();\r\n let month = (valor.getMonth() + 1).toString().padStart(2, '0');\r\n let day = valor.getDate().toString().padStart(2, '0');\r\n let hours = valor.getHours().toString().padStart(2, '0');\r\n let minutes = valor.getMinutes().toString().padStart(2, '0');\r\n let seconds = valor.getSeconds().toString().padStart(2, '0');\r\n\r\n objeto[p] = `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.000Z`;\r\n\r\n\r\n //console.log(objeto[p]);\r\n\r\n //valor = valor.toISOString();\r\n //objeto[p] = valor;\r\n\r\n\r\n //console.log((encodeURIComponent(p) + \"=\" + encodeURIComponent(valor)));\r\n\r\n } else {\r\n\r\n this.ObjectConvertDatesToISOString(objeto[p]);\r\n\r\n }\r\n\r\n\r\n\r\n } else {\r\n\r\n valor = objeto[p];\r\n\r\n if (valor instanceof Date) {\r\n\r\n let year = valor.getFullYear();\r\n let month = (valor.getMonth() + 1).toString().padStart(2, '0');\r\n let day = valor.getDate().toString().padStart(2, '0');\r\n let hours = valor.getHours().toString().padStart(2, '0');\r\n let minutes = valor.getMinutes().toString().padStart(2, '0');\r\n let seconds = valor.getSeconds().toString().padStart(2, '0');\r\n\r\n objeto[p] = `${year}-${month}-${day}T${hours}:${minutes}:${seconds}.000Z`;\r\n\r\n\r\n //valor = valor.toISOString();\r\n //objeto[p] = valor;\r\n\r\n //console.log(objeto[p]);\r\n\r\n }\r\n\r\n //console.log((encodeURIComponent(p) + \"=\" + encodeURIComponent(valor)));\r\n\r\n }\r\n\r\n }\r\n\r\n }\r\n\r\n if (devuelveObjeto) {\r\n\r\n return objeto;\r\n\r\n } else {\r\n\r\n return JSON.stringify(objeto);\r\n\r\n } \r\n\r\n },\r\n\r\n\r\n FillWith0(cantidad, texto) {\r\n\r\n if (texto != null && texto != '') {\r\n if (!isNaN(texto) && texto.length < 8) {\r\n texto = (\"0000000000000000000\" + texto).slice(-cantidad);\r\n }\r\n }\r\n\r\n return texto;\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n};\r\n\r\nexport { Filters };\r\n\r\n\r\n","import { useLoading } from 'vue-loading-overlay';\n\nconst LoadingPluginCustom = (app) => {\n\n function UseLoadingCustom() {\n\n var loadingBaborsh = null;\n var loading = useLoading();\n\n return {\n\n show() {\n\n if (loadingBaborsh == null)\n loadingBaborsh = loading.show();\n\n },\n\n hide() {\n\n if (loadingBaborsh != null) {\n\n loadingBaborsh.hide();\n loadingBaborsh = null;\n\n }\n\n\n\n }\n\n }\n }\n\n\n const instance = UseLoadingCustom();\n\n app.config.globalProperties.$loading = instance;\n app.provide('$loading', instance)\n\n\n\n};\n\nexport { LoadingPluginCustom };\n","\r\nimport { notify } from '@kyvg/vue3-notification';\r\n\r\nconst NotificacionesCustom = (app) => {\r\n\r\n function UseNotifyCustom() {\r\n\r\n return {\r\n\r\n // tipo: 1: success 2: error 3: warn\r\n // msg: Es el mensaje principal, pero puede venir null de un callback.msg, entonces se obtendría el msg2 en dicho caso\r\n // sec: En caso de que sea una notificación con tiempo establecido, vendrá en segundos, no en miles\r\n Notificacion(tipoId, msg, msg2, titulo, secP) {\r\n\r\n var tipo = \"warn\";\r\n var sec = 3000;\r\n\r\n\r\n if (secP != null)\r\n sec = secP * 1000;\r\n\r\n if (titulo == null)\r\n titulo = \"\";\r\n\r\n switch (tipoId) {\r\n case 1:\r\n\r\n tipo = \"success\";\r\n\r\n break;\r\n case 2:\r\n\r\n tipo = \"error\";\r\n\r\n break;\r\n case 3:\r\n\r\n tipo = \"warn\";\r\n\r\n break;\r\n }\r\n\r\n notify({\r\n title: titulo,\r\n text: (msg != null && msg != \"\" ? msg : msg2),\r\n duration: sec,\r\n type: tipo,\r\n group: \"app\"\r\n });\r\n\r\n\r\n },\r\n\r\n NotificacionRedirect(tipoId, msg, msg2, titulo, secP, redirect) {\r\n\r\n if (secP == null)\r\n secP = 4;\r\n\r\n this.Notificacion(tipoId, msg, msg2, titulo, secP);\r\n\r\n window.location.href = \"#\" + redirect;\r\n\r\n }\r\n\r\n }\r\n }\r\n\r\n const instance = UseNotifyCustom();\r\n\r\n app.config.globalProperties.$notify = instance;\r\n app.provide('$notify', instance)\r\n\r\n\r\n\r\n};\r\n\r\nexport { NotificacionesCustom };\r\n","\r\nexport default {\r\n\r\n\r\n //api_url_cloud: \"https://cloud.technosoftcr.com/cloudwebapi/\",//'https://cloud3.technosoftcr.com/test/', http://cloud3.technosoftcr.com/Cloudwebapi/\r\n //api_url: 'https://localhost:7204/',\r\n //api_url_reportes: 'https://localhost:44374/',\r\n //api_url_reportes_api: 'api/',\r\n //login_url: \"index.html#/\", // 'http://localhost:8080/',\r\n //api_url_signalr: \"https://localhost:7204/myhub\",\r\n\r\n api_url_cloud: 'https://cloud.technosoftcr.com/cloudwebapi/', // https://cloud.technosoftcr.com/cloudwebapi/ https://cloud3.technosoftcr.com/Cloudwebapi/ https://cloud3.technosoftcr.com/test/\r\n api_url: 'https://api.technosoftcr.com/inventariosv2/', // https://apixpress.technosoft.co.cr/invetestapi/ https://api.technosoftcr.com/inventariosv2/\r\n api_url_reportes: 'https://api.technosoftcr.com/inventariosv2_reportes/', // https://apixpress.technosoft.co.cr/invetestapi/ https://api.technosoftcr.com/inventariosv2_reportes/\r\n api_url_reportes_api: 'api/',\r\n login_url: \"index.html#/\", // 'https://inventarios2.technosoftcr.com/', // https://inventariostest2.technosoft.co.cr/ https://inventarios2.technosoftcr.com/\r\n api_url_signalr: 'https://api.technosoftcr.com/inventariosv2/myhub', // https://apixpress.technosoft.co.cr/invetestapi/myhub https://api.technosoftcr.com/inventariosv2/myhub\r\n\r\n app_cod: '010',\r\n httpTimeOut: 500000,\r\n urlDescargas: \"assets/descargas/\",\r\n app_cod_contador_xpress: \"012\",\r\n app_cod_facel: \"013\",\r\n\r\n formatoFecha: \"DD/MM/yyyy\",\r\n formatoFechaHora: \"DD/MM/yyyy hh:mma\",\r\n formatoFechaInput: \"dd/MM/yyyy\",\r\n\r\n blocked_msg_free_plan1: \"Para tener acceso a esta sección/acción debe actualizar su plan gratuito\",\r\n blocked_msg_role1: \"El rol del usuario actual no tiene permitido el acceso a esta sección/acción\",\r\n\r\n statusCodeExpiredToken: 401, // 401 por el momento, la idea es en algún momento configurar otro que pueda detectarse correctamente\r\n\r\n vencimiento_plan_dia_mostrar_alerta_inicial: 7,\r\n vencimiento_plan_dia_gracia: -7,\r\n cobros_info_telefono: \"2105-8095\",\r\n cobros_info_email: \"cobros@facelcr.com\"\r\n\r\n\r\n}","\r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n Hubo un problema\r\n \r\n Intente nuevamente\r\n \r\n \r\n Volver al Inicio \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n","import { render } from \"./LostConnection.vue?vue&type=template&id=a1f0c930\"\nimport script from \"./LostConnection.vue?vue&type=script&lang=js\"\nexport * from \"./LostConnection.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"A:\\\\DESARROLLO\\\\Documents\\\\Inventarios 2.0\\\\Technosoft.Inventarios.v2\\\\Technosoft.Inventarios.v2.UI.Web\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","connector","connectorr","apiControllerConnector","getOne","parametros","Get","GetOneConfiguracionMantenimiento","postDefault","postAdd","data","Post","UpdateConfiguracionMantenimiento","GetInputFocusNuevoMovimiento","GetServidorCorreoActivo","GetIntegrations","getCompannia","GetListMonedas","GetMonedaById","getListPaises","getListProvincias","getListCantones","getListDistritos","getListBarrios","postCompanniEdit","postCompanniAdd","getTiposPersona","getUsuarios","getUsuariosCia","postInviteUser","PostForm","postEditUser","getDeleteUsuario","getAssignUsuario","getUnassignUsuario","postSaveProfile","GetReportePagoBancos","GetReportesPagoPaginated","PostReportePago","GetReportePago","DeleteReportePago","GetTiquetes","PostTiquete","GetPlanIdFromToken","url","config","pathAPI","returnResult","url2","parametrosUrl","token","withCredentials","apiClient","axios","baseURL","async","Data","result","post","timeout","headers","then","value","catch","error","ok","obj","response","error_description","msg","message","length","Controller","Metodo","Parametros","timeOut","localStorage","getItem","this","GenerarParametrosConObjeto","get","toUpperCase","includes","console","log","window","location","str","p","valor","prototype","hasOwnProperty","call","Date","toISOString","push","encodeURIComponent","join","Token","connectorCloud","CuentasUsuarioLogin","ListadoNotificacionesActivas","postTokenOLD","postUserAccountsOLD","postConfirm","postRemember","getNotifications","fechaI","fechaF","getNotificationsActive","postAcceptInviteExistingUser","postAcceptInviteUser","getCompannias","getSetCiaFavorite","ciaId","getCiaFavorite","getCompanniasUnasigned","getCompanniaAsignApp","cia_id","getCompanniaUnasignApp","GetCompanniasApp","appCod","Connector","constructor","urlP","apiP","customErrorCode","ValidateContextResultCustomErrorMessage","responseType","status","ValidateContextResultCustomErrorMessageArrayBuffer","ObjectConvertDatesToISOString","year","getFullYear","month","getMonth","toString","padStart","day","getDate","hours","getHours","minutes","getMinutes","seconds","getSeconds","objeto","CerrarSesion","replace","resultMsg","mensaje","TextDecoder","decode","removeItem","href","defaultLengthDB","defaultDecimal","defaultDecimalFormat","Filters","app","globalProperties","$filters","dateFormat","moment","format","dateTimeFormat","numberFormat","decimal","num","varPadeada","numeral","numberFormatDecimalInput","parseFloat","OnlyDecimals","evt","decimales","cantidadTotalDecimalEnBase","maxLength","noNegativo","key","which","keyCode","chark","String","fromCharCode","OnlyDecimalsValidRegex","OnlyDecimalsPaste","textoIngresado","clipboardData","getData","input","target","textoActual","selectionStart","i","selectionEnd","charAt","cantidadNumeroRegex","regex","RegExp","test","preventDefault","OnlyNumbers","OnlyNumbersValidRegex","OnlyNumbersPaste","OnlyNumbersAndLetters","OnlyNumbersAndLettersValidRegex","OnlyNumbersAndLettersPaste","VerifyHeightTextArea","setTimeout","textAreas","document","querySelectorAll","forEach","style","height","scrollHeight","DownloadBase64File","base64","extension","nombre","mediaType","linkSource","downloadLink","navigator","userAgent","indexOf","fileName","createElement","download","click","b64toBlob","require","blob","blobUrl","URL","createObjectURL","fetch","res","arrayBuffer","file","Blob","type","fileURL","link","remove","DownloadBlobFile","a","createEvent","initMouseEvent","dispatchEvent","body","appendChild","myBlob","msSaveOrOpenBlob","blobURL","ValidateValidEmail","correo","ValidateActionAccess","allowedRoles","blockFreePlan","permission","returnBool","allowed","blockedByRole","blockedByFreePlan","blockedByPermission","roles","role","split","some","allowedRole","planId","blockedByFreePlanOnly","devuelveObjeto","JSON","stringify","FillWith0","cantidad","texto","isNaN","slice","LoadingPluginCustom","UseLoadingCustom","loadingBaborsh","loading","useLoading","show","hide","instance","$loading","provide","NotificacionesCustom","UseNotifyCustom","Notificacion","tipoId","msg2","titulo","secP","tipo","sec","notify","title","text","duration","group","NotificacionRedirect","redirect","$notify","api_url_cloud","api_url","api_url_reportes","api_url_reportes_api","login_url","api_url_signalr","app_cod","httpTimeOut","urlDescargas","app_cod_contador_xpress","app_cod_facel","formatoFecha","formatoFechaHora","formatoFechaInput","blocked_msg_free_plan1","blocked_msg_role1","statusCodeExpiredToken","vencimiento_plan_dia_mostrar_alerta_inicial","vencimiento_plan_dia_gracia","cobros_info_telefono","cobros_info_email","class","_createElementVNode","src","_imports_0","_createElementBlock","_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_createVNode","_component_router_link","to","mounted","__exports__","render"],"sourceRoot":""}