visorus-erp-core 1.0.8 → 9.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/visorus-erp-core.umd.js +2218 -4129
- package/bundles/visorus-erp-core.umd.js.map +1 -1
- package/bundles/visorus-erp-core.umd.min.js +2 -2
- package/bundles/visorus-erp-core.umd.min.js.map +1 -1
- package/esm2015/lib/app.module.js +70 -13
- package/esm2015/lib/components/acreedor/select/select-acreedor.component.js +187 -82
- package/esm2015/lib/components/acreedor/services/acreedor.service.js +8 -24
- package/esm2015/lib/components/acreedor/services/acreedorCuentaContable.js +8 -28
- package/esm2015/lib/components/agente/models/Agente.js +1 -37
- package/esm2015/lib/components/agente/services/agente.service.js +8 -38
- package/esm2015/lib/components/almacen/models/Almacen.js +1 -37
- package/esm2015/lib/components/almacen/services/almacen.service.js +8 -28
- package/esm2015/lib/components/banco/models/Banco.js +1 -25
- package/esm2015/lib/components/banco/services/banco.service.js +8 -17
- package/esm2015/lib/components/caja/session-create/session-create.component.js +127 -73
- package/esm2015/lib/components/caja/sessionCaja.service.js +8 -24
- package/esm2015/lib/components/catalogoTipo/models/CatalogoTipo.js +1 -19
- package/esm2015/lib/components/catalogoTipo/services/catalogoTipo.service.js +8 -17
- package/esm2015/lib/components/clasificadorTipo/models/ClasificadorTipo.js +1 -19
- package/esm2015/lib/components/clasificadorTipo/services/clasificadorTipo.service.js +8 -17
- package/esm2015/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.js +8 -17
- package/esm2015/lib/components/claveMovimiento/models/ClaveMovimiento.js +1 -47
- package/esm2015/lib/components/claveMovimiento/services/claveMovimiento.service.js +8 -17
- package/esm2015/lib/components/cliente/models/Cliente.js +1 -79
- package/esm2015/lib/components/cliente/models/ClienteCuentaBanco.js +1 -21
- package/esm2015/lib/components/cliente/models/ClienteFlete.js +1 -20
- package/esm2015/lib/components/cliente/select/select-cliente.component.js +180 -84
- package/esm2015/lib/components/cliente/services/cliente.service.js +8 -21
- package/esm2015/lib/components/cliente/services/clienteCuentaBanco.service.js +8 -29
- package/esm2015/lib/components/cliente/services/clienteFlete.service.js +8 -29
- package/esm2015/lib/components/contacto/models/DatoContacto.js +1 -17
- package/esm2015/lib/components/contacto/services/datoContacto.service.js +8 -17
- package/esm2015/lib/components/dato-direccion/models/DatoDireccion.js +1 -37
- package/esm2015/lib/components/dato-direccion/services/datoDireccion.service.js +8 -17
- package/esm2015/lib/components/departamento/models/Departamento.js +1 -19
- package/esm2015/lib/components/departamento/services/departamento.service.js +8 -17
- package/esm2015/lib/components/empresa/models/ConfiguracionEmpresaAdministrativa.js +1 -61
- package/esm2015/lib/components/empresa/models/Empresa.js +1 -21
- package/esm2015/lib/components/empresa/services/empresa.service.js +8 -27
- package/esm2015/lib/components/error404/error404.component.js +28 -16
- package/esm2015/lib/components/flete/models/Flete.js +1 -15
- package/esm2015/lib/components/flete/services/flete.service.js +8 -24
- package/esm2015/lib/components/formaPago/models/FormaPago.js +1 -21
- package/esm2015/lib/components/formaPago/services/FormaPago.service.js +8 -17
- package/esm2015/lib/components/loading/loading.component.js +48 -43
- package/esm2015/lib/components/loading/loading.service.js +10 -27
- package/esm2015/lib/components/loading-screen/loading-screen.component.js +33 -75
- package/esm2015/lib/components/loading-screen/loading-screen.service.js +8 -32
- package/esm2015/lib/components/login-modal/login-modal.component.js +131 -80
- package/esm2015/lib/components/login-modal/login-modal.service.js +10 -20
- package/esm2015/lib/components/moneda/models/Moneda.js +1 -27
- package/esm2015/lib/components/moneda/services/moneda.service.js +8 -24
- package/esm2015/lib/components/pdfModal/pdf-modal.component.js +46 -70
- package/esm2015/lib/components/pdfModal/pdf-modal.service.js +12 -32
- package/esm2015/lib/components/persona-fisica/models/EstadoCivil.js +1 -17
- package/esm2015/lib/components/persona-fisica/models/Genero.js +1 -15
- package/esm2015/lib/components/persona-fisica/models/Persona.js +1 -29
- package/esm2015/lib/components/persona-fisica/models/PersonaFisica.js +1 -17
- package/esm2015/lib/components/persona-fisica/services/personaFisica.service.js +8 -30
- package/esm2015/lib/components/proveedor/models/Proveedor.js +1 -39
- package/esm2015/lib/components/proveedor/models/ProveedorCuentaBanco.js +1 -21
- package/esm2015/lib/components/proveedor/models/ProveedorFlete.js +1 -20
- package/esm2015/lib/components/proveedor/select/select-proveedor.component.js +118 -82
- package/esm2015/lib/components/proveedor/services/proveedor.service.js +8 -24
- package/esm2015/lib/components/proveedor/services/proveedorCuentaBanco.service.js +8 -29
- package/esm2015/lib/components/proveedor/services/proveedorFlete.service.js +8 -29
- package/esm2015/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.js +116 -77
- package/esm2015/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.js +8 -29
- package/esm2015/lib/components/selecciona-articulo/selecciona-articulo.component.js +438 -137
- package/esm2015/lib/components/selecciona-articulo/stock.service.js +13 -49
- package/esm2015/lib/components/serieDocumento/models/SerieDocumento.js +1 -55
- package/esm2015/lib/components/serieDocumento/services/serieDocumento.service.js +8 -31
- package/esm2015/lib/components/tipo-contacto/models/TipoContacto.js +1 -15
- package/esm2015/lib/components/tipo-contacto/services/tipoContacto.service.js +8 -17
- package/esm2015/lib/components/ubicacion/models/Ubicacion.js +1 -35
- package/esm2015/lib/components/ubicacion/services/ubicacion.service.js +8 -17
- package/esm2015/lib/contabilidad/componentes/cclista/cclista.component.js +125 -104
- package/esm2015/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.js +47 -58
- package/esm2015/lib/contabilidad/modelos/cuentaContable.model.js +1 -42
- package/esm2015/lib/contabilidad/modelos/normaInfoFinanciera.model.js +1 -18
- package/esm2015/lib/contabilidad/servicios/cuentacontable.service.js +8 -27
- package/esm2015/lib/globalPrimeNg.js +4 -11
- package/esm2015/lib/httpInterceptor/httpInterceptor.js +13 -64
- package/esm2015/lib/importComponents.js +1 -9
- package/esm2015/lib/importComponetsConta.js +1 -6
- package/esm2015/lib/models/PersonaMoral.js +1 -21
- package/esm2015/lib/models/Usuario.js +1 -19
- package/esm2015/lib/models/auth.js +1 -13
- package/esm2015/lib/services/auth.service.js +23 -148
- package/esm2015/lib/services/authenticated.service.js +11 -61
- package/esm2015/lib/services/canActivateGuard.service.ts.js +8 -35
- package/esm2015/lib/services/catalogo-adicional.service.js +8 -24
- package/esm2015/lib/services/controlAcceso.service.js +14 -51
- package/esm2015/lib/services/crud.service.js +3 -71
- package/esm2015/lib/services/file.service.js +16 -83
- package/esm2015/lib/services/global.service.js +3 -65
- package/esm2015/lib/services/init.service.js +18 -70
- package/esm2015/lib/services/message.service.js +8 -40
- package/esm2015/lib/services/paginate.service.js +12 -58
- package/esm2015/lib/services/personaMoral.service.js +8 -17
- package/esm2015/lib/services/versionCheck.service.js +13 -64
- package/esm2015/lib/utils/tipo_catalogo.ts.js +1 -14
- package/esm2015/public_api.js +93 -97
- package/esm2015/visorus-erp-core.js +2 -12
- package/esm5/lib/app.module.js +93 -36
- package/esm5/lib/components/acreedor/select/select-acreedor.component.js +193 -100
- package/esm5/lib/components/acreedor/services/acreedor.service.js +11 -24
- package/esm5/lib/components/acreedor/services/acreedorCuentaContable.js +12 -32
- package/esm5/lib/components/agente/models/Agente.js +1 -37
- package/esm5/lib/components/agente/services/agente.service.js +14 -52
- package/esm5/lib/components/almacen/models/Almacen.js +1 -37
- package/esm5/lib/components/almacen/services/almacen.service.js +12 -32
- package/esm5/lib/components/banco/models/Banco.js +1 -25
- package/esm5/lib/components/banco/services/banco.service.js +11 -17
- package/esm5/lib/components/caja/session-create/session-create.component.js +135 -93
- package/esm5/lib/components/caja/sessionCaja.service.js +11 -24
- package/esm5/lib/components/catalogoTipo/models/CatalogoTipo.js +1 -19
- package/esm5/lib/components/catalogoTipo/services/catalogoTipo.service.js +11 -17
- package/esm5/lib/components/clasificadorTipo/models/ClasificadorTipo.js +1 -19
- package/esm5/lib/components/clasificadorTipo/services/clasificadorTipo.service.js +11 -17
- package/esm5/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.js +11 -17
- package/esm5/lib/components/claveMovimiento/models/ClaveMovimiento.js +1 -47
- package/esm5/lib/components/claveMovimiento/services/claveMovimiento.service.js +11 -17
- package/esm5/lib/components/cliente/models/Cliente.js +1 -79
- package/esm5/lib/components/cliente/models/ClienteCuentaBanco.js +1 -21
- package/esm5/lib/components/cliente/models/ClienteFlete.js +1 -19
- package/esm5/lib/components/cliente/select/select-cliente.component.js +186 -103
- package/esm5/lib/components/cliente/services/cliente.service.js +12 -26
- package/esm5/lib/components/cliente/services/clienteCuentaBanco.service.js +12 -34
- package/esm5/lib/components/cliente/services/clienteFlete.service.js +12 -34
- package/esm5/lib/components/contacto/models/DatoContacto.js +1 -17
- package/esm5/lib/components/contacto/services/datoContacto.service.js +11 -17
- package/esm5/lib/components/dato-direccion/models/DatoDireccion.js +1 -37
- package/esm5/lib/components/dato-direccion/services/datoDireccion.service.js +11 -17
- package/esm5/lib/components/departamento/models/Departamento.js +1 -19
- package/esm5/lib/components/departamento/services/departamento.service.js +11 -17
- package/esm5/lib/components/empresa/models/ConfiguracionEmpresaAdministrativa.js +1 -61
- package/esm5/lib/components/empresa/models/Empresa.js +1 -21
- package/esm5/lib/components/empresa/services/empresa.service.js +12 -31
- package/esm5/lib/components/error404/error404.component.js +30 -21
- package/esm5/lib/components/flete/models/Flete.js +1 -15
- package/esm5/lib/components/flete/services/flete.service.js +11 -24
- package/esm5/lib/components/formaPago/models/FormaPago.js +1 -21
- package/esm5/lib/components/formaPago/services/FormaPago.service.js +11 -17
- package/esm5/lib/components/loading/loading.component.js +49 -41
- package/esm5/lib/components/loading/loading.service.js +14 -41
- package/esm5/lib/components/loading-screen/loading-screen.component.js +36 -78
- package/esm5/lib/components/loading-screen/loading-screen.service.js +13 -43
- package/esm5/lib/components/login-modal/login-modal.component.js +134 -87
- package/esm5/lib/components/login-modal/login-modal.service.js +12 -25
- package/esm5/lib/components/moneda/models/Moneda.js +1 -27
- package/esm5/lib/components/moneda/services/moneda.service.js +11 -24
- package/esm5/lib/components/pdfModal/pdf-modal.component.js +48 -70
- package/esm5/lib/components/pdfModal/pdf-modal.service.js +15 -43
- package/esm5/lib/components/persona-fisica/models/EstadoCivil.js +1 -17
- package/esm5/lib/components/persona-fisica/models/Genero.js +1 -15
- package/esm5/lib/components/persona-fisica/models/Persona.js +1 -29
- package/esm5/lib/components/persona-fisica/models/PersonaFisica.js +1 -17
- package/esm5/lib/components/persona-fisica/services/personaFisica.service.js +13 -38
- package/esm5/lib/components/proveedor/models/Proveedor.js +1 -39
- package/esm5/lib/components/proveedor/models/ProveedorCuentaBanco.js +1 -21
- package/esm5/lib/components/proveedor/models/ProveedorFlete.js +1 -19
- package/esm5/lib/components/proveedor/select/select-proveedor.component.js +124 -100
- package/esm5/lib/components/proveedor/services/proveedor.service.js +11 -24
- package/esm5/lib/components/proveedor/services/proveedorCuentaBanco.service.js +12 -34
- package/esm5/lib/components/proveedor/services/proveedorFlete.service.js +12 -34
- package/esm5/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.js +123 -101
- package/esm5/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.js +12 -34
- package/esm5/lib/components/selecciona-articulo/selecciona-articulo.component.js +450 -183
- package/esm5/lib/components/selecciona-articulo/stock.service.js +17 -55
- package/esm5/lib/components/serieDocumento/models/SerieDocumento.js +1 -55
- package/esm5/lib/components/serieDocumento/services/serieDocumento.service.js +13 -40
- package/esm5/lib/components/tipo-contacto/models/TipoContacto.js +1 -15
- package/esm5/lib/components/tipo-contacto/services/tipoContacto.service.js +11 -17
- package/esm5/lib/components/ubicacion/models/Ubicacion.js +1 -35
- package/esm5/lib/components/ubicacion/services/ubicacion.service.js +11 -17
- package/esm5/lib/contabilidad/componentes/cclista/cclista.component.js +139 -143
- package/esm5/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.js +51 -73
- package/esm5/lib/contabilidad/modelos/cuentaContable.model.js +1 -42
- package/esm5/lib/contabilidad/modelos/normaInfoFinanciera.model.js +1 -18
- package/esm5/lib/contabilidad/servicios/cuentacontable.service.js +12 -31
- package/esm5/lib/globalPrimeNg.js +4 -11
- package/esm5/lib/httpInterceptor/httpInterceptor.js +16 -76
- package/esm5/lib/importComponents.js +1 -9
- package/esm5/lib/importComponetsConta.js +1 -6
- package/esm5/lib/models/PersonaMoral.js +1 -21
- package/esm5/lib/models/Usuario.js +1 -19
- package/esm5/lib/models/auth.js +1 -13
- package/esm5/lib/services/auth.service.js +38 -207
- package/esm5/lib/services/authenticated.service.js +14 -67
- package/esm5/lib/services/canActivateGuard.service.ts.js +11 -42
- package/esm5/lib/services/catalogo-adicional.service.js +11 -24
- package/esm5/lib/services/controlAcceso.service.js +17 -59
- package/esm5/lib/services/crud.service.js +15 -120
- package/esm5/lib/services/file.service.js +21 -106
- package/esm5/lib/services/global.service.js +15 -114
- package/esm5/lib/services/init.service.js +21 -75
- package/esm5/lib/services/message.service.js +12 -55
- package/esm5/lib/services/paginate.service.js +16 -71
- package/esm5/lib/services/personaMoral.service.js +11 -17
- package/esm5/lib/services/versionCheck.service.js +17 -78
- package/esm5/lib/utils/tipo_catalogo.ts.js +1 -14
- package/esm5/public_api.js +93 -97
- package/esm5/visorus-erp-core.js +2 -12
- package/fesm2015/visorus-erp-core.js +2014 -3598
- package/fesm2015/visorus-erp-core.js.map +1 -1
- package/fesm5/visorus-erp-core.js +2229 -4134
- package/fesm5/visorus-erp-core.js.map +1 -1
- package/lib/app.module.d.ts +50 -0
- package/lib/components/acreedor/select/select-acreedor.component.d.ts +3 -0
- package/lib/components/acreedor/services/acreedor.service.d.ts +3 -0
- package/lib/components/acreedor/services/acreedorCuentaContable.d.ts +3 -0
- package/lib/components/agente/services/agente.service.d.ts +3 -0
- package/lib/components/almacen/services/almacen.service.d.ts +3 -0
- package/lib/components/banco/services/banco.service.d.ts +3 -0
- package/lib/components/caja/session-create/session-create.component.d.ts +3 -0
- package/lib/components/caja/sessionCaja.service.d.ts +3 -0
- package/lib/components/catalogoTipo/services/catalogoTipo.service.d.ts +3 -0
- package/lib/components/clasificadorTipo/services/clasificadorTipo.service.d.ts +3 -0
- package/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.d.ts +3 -0
- package/lib/components/claveMovimiento/services/claveMovimiento.service.d.ts +3 -0
- package/lib/components/cliente/select/select-cliente.component.d.ts +3 -0
- package/lib/components/cliente/services/cliente.service.d.ts +3 -0
- package/lib/components/cliente/services/clienteCuentaBanco.service.d.ts +3 -0
- package/lib/components/cliente/services/clienteFlete.service.d.ts +3 -0
- package/lib/components/contacto/services/datoContacto.service.d.ts +3 -0
- package/lib/components/dato-direccion/services/datoDireccion.service.d.ts +3 -0
- package/lib/components/departamento/services/departamento.service.d.ts +3 -0
- package/lib/components/empresa/services/empresa.service.d.ts +3 -0
- package/lib/components/error404/error404.component.d.ts +3 -0
- package/lib/components/flete/services/flete.service.d.ts +3 -0
- package/lib/components/formaPago/services/FormaPago.service.d.ts +3 -0
- package/lib/components/loading/loading.component.d.ts +3 -0
- package/lib/components/loading/loading.service.d.ts +3 -0
- package/lib/components/loading-screen/loading-screen.component.d.ts +3 -0
- package/lib/components/loading-screen/loading-screen.service.d.ts +5 -1
- package/lib/components/login-modal/login-modal.component.d.ts +3 -0
- package/lib/components/login-modal/login-modal.service.d.ts +3 -0
- package/lib/components/moneda/services/moneda.service.d.ts +3 -0
- package/lib/components/pdfModal/pdf-modal.component.d.ts +4 -1
- package/lib/components/pdfModal/pdf-modal.service.d.ts +3 -0
- package/lib/components/persona-fisica/services/personaFisica.service.d.ts +3 -0
- package/lib/components/proveedor/select/select-proveedor.component.d.ts +3 -0
- package/lib/components/proveedor/services/proveedor.service.d.ts +3 -0
- package/lib/components/proveedor/services/proveedorCuentaBanco.service.d.ts +3 -0
- package/lib/components/proveedor/services/proveedorFlete.service.d.ts +3 -0
- package/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.d.ts +4 -1
- package/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.d.ts +3 -0
- package/lib/components/selecciona-articulo/selecciona-articulo.component.d.ts +4 -0
- package/lib/components/selecciona-articulo/stock.service.d.ts +3 -0
- package/lib/components/serieDocumento/services/serieDocumento.service.d.ts +3 -0
- package/lib/components/tipo-contacto/services/tipoContacto.service.d.ts +3 -0
- package/lib/components/ubicacion/services/ubicacion.service.d.ts +3 -0
- package/lib/contabilidad/componentes/cclista/cclista.component.d.ts +3 -0
- package/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.d.ts +3 -0
- package/lib/contabilidad/servicios/cuentacontable.service.d.ts +3 -0
- package/lib/globalPrimeNg.d.ts +2 -2
- package/lib/httpInterceptor/httpInterceptor.d.ts +3 -0
- package/lib/importComponents.d.ts +2 -2
- package/lib/services/auth.service.d.ts +3 -0
- package/lib/services/authenticated.service.d.ts +3 -0
- package/lib/services/canActivateGuard.service.ts.d.ts +3 -0
- package/lib/services/catalogo-adicional.service.d.ts +3 -0
- package/lib/services/controlAcceso.service.d.ts +3 -0
- package/lib/services/file.service.d.ts +3 -0
- package/lib/services/init.service.d.ts +3 -0
- package/lib/services/message.service.d.ts +3 -0
- package/lib/services/paginate.service.d.ts +3 -0
- package/lib/services/personaMoral.service.d.ts +3 -0
- package/lib/services/versionCheck.service.d.ts +3 -0
- package/package.json +12 -8
- package/visorus-erp-core.d.ts +1 -6
- package/visorus-erp-core.metadata.json +0 -1
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import { Injectable, Output, EventEmitter } from "@angular/core";
|
|
6
2
|
import { HttpClient, HttpHeaders } from "@angular/common/http";
|
|
7
3
|
import { Usuario } from '../models/Usuario';
|
|
@@ -19,82 +15,37 @@ var AuthService = /** @class */ (function () {
|
|
|
19
15
|
this.seleccionEmpresa = new EventEmitter();
|
|
20
16
|
this.auth = new Auth();
|
|
21
17
|
}
|
|
22
|
-
|
|
23
|
-
* @param {?} user
|
|
24
|
-
* @param {?} key
|
|
25
|
-
* @return {?}
|
|
26
|
-
*/
|
|
27
|
-
AuthService.prototype.setlogin = /**
|
|
28
|
-
* @param {?} user
|
|
29
|
-
* @param {?} key
|
|
30
|
-
* @return {?}
|
|
31
|
-
*/
|
|
32
|
-
function (user, key) {
|
|
18
|
+
AuthService.prototype.setlogin = function (user, key) {
|
|
33
19
|
localStorage.setItem('lang', 'es');
|
|
34
|
-
/** @type {?} */
|
|
35
20
|
var config = JSON.parse(localStorage.getItem("config"));
|
|
36
21
|
if (config)
|
|
37
22
|
if (config.url)
|
|
38
23
|
this.url_host = config.url;
|
|
39
24
|
return this.httpClient.post(this.url_host + '/login' + (key ? '/' + key : ''), user);
|
|
40
25
|
};
|
|
41
|
-
|
|
42
|
-
* @param {?} user
|
|
43
|
-
* @return {?}
|
|
44
|
-
*/
|
|
45
|
-
AuthService.prototype.startAuth = /**
|
|
46
|
-
* @param {?} user
|
|
47
|
-
* @return {?}
|
|
48
|
-
*/
|
|
49
|
-
function (user) {
|
|
26
|
+
AuthService.prototype.startAuth = function (user) {
|
|
50
27
|
this.auth = user;
|
|
51
28
|
this.login.emit(this.auth);
|
|
52
29
|
};
|
|
53
|
-
|
|
54
|
-
* @return {?}
|
|
55
|
-
*/
|
|
56
|
-
AuthService.prototype.isLogin = /**
|
|
57
|
-
* @return {?}
|
|
58
|
-
*/
|
|
59
|
-
function () {
|
|
30
|
+
AuthService.prototype.isLogin = function () {
|
|
60
31
|
return localStorage.getItem('usuario') !== null;
|
|
61
32
|
};
|
|
62
|
-
|
|
63
|
-
* @return {?}
|
|
64
|
-
*/
|
|
65
|
-
AuthService.prototype.quitarUsuario = /**
|
|
66
|
-
* @return {?}
|
|
67
|
-
*/
|
|
68
|
-
function () {
|
|
33
|
+
AuthService.prototype.quitarUsuario = function () {
|
|
69
34
|
localStorage.removeItem('usuario');
|
|
70
35
|
this.auth.login = false;
|
|
71
36
|
this.login.emit(this.auth);
|
|
72
37
|
};
|
|
73
|
-
|
|
74
|
-
* @return {?}
|
|
75
|
-
*/
|
|
76
|
-
AuthService.prototype.verificaLogin = /**
|
|
77
|
-
* @return {?}
|
|
78
|
-
*/
|
|
79
|
-
function () {
|
|
38
|
+
AuthService.prototype.verificaLogin = function () {
|
|
80
39
|
var _this = this;
|
|
81
40
|
this.usuario = this.getUser();
|
|
82
41
|
if (this.usuario.access_token) {
|
|
83
|
-
this.getDetalsUser().subscribe((
|
|
84
|
-
* @param {?} resp
|
|
85
|
-
* @return {?}
|
|
86
|
-
*/
|
|
87
|
-
function (resp) {
|
|
42
|
+
this.getDetalsUser().subscribe(function (resp) {
|
|
88
43
|
_this.auth.usuarioDetalles = resp;
|
|
89
44
|
_this.auth.login = true;
|
|
90
45
|
_this.login.emit(_this.auth);
|
|
91
|
-
}
|
|
92
|
-
* @param {?} error
|
|
93
|
-
* @return {?}
|
|
94
|
-
*/
|
|
95
|
-
function (error) {
|
|
46
|
+
}, function (error) {
|
|
96
47
|
_this.quitarUsuario();
|
|
97
|
-
})
|
|
48
|
+
});
|
|
98
49
|
}
|
|
99
50
|
else {
|
|
100
51
|
this.auth.usuarioDetalles = null;
|
|
@@ -102,40 +53,19 @@ var AuthService = /** @class */ (function () {
|
|
|
102
53
|
this.login.emit(this.auth);
|
|
103
54
|
}
|
|
104
55
|
};
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
*/
|
|
108
|
-
AuthService.prototype.loginOut = /**
|
|
109
|
-
* @return {?}
|
|
110
|
-
*/
|
|
111
|
-
function () {
|
|
112
|
-
this.quitarEmpresaAdministrativa().subscribe((/**
|
|
113
|
-
* @param {?} data
|
|
114
|
-
* @return {?}
|
|
115
|
-
*/
|
|
116
|
-
function (data) {
|
|
56
|
+
AuthService.prototype.loginOut = function () {
|
|
57
|
+
this.quitarEmpresaAdministrativa().subscribe(function (data) {
|
|
117
58
|
localStorage.removeItem('usuario');
|
|
118
|
-
}
|
|
119
|
-
* @param {?} error
|
|
120
|
-
* @return {?}
|
|
121
|
-
*/
|
|
122
|
-
function (error) {
|
|
59
|
+
}, function (error) {
|
|
123
60
|
localStorage.removeItem('usuario');
|
|
124
|
-
})
|
|
61
|
+
});
|
|
125
62
|
localStorage.setItem('lang', 'es');
|
|
126
63
|
this.auth.login = false;
|
|
127
64
|
this.login.emit(this.auth);
|
|
128
65
|
};
|
|
129
|
-
|
|
130
|
-
* @return {?}
|
|
131
|
-
*/
|
|
132
|
-
AuthService.prototype.getUser = /**
|
|
133
|
-
* @return {?}
|
|
134
|
-
*/
|
|
135
|
-
function () {
|
|
66
|
+
AuthService.prototype.getUser = function () {
|
|
136
67
|
this.usuario = new Usuario();
|
|
137
68
|
if (this.isLogin()) {
|
|
138
|
-
/** @type {?} */
|
|
139
69
|
var us = localStorage.getItem('usuario');
|
|
140
70
|
if (us) {
|
|
141
71
|
this.usuario = JSON.parse(us);
|
|
@@ -146,233 +76,134 @@ var AuthService = /** @class */ (function () {
|
|
|
146
76
|
return this.usuario;
|
|
147
77
|
}
|
|
148
78
|
};
|
|
149
|
-
|
|
150
|
-
* @return {?}
|
|
151
|
-
*/
|
|
152
|
-
AuthService.prototype.getLang = /**
|
|
153
|
-
* @return {?}
|
|
154
|
-
*/
|
|
155
|
-
function () {
|
|
156
|
-
/** @type {?} */
|
|
79
|
+
AuthService.prototype.getLang = function () {
|
|
157
80
|
var lang = localStorage.getItem('lang');
|
|
158
81
|
return lang ? lang : 'es';
|
|
159
82
|
};
|
|
160
|
-
|
|
161
|
-
* @param {?} e
|
|
162
|
-
* @return {?}
|
|
163
|
-
*/
|
|
164
|
-
AuthService.prototype.selectEmpresa = /**
|
|
165
|
-
* @param {?} e
|
|
166
|
-
* @return {?}
|
|
167
|
-
*/
|
|
168
|
-
function (e) {
|
|
83
|
+
AuthService.prototype.selectEmpresa = function (e) {
|
|
169
84
|
this.seleccionEmpresa.emit(e);
|
|
170
85
|
};
|
|
171
|
-
|
|
172
|
-
* @return {?}
|
|
173
|
-
*/
|
|
174
|
-
AuthService.prototype.quitarEmpresaAdministrativa = /**
|
|
175
|
-
* @return {?}
|
|
176
|
-
*/
|
|
177
|
-
function () {
|
|
178
|
-
/** @type {?} */
|
|
86
|
+
AuthService.prototype.quitarEmpresaAdministrativa = function () {
|
|
179
87
|
var usuario;
|
|
180
|
-
/** @type {?} */
|
|
181
88
|
var token_type = '';
|
|
182
|
-
/** @type {?} */
|
|
183
89
|
var access_token = '';
|
|
184
|
-
usuario =
|
|
90
|
+
usuario = JSON.parse(localStorage.getItem("usuario"));
|
|
185
91
|
if (usuario) {
|
|
186
92
|
token_type = usuario.token_type,
|
|
187
93
|
access_token = usuario.access_token;
|
|
188
94
|
}
|
|
189
|
-
/** @type {?} */
|
|
190
95
|
var httpOptions = {
|
|
191
96
|
headers: new HttpHeaders({
|
|
192
97
|
'Accept-type': 'application/json',
|
|
193
98
|
'Authorization': token_type + ' ' + access_token
|
|
194
99
|
})
|
|
195
100
|
};
|
|
196
|
-
/** @type {?} */
|
|
197
101
|
var config = JSON.parse(localStorage.getItem("config"));
|
|
198
102
|
if (config)
|
|
199
103
|
if (config.url)
|
|
200
104
|
this.url_host = config.url;
|
|
201
105
|
return this.httpClient.post(this.url_host + '/usuario/setEmpresa', { id: 0 }, httpOptions);
|
|
202
106
|
};
|
|
203
|
-
|
|
204
|
-
* @param {?} empresa
|
|
205
|
-
* @return {?}
|
|
206
|
-
*/
|
|
207
|
-
AuthService.prototype.setEmpresa = /**
|
|
208
|
-
* @param {?} empresa
|
|
209
|
-
* @return {?}
|
|
210
|
-
*/
|
|
211
|
-
function (empresa) {
|
|
107
|
+
AuthService.prototype.setEmpresa = function (empresa) {
|
|
212
108
|
// setEmpresaAdministrativa
|
|
213
|
-
/** @type {?} */
|
|
214
109
|
var usuario;
|
|
215
|
-
/** @type {?} */
|
|
216
110
|
var token_type = '';
|
|
217
|
-
/** @type {?} */
|
|
218
111
|
var access_token = '';
|
|
219
|
-
usuario =
|
|
112
|
+
usuario = JSON.parse(localStorage.getItem("usuario"));
|
|
220
113
|
if (usuario) {
|
|
221
114
|
token_type = usuario.token_type,
|
|
222
115
|
access_token = usuario.access_token;
|
|
223
116
|
}
|
|
224
|
-
/** @type {?} */
|
|
225
117
|
var httpOptions = {
|
|
226
118
|
headers: new HttpHeaders({
|
|
227
119
|
'Accept-type': 'application/json',
|
|
228
120
|
'Authorization': token_type + ' ' + access_token
|
|
229
121
|
})
|
|
230
122
|
};
|
|
231
|
-
/** @type {?} */
|
|
232
123
|
var config = JSON.parse(localStorage.getItem("config"));
|
|
233
124
|
if (config)
|
|
234
125
|
if (config.url)
|
|
235
126
|
this.url_host = config.url;
|
|
236
127
|
return this.httpClient.post(this.url_host + '/usuario/setEmpresa', empresa, httpOptions);
|
|
237
128
|
};
|
|
238
|
-
|
|
239
|
-
* @param {?} modulo
|
|
240
|
-
* @return {?}
|
|
241
|
-
*/
|
|
242
|
-
AuthService.prototype.setModulo = /**
|
|
243
|
-
* @param {?} modulo
|
|
244
|
-
* @return {?}
|
|
245
|
-
*/
|
|
246
|
-
function (modulo) {
|
|
129
|
+
AuthService.prototype.setModulo = function (modulo) {
|
|
247
130
|
// setEmpresaAdministrativa
|
|
248
|
-
/** @type {?} */
|
|
249
131
|
var usuario;
|
|
250
|
-
/** @type {?} */
|
|
251
132
|
var token_type = '';
|
|
252
|
-
/** @type {?} */
|
|
253
133
|
var access_token = '';
|
|
254
|
-
usuario =
|
|
134
|
+
usuario = JSON.parse(localStorage.getItem("usuario"));
|
|
255
135
|
if (usuario) {
|
|
256
136
|
token_type = usuario.token_type,
|
|
257
137
|
access_token = usuario.access_token;
|
|
258
138
|
}
|
|
259
|
-
/** @type {?} */
|
|
260
139
|
var httpOptions = {
|
|
261
140
|
headers: new HttpHeaders({
|
|
262
141
|
'Accept-type': 'application/json',
|
|
263
142
|
'Authorization': token_type + ' ' + access_token
|
|
264
143
|
})
|
|
265
144
|
};
|
|
266
|
-
/** @type {?} */
|
|
267
145
|
var config = JSON.parse(localStorage.getItem("config"));
|
|
268
146
|
if (config)
|
|
269
147
|
if (config.url)
|
|
270
148
|
this.url_host = config.url;
|
|
271
149
|
return this.httpClient.post(this.url_host + '/usuario/setModulo', modulo, httpOptions);
|
|
272
150
|
};
|
|
273
|
-
|
|
274
|
-
* @return {?}
|
|
275
|
-
*/
|
|
276
|
-
AuthService.prototype.quitarModulo = /**
|
|
277
|
-
* @return {?}
|
|
278
|
-
*/
|
|
279
|
-
function () {
|
|
151
|
+
AuthService.prototype.quitarModulo = function () {
|
|
280
152
|
// setEmpresaAdministrativa
|
|
281
|
-
/** @type {?} */
|
|
282
153
|
var usuario;
|
|
283
|
-
/** @type {?} */
|
|
284
154
|
var token_type = '';
|
|
285
|
-
/** @type {?} */
|
|
286
155
|
var access_token = '';
|
|
287
|
-
usuario =
|
|
156
|
+
usuario = JSON.parse(localStorage.getItem("usuario"));
|
|
288
157
|
if (usuario) {
|
|
289
158
|
token_type = usuario.token_type,
|
|
290
159
|
access_token = usuario.access_token;
|
|
291
160
|
}
|
|
292
|
-
/** @type {?} */
|
|
293
161
|
var httpOptions = {
|
|
294
162
|
headers: new HttpHeaders({
|
|
295
163
|
'Accept-type': 'application/json',
|
|
296
164
|
'Authorization': token_type + ' ' + access_token
|
|
297
165
|
})
|
|
298
166
|
};
|
|
299
|
-
/** @type {?} */
|
|
300
167
|
var config = JSON.parse(localStorage.getItem("config"));
|
|
301
168
|
if (config)
|
|
302
169
|
if (config.url)
|
|
303
170
|
this.url_host = config.url;
|
|
304
171
|
return this.httpClient.post(this.url_host + '/usuario/setModulo', { id: 0 }, httpOptions);
|
|
305
172
|
};
|
|
306
|
-
|
|
307
|
-
* @return {?}
|
|
308
|
-
*/
|
|
309
|
-
AuthService.prototype.getDetalsUser = /**
|
|
310
|
-
* @return {?}
|
|
311
|
-
*/
|
|
312
|
-
function () {
|
|
313
|
-
/** @type {?} */
|
|
173
|
+
AuthService.prototype.getDetalsUser = function () {
|
|
314
174
|
var usuario;
|
|
315
|
-
/** @type {?} */
|
|
316
175
|
var token_type = '';
|
|
317
|
-
/** @type {?} */
|
|
318
176
|
var access_token = '';
|
|
319
|
-
usuario =
|
|
177
|
+
usuario = JSON.parse(localStorage.getItem("usuario"));
|
|
320
178
|
if (usuario) {
|
|
321
179
|
token_type = usuario.token_type,
|
|
322
180
|
access_token = usuario.access_token;
|
|
323
181
|
}
|
|
324
|
-
/** @type {?} */
|
|
325
182
|
var httpOptions = {
|
|
326
183
|
headers: new HttpHeaders({
|
|
327
184
|
'Accept-type': 'application/json',
|
|
328
185
|
'Authorization': token_type + ' ' + access_token
|
|
329
186
|
})
|
|
330
187
|
};
|
|
331
|
-
/** @type {?} */
|
|
332
188
|
var config = JSON.parse(localStorage.getItem("config"));
|
|
333
189
|
if (config)
|
|
334
190
|
if (config.url)
|
|
335
191
|
this.url_host = config.url;
|
|
336
192
|
return this.httpClient.get(this.url_host + '/usuario/obtieneUsuarioActual', httpOptions);
|
|
337
193
|
};
|
|
338
|
-
AuthService
|
|
339
|
-
|
|
340
|
-
providedIn: 'root'
|
|
341
|
-
},] }
|
|
342
|
-
];
|
|
343
|
-
/** @nocollapse */
|
|
344
|
-
AuthService.ctorParameters = function () { return [
|
|
345
|
-
{ type: HttpClient },
|
|
346
|
-
{ type: LoadingService }
|
|
347
|
-
]; };
|
|
348
|
-
AuthService.propDecorators = {
|
|
349
|
-
login: [{ type: Output }],
|
|
350
|
-
seleccionEmpresa: [{ type: Output }]
|
|
351
|
-
};
|
|
352
|
-
/** @nocollapse */ AuthService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function AuthService_Factory() { return new AuthService(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.LoadingService)); }, token: AuthService, providedIn: "root" });
|
|
194
|
+
/** @nocollapse */ AuthService.ɵfac = function AuthService_Factory(t) { return new (t || AuthService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.LoadingService)); };
|
|
195
|
+
/** @nocollapse */ AuthService.ɵprov = i0.ɵɵdefineInjectable({ token: AuthService, factory: AuthService.ɵfac, providedIn: 'root' });
|
|
353
196
|
return AuthService;
|
|
354
197
|
}());
|
|
355
198
|
export { AuthService };
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
AuthService.prototype.seleccionEmpresa;
|
|
367
|
-
/**
|
|
368
|
-
* @type {?}
|
|
369
|
-
* @private
|
|
370
|
-
*/
|
|
371
|
-
AuthService.prototype.httpClient;
|
|
372
|
-
/**
|
|
373
|
-
* @type {?}
|
|
374
|
-
* @private
|
|
375
|
-
*/
|
|
376
|
-
AuthService.prototype.loadingService;
|
|
377
|
-
}
|
|
378
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmlzb3J1cy1lcnAtY29yZS8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7O0FBRXZFO0lBU0kscUJBQ1ksVUFBc0IsRUFDdEIsY0FBOEI7UUFEOUIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUN0QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFOMUMsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUVKLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNCLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFLNUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7Ozs7OztJQUVELDhCQUFROzs7OztJQUFSLFVBQVMsSUFBSSxFQUFFLEdBQUc7UUFDZCxZQUFZLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQzs7WUFDL0IsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN2RCxJQUFJLE1BQU07WUFDTixJQUFJLE1BQU0sQ0FBQyxHQUFHO2dCQUNWLElBQUksQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUNuQyxPQUFP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QUM3RixDQUFDOztnQkFsTkosVUFBVSxTQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7OztnQkFQUSxVQUFVO2dCQUdWLGNBQWM7Ozt3QkFTbEIsTUFBTTttQ0FDTixNQUFNOzs7c0JBZFg7Q0F5TkMsQUFuTkQsSUFtTkM7U0FoTlksV0FBVzs7O0lBQ3BCLDhCQUFpQjs7SUFDakIsK0JBQWM7O0lBQ2QsMkJBQVc7O0lBQ1gsNEJBQXFDOztJQUNyQyx1Q0FBZ0Q7Ozs7O0lBRTVDLGlDQUE4Qjs7Ozs7SUFDOUIscUNBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uL2h0dHBcIjtcbmltcG9ydCB7IFVzdWFyaW8gfSBmcm9tICcuLi9tb2RlbHMvVXN1YXJpbyc7XG5pbXBvcnQgeyBBdXRoIH0gZnJvbSAnLi4vbW9kZWxzL2F1dGgnO1xuaW1wb3J0IHsgTG9hZGluZ1NlcnZpY2UgfSBmcm9tICcuLi9jb21wb25lbnRzL2xvYWRpbmcvbG9hZGluZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBdXRoU2VydmljZSB7XG4gICAgdXN1YXJpbzogVXN1YXJpbztcbiAgICB1cmxfaG9zdCA9ICcnO1xuICAgIGF1dGg6IEF1dGg7XG4gICAgQE91dHB1dCgpIGxvZ2luID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIEBPdXRwdXQoKSBzZWxlY2Npb25FbXByZXNhID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgbG9hZGluZ1NlcnZpY2U6IExvYWRpbmdTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHRoaXMuYXV0aCA9IG5ldyBBdXRoKCk7XG4gICAgfVxuXG4gICAgc2V0bG9naW4odXNlciwga2V5KSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdsYW5nJywgJ2VzJyk7XG4gICAgICAgIGxldCBjb25maWcgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiY29uZmlnXCIpKTtcbiAgICAgICAgaWYgKGNvbmZpZylcbiAgICAgICAgICAgIGlmIChjb25maWcudXJsKVxuICAgICAgICAgICAgICAgIHRoaXMudXJsX2hvc3QgPSBjb25maWcudXJsO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodGhpcy51cmxfaG9zdCArICcvbG9naW4nICsgKGtleSA/ICcvJyArIGtleSA6ICcnKSwgdXNlcik7XG4gICAgfVxuICAgIHN0YXJ0QXV0aCh1c2VyKSB7XG4gICAgICAgIHRoaXMuYXV0aCA9IHVzZXI7XG4gICAgICAgIHRoaXMubG9naW4uZW1pdCh0aGlzLmF1dGgpO1xuICAgIH1cbiAgICBpc0xvZ2luKCkge1xuICAgICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzdWFyaW8nKSAhPT0gbnVsbDtcbiAgICB9XG5cbiAgICBxdWl0YXJVc3VhcmlvKCkge1xuICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgndXN1YXJpbycpO1xuICAgICAgICB0aGlzLmF1dGgubG9naW4gPSBmYWxzZTtcbiAgICAgICAgdGhpcy5sb2dpbi5lbWl0KHRoaXMuYXV0aCk7XG4gICAgfVxuXG5cbiAgICB2ZXJpZmljYUxvZ2luKCkge1xuICAgICAgICB0aGlzLnVzdWFyaW8gPSB0aGlzLmdldFVzZXIoKTtcbiAgICAgICAgaWYgKHRoaXMudXN1YXJpby5hY2Nlc3NfdG9rZW4pIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0RGV0YWxzVXNlcigpLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgICAocmVzcDogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYXV0aC51c3VhcmlvRGV0YWxsZXMgPSByZXNwO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGgubG9naW4gPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZ2luLmVtaXQodGhpcy5hdXRoKTtcbiAgICAgICAgICAgICAgICB9LCAoZXJyb3I6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnF1aXRhclVzdWFyaW8oKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hdXRoLnVzdWFyaW9EZXRhbGxlcyA9IG51bGw7XG4gICAgICAgICAgICB0aGlzLmF1dGgubG9naW4gPSBmYWxzZTtcbiAgICAgICAgICAgIHRoaXMubG9naW4uZW1pdCh0aGlzLmF1dGgpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICBsb2dpbk91dCgpIHtcblxuICAgICAgICB0aGlzLnF1aXRhckVtcHJlc2FBZG1pbmlzdHJhdGl2YSgpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgndXN1YXJpbycpO1xuICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCd1c3VhcmlvJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICk7XG5cbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ2xhbmcnLCAnZXMnKTtcbiAgICAgICAgdGhpcy5hdXRoLmxvZ2luID0gZmFsc2U7XG4gICAgICAgIHRoaXMubG9naW4uZW1pdCh0aGlzLmF1dGgpO1xuICAgIH1cblxuICAgIGdldFVzZXIoKSB7XG4gICAgICAgIHRoaXMudXN1YXJpbyA9IG5ldyBVc3VhcmlvKCk7XG4gICAgICAgIGlmICh0aGlzLmlzTG9naW4oKSkge1xuICAgICAgICAgICAgbGV0IHVzID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzdWFyaW8nKTtcbiAgICAgICAgICAgIGlmICh1cykge1xuICAgICAgICAgICAgICAgIHRoaXMudXN1YXJpbyA9IEpTT04ucGFyc2UodXMpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy51c3VhcmlvO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMudXN1YXJpbztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldExhbmcoKSB7XG4gICAgICAgIGxldCBsYW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmcnKTtcbiAgICAgICAgcmV0dXJuIGxhbmcgPyBsYW5nIDogJ2VzJztcbiAgICB9XG5cbiAgICBzZWxlY3RFbXByZXNhKGUpIHtcbiAgICAgICAgdGhpcy5zZWxlY2Npb25FbXByZXNhLmVtaXQoZSk7XG4gICAgfVxuXG4gICAgcXVpdGFyRW1wcmVzYUFkbWluaXN0cmF0aXZhKCkge1xuICAgICAgICBsZXQgdXN1YXJpbzogVXN1YXJpbztcbiAgICAgICAgbGV0IHRva2VuX3R5cGUgPSAnJztcbiAgICAgICAgbGV0IGFjY2Vzc190b2tlbiA9ICcnO1xuICAgICAgICB1c3VhcmlvID0gPFVzdWFyaW8+SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzdWFyaW9cIikpO1xuICAgICAgICBpZiAodXN1YXJpbykge1xuICAgICAgICAgICAgdG9rZW5fdHlwZSA9IHVzdWFyaW8udG9rZW5fdHlwZSxcbiAgICAgICAgICAgICAgICBhY2Nlc3NfdG9rZW4gPSB1c3VhcmlvLmFjY2Vzc190b2tlblxuICAgICAgICB9XG4gICAgICAgIGxldCBodHRwT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0FjY2VwdC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdBdXRob3JpemF0aW9uJzogdG9rZW5fdHlwZSArICcgJyArIGFjY2Vzc190b2tlblxuICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IGNvbmZpZyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb25maWdcIikpO1xuICAgICAgICBpZiAoY29uZmlnKVxuICAgICAgICAgICAgaWYgKGNvbmZpZy51cmwpXG4gICAgICAgICAgICAgICAgdGhpcy51cmxfaG9zdCA9IGNvbmZpZy51cmw7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMudXJsX2hvc3QgKyAnL3VzdWFyaW8vc2V0RW1wcmVzYScsIHsgaWQ6IDAgfSwgaHR0cE9wdGlvbnMpO1xuICAgIH1cbiAgICBzZXRFbXByZXNhKGVtcHJlc2EpIHtcbiAgICAgICAgLy8gIHNldEVtcHJlc2FBZG1pbmlzdHJhdGl2YVxuICAgICAgICBsZXQgdXN1YXJpbzogVXN1YXJpbztcbiAgICAgICAgbGV0IHRva2VuX3R5cGUgPSAnJztcbiAgICAgICAgbGV0IGFjY2Vzc190b2tlbiA9ICcnO1xuICAgICAgICB1c3VhcmlvID0gPFVzdWFyaW8+SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzdWFyaW9cIikpO1xuICAgICAgICBpZiAodXN1YXJpbykge1xuICAgICAgICAgICAgdG9rZW5fdHlwZSA9IHVzdWFyaW8udG9rZW5fdHlwZSxcbiAgICAgICAgICAgICAgICBhY2Nlc3NfdG9rZW4gPSB1c3VhcmlvLmFjY2Vzc190b2tlblxuICAgICAgICB9XG4gICAgICAgIGxldCBodHRwT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0FjY2VwdC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdBdXRob3JpemF0aW9uJzogdG9rZW5fdHlwZSArICcgJyArIGFjY2Vzc190b2tlblxuICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IGNvbmZpZyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb25maWdcIikpO1xuICAgICAgICBpZiAoY29uZmlnKVxuICAgICAgICAgICAgaWYgKGNvbmZpZy51cmwpXG4gICAgICAgICAgICAgICAgdGhpcy51cmxfaG9zdCA9IGNvbmZpZy51cmw7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMudXJsX2hvc3QgKyAnL3VzdWFyaW8vc2V0RW1wcmVzYScsIGVtcHJlc2EsIGh0dHBPcHRpb25zKTtcbiAgICB9XG4gICAgc2V0TW9kdWxvKG1vZHVsbykge1xuICAgICAgICAvLyAgc2V0RW1wcmVzYUFkbWluaXN0cmF0aXZhXG4gICAgICAgIGxldCB1c3VhcmlvOiBVc3VhcmlvO1xuICAgICAgICBsZXQgdG9rZW5fdHlwZSA9ICcnO1xuICAgICAgICBsZXQgYWNjZXNzX3Rva2VuID0gJyc7XG4gICAgICAgIHVzdWFyaW8gPSA8VXN1YXJpbz5KU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwidXN1YXJpb1wiKSk7XG4gICAgICAgIGlmICh1c3VhcmlvKSB7XG4gICAgICAgICAgICB0b2tlbl90eXBlID0gdXN1YXJpby50b2tlbl90eXBlLFxuICAgICAgICAgICAgICAgIGFjY2Vzc190b2tlbiA9IHVzdWFyaW8uYWNjZXNzX3Rva2VuXG4gICAgICAgIH1cbiAgICAgICAgbGV0IGh0dHBPcHRpb25zID0ge1xuICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgICAgICAgICAnQWNjZXB0LXR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgICAgICAgJ0F1dGhvcml6YXRpb24nOiB0b2tlbl90eXBlICsgJyAnICsgYWNjZXNzX3Rva2VuXG4gICAgICAgICAgICB9KVxuICAgICAgICB9O1xuICAgICAgICBsZXQgY29uZmlnID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImNvbmZpZ1wiKSk7XG4gICAgICAgIGlmIChjb25maWcpXG4gICAgICAgICAgICBpZiAoY29uZmlnLnVybClcbiAgICAgICAgICAgICAgICB0aGlzLnVybF9ob3N0ID0gY29uZmlnLnVybDtcblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodGhpcy51cmxfaG9zdCArICcvdXN1YXJpby9zZXRNb2R1bG8nLCBtb2R1bG8sIGh0dHBPcHRpb25zKTtcbiAgICB9XG4gICAgcXVpdGFyTW9kdWxvKCkge1xuICAgICAgICAvLyAgc2V0RW1wcmVzYUFkbWluaXN0cmF0aXZhXG4gICAgICAgIGxldCB1c3VhcmlvOiBVc3VhcmlvO1xuICAgICAgICBsZXQgdG9rZW5fdHlwZSA9ICcnO1xuICAgICAgICBsZXQgYWNjZXNzX3Rva2VuID0gJyc7XG4gICAgICAgIHVzdWFyaW8gPSA8VXN1YXJpbz5KU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwidXN1YXJpb1wiKSk7XG4gICAgICAgIGlmICh1c3VhcmlvKSB7XG4gICAgICAgICAgICB0b2tlbl90eXBlID0gdXN1YXJpby50b2tlbl90eXBlLFxuICAgICAgICAgICAgICAgIGFjY2Vzc190b2tlbiA9IHVzdWFyaW8uYWNjZXNzX3Rva2VuXG4gICAgICAgIH1cbiAgICAgICAgbGV0IGh0dHBPcHRpb25zID0ge1xuICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgICAgICAgICAnQWNjZXB0LXR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgICAgICAgICAgJ0F1dGhvcml6YXRpb24nOiB0b2tlbl90eXBlICsgJyAnICsgYWNjZXNzX3Rva2VuXG4gICAgICAgICAgICB9KVxuICAgICAgICB9O1xuICAgICAgICBsZXQgY29uZmlnID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImNvbmZpZ1wiKSk7XG4gICAgICAgIGlmIChjb25maWcpXG4gICAgICAgICAgICBpZiAoY29uZmlnLnVybClcbiAgICAgICAgICAgICAgICB0aGlzLnVybF9ob3N0ID0gY29uZmlnLnVybDtcblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3QodGhpcy51cmxfaG9zdCArICcvdXN1YXJpby9zZXRNb2R1bG8nLCB7IGlkOiAwIH0sIGh0dHBPcHRpb25zKTtcbiAgICB9XG5cbiAgICBnZXREZXRhbHNVc2VyKCkge1xuICAgICAgICBsZXQgdXN1YXJpbzogVXN1YXJpbztcbiAgICAgICAgbGV0IHRva2VuX3R5cGUgPSAnJztcbiAgICAgICAgbGV0IGFjY2Vzc190b2tlbiA9ICcnO1xuICAgICAgICB1c3VhcmlvID0gPFVzdWFyaW8+SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzdWFyaW9cIikpO1xuICAgICAgICBpZiAodXN1YXJpbykge1xuICAgICAgICAgICAgdG9rZW5fdHlwZSA9IHVzdWFyaW8udG9rZW5fdHlwZSxcbiAgICAgICAgICAgICAgICBhY2Nlc3NfdG9rZW4gPSB1c3VhcmlvLmFjY2Vzc190b2tlblxuICAgICAgICB9XG4gICAgICAgIGxldCBodHRwT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0FjY2VwdC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdBdXRob3JpemF0aW9uJzogdG9rZW5fdHlwZSArICcgJyArIGFjY2Vzc190b2tlblxuICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IGNvbmZpZyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb25maWdcIikpO1xuICAgICAgICBpZiAoY29uZmlnKVxuICAgICAgICAgICAgaWYgKGNvbmZpZy51cmwpXG4gICAgICAgICAgICAgICAgdGhpcy51cmxfaG9zdCA9IGNvbmZpZy51cmw7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy51cmxfaG9zdCArICcvdXN1YXJpby9vYnRpZW5lVXN1YXJpb0FjdHVhbCcsIGh0dHBPcHRpb25zKTtcbiAgICB9XG59XG4iXX0=
|
|
199
|
+
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(AuthService, [{
|
|
200
|
+
type: Injectable,
|
|
201
|
+
args: [{
|
|
202
|
+
providedIn: 'root'
|
|
203
|
+
}]
|
|
204
|
+
}], function () { return [{ type: i1.HttpClient }, { type: i2.LoadingService }]; }, { login: [{
|
|
205
|
+
type: Output
|
|
206
|
+
}], seleccionEmpresa: [{
|
|
207
|
+
type: Output
|
|
208
|
+
}] }); })();
|
|
209
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmlzb3J1cy1lcnAtY29yZS8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzVDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7Ozs7QUFFdkU7SUFTSSxxQkFDWSxVQUFzQixFQUN0QixjQUE4QjtRQUQ5QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ3RCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQU4xQyxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBRUosVUFBSyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDM0IscUJBQWdCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUs1QyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELDhCQUFRLEdBQVIsVUFBUyxJQUFJLEVBQUUsR0FBRztRQUNkLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3hELElBQUksTUFBTTtZQUNOLElBQUksTUFBTSxDQUFDLEdBQUc7Z0JBQ1YsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQ25DLE9BQU8sSUFB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R0FBRztnQkFDVixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFFbkMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLCtCQUErQixFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQzdGLENBQUM7NkZBL01RLFdBQVc7MEVBQVgsV0FBVyxXQUFYLFdBQVcsbUJBRlIsTUFBTTtzQkFQdEI7Q0F5TkMsQUFuTkQsSUFtTkM7U0FoTlksV0FBVztrREFBWCxXQUFXO2NBSHZCLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQjs7a0JBS0ksTUFBTTs7a0JBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XG5pbXBvcnQgeyBVc3VhcmlvIH0gZnJvbSAnLi4vbW9kZWxzL1VzdWFyaW8nO1xuaW1wb3J0IHsgQXV0aCB9IGZyb20gJy4uL21vZGVscy9hdXRoJztcbmltcG9ydCB7IExvYWRpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vY29tcG9uZW50cy9sb2FkaW5nL2xvYWRpbmcuc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2Uge1xuICAgIHVzdWFyaW86IFVzdWFyaW87XG4gICAgdXJsX2hvc3QgPSAnJztcbiAgICBhdXRoOiBBdXRoO1xuICAgIEBPdXRwdXQoKSBsb2dpbiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBAT3V0cHV0KCkgc2VsZWNjaW9uRW1wcmVzYSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgICAgICBwcml2YXRlIGxvYWRpbmdTZXJ2aWNlOiBMb2FkaW5nU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLmF1dGggPSBuZXcgQXV0aCgpO1xuICAgIH1cblxuICAgIHNldGxvZ2luKHVzZXIsIGtleSkge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnbGFuZycsICdlcycpO1xuICAgICAgICBsZXQgY29uZmlnID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImNvbmZpZ1wiKSk7XG4gICAgICAgIGlmIChjb25maWcpXG4gICAgICAgICAgICBpZiAoY29uZmlnLnVybClcbiAgICAgICAgICAgICAgICB0aGlzLnVybF9ob3N0ID0gY29uZmlnLnVybDtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMudXJsX2hvc3QgKyAnL2xvZ2luJyArIChrZXkgPyAnLycgKyBrZXkgOiAnJyksIHVzZXIpO1xuICAgIH1cbiAgICBzdGFydEF1dGgodXNlcikge1xuICAgICAgICB0aGlzLmF1dGggPSB1c2VyO1xuICAgICAgICB0aGlzLmxvZ2luLmVtaXQodGhpcy5hdXRoKTtcbiAgICB9XG4gICAgaXNMb2dpbigpIHtcbiAgICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd1c3VhcmlvJykgIT09IG51bGw7XG4gICAgfVxuXG4gICAgcXVpdGFyVXN1YXJpbygpIHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3VzdWFyaW8nKTtcbiAgICAgICAgdGhpcy5hdXRoLmxvZ2luID0gZmFsc2U7XG4gICAgICAgIHRoaXMubG9naW4uZW1pdCh0aGlzLmF1dGgpO1xuICAgIH1cblxuXG4gICAgdmVyaWZpY2FMb2dpbigpIHtcbiAgICAgICAgdGhpcy51c3VhcmlvID0gdGhpcy5nZXRVc2VyKCk7XG4gICAgICAgIGlmICh0aGlzLnVzdWFyaW8uYWNjZXNzX3Rva2VuKSB7XG4gICAgICAgICAgICB0aGlzLmdldERldGFsc1VzZXIoKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgICAgKHJlc3A6IGFueSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmF1dGgudXN1YXJpb0RldGFsbGVzID0gcmVzcDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hdXRoLmxvZ2luID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2dpbi5lbWl0KHRoaXMuYXV0aCk7XG4gICAgICAgICAgICAgICAgfSwgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5xdWl0YXJVc3VhcmlvKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYXV0aC51c3VhcmlvRGV0YWxsZXMgPSBudWxsO1xuICAgICAgICAgICAgdGhpcy5hdXRoLmxvZ2luID0gZmFsc2U7XG4gICAgICAgICAgICB0aGlzLmxvZ2luLmVtaXQodGhpcy5hdXRoKTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgbG9naW5PdXQoKSB7XG5cbiAgICAgICAgdGhpcy5xdWl0YXJFbXByZXNhQWRtaW5pc3RyYXRpdmEoKS5zdWJzY3JpYmUoXG4gICAgICAgICAgICAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3VzdWFyaW8nKTtcbiAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgndXN1YXJpbycpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCdsYW5nJywgJ2VzJyk7XG4gICAgICAgIHRoaXMuYXV0aC5sb2dpbiA9IGZhbHNlO1xuICAgICAgICB0aGlzLmxvZ2luLmVtaXQodGhpcy5hdXRoKTtcbiAgICB9XG5cbiAgICBnZXRVc2VyKCkge1xuICAgICAgICB0aGlzLnVzdWFyaW8gPSBuZXcgVXN1YXJpbygpO1xuICAgICAgICBpZiAodGhpcy5pc0xvZ2luKCkpIHtcbiAgICAgICAgICAgIGxldCB1cyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd1c3VhcmlvJyk7XG4gICAgICAgICAgICBpZiAodXMpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzdWFyaW8gPSBKU09OLnBhcnNlKHVzKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMudXN1YXJpbztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnVzdWFyaW87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBnZXRMYW5nKCkge1xuICAgICAgICBsZXQgbGFuZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5nJyk7XG4gICAgICAgIHJldHVybiBsYW5nID8gbGFuZyA6ICdlcyc7XG4gICAgfVxuXG4gICAgc2VsZWN0RW1wcmVzYShlKSB7XG4gICAgICAgIHRoaXMuc2VsZWNjaW9uRW1wcmVzYS5lbWl0KGUpO1xuICAgIH1cblxuICAgIHF1aXRhckVtcHJlc2FBZG1pbmlzdHJhdGl2YSgpIHtcbiAgICAgICAgbGV0IHVzdWFyaW86IFVzdWFyaW87XG4gICAgICAgIGxldCB0b2tlbl90eXBlID0gJyc7XG4gICAgICAgIGxldCBhY2Nlc3NfdG9rZW4gPSAnJztcbiAgICAgICAgdXN1YXJpbyA9IDxVc3VhcmlvPkpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJ1c3VhcmlvXCIpKTtcbiAgICAgICAgaWYgKHVzdWFyaW8pIHtcbiAgICAgICAgICAgIHRva2VuX3R5cGUgPSB1c3VhcmlvLnRva2VuX3R5cGUsXG4gICAgICAgICAgICAgICAgYWNjZXNzX3Rva2VuID0gdXN1YXJpby5hY2Nlc3NfdG9rZW5cbiAgICAgICAgfVxuICAgICAgICBsZXQgaHR0cE9wdGlvbnMgPSB7XG4gICAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgICAgICdBY2NlcHQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAnQXV0aG9yaXphdGlvbic6IHRva2VuX3R5cGUgKyAnICcgKyBhY2Nlc3NfdG9rZW5cbiAgICAgICAgICAgIH0pXG4gICAgICAgIH07XG4gICAgICAgIGxldCBjb25maWcgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiY29uZmlnXCIpKTtcbiAgICAgICAgaWYgKGNvbmZpZylcbiAgICAgICAgICAgIGlmIChjb25maWcudXJsKVxuICAgICAgICAgICAgICAgIHRoaXMudXJsX2hvc3QgPSBjb25maWcudXJsO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdCh0aGlzLnVybF9ob3N0ICsgJy91c3VhcmlvL3NldEVtcHJlc2EnLCB7IGlkOiAwIH0sIGh0dHBPcHRpb25zKTtcbiAgICB9XG4gICAgc2V0RW1wcmVzYShlbXByZXNhKSB7XG4gICAgICAgIC8vICBzZXRFbXByZXNhQWRtaW5pc3RyYXRpdmFcbiAgICAgICAgbGV0IHVzdWFyaW86IFVzdWFyaW87XG4gICAgICAgIGxldCB0b2tlbl90eXBlID0gJyc7XG4gICAgICAgIGxldCBhY2Nlc3NfdG9rZW4gPSAnJztcbiAgICAgICAgdXN1YXJpbyA9IDxVc3VhcmlvPkpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJ1c3VhcmlvXCIpKTtcbiAgICAgICAgaWYgKHVzdWFyaW8pIHtcbiAgICAgICAgICAgIHRva2VuX3R5cGUgPSB1c3VhcmlvLnRva2VuX3R5cGUsXG4gICAgICAgICAgICAgICAgYWNjZXNzX3Rva2VuID0gdXN1YXJpby5hY2Nlc3NfdG9rZW5cbiAgICAgICAgfVxuICAgICAgICBsZXQgaHR0cE9wdGlvbnMgPSB7XG4gICAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgICAgICdBY2NlcHQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAnQXV0aG9yaXphdGlvbic6IHRva2VuX3R5cGUgKyAnICcgKyBhY2Nlc3NfdG9rZW5cbiAgICAgICAgICAgIH0pXG4gICAgICAgIH07XG4gICAgICAgIGxldCBjb25maWcgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiY29uZmlnXCIpKTtcbiAgICAgICAgaWYgKGNvbmZpZylcbiAgICAgICAgICAgIGlmIChjb25maWcudXJsKVxuICAgICAgICAgICAgICAgIHRoaXMudXJsX2hvc3QgPSBjb25maWcudXJsO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdCh0aGlzLnVybF9ob3N0ICsgJy91c3VhcmlvL3NldEVtcHJlc2EnLCBlbXByZXNhLCBodHRwT3B0aW9ucyk7XG4gICAgfVxuICAgIHNldE1vZHVsbyhtb2R1bG8pIHtcbiAgICAgICAgLy8gIHNldEVtcHJlc2FBZG1pbmlzdHJhdGl2YVxuICAgICAgICBsZXQgdXN1YXJpbzogVXN1YXJpbztcbiAgICAgICAgbGV0IHRva2VuX3R5cGUgPSAnJztcbiAgICAgICAgbGV0IGFjY2Vzc190b2tlbiA9ICcnO1xuICAgICAgICB1c3VhcmlvID0gPFVzdWFyaW8+SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzdWFyaW9cIikpO1xuICAgICAgICBpZiAodXN1YXJpbykge1xuICAgICAgICAgICAgdG9rZW5fdHlwZSA9IHVzdWFyaW8udG9rZW5fdHlwZSxcbiAgICAgICAgICAgICAgICBhY2Nlc3NfdG9rZW4gPSB1c3VhcmlvLmFjY2Vzc190b2tlblxuICAgICAgICB9XG4gICAgICAgIGxldCBodHRwT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0FjY2VwdC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdBdXRob3JpemF0aW9uJzogdG9rZW5fdHlwZSArICcgJyArIGFjY2Vzc190b2tlblxuICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IGNvbmZpZyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb25maWdcIikpO1xuICAgICAgICBpZiAoY29uZmlnKVxuICAgICAgICAgICAgaWYgKGNvbmZpZy51cmwpXG4gICAgICAgICAgICAgICAgdGhpcy51cmxfaG9zdCA9IGNvbmZpZy51cmw7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMudXJsX2hvc3QgKyAnL3VzdWFyaW8vc2V0TW9kdWxvJywgbW9kdWxvLCBodHRwT3B0aW9ucyk7XG4gICAgfVxuICAgIHF1aXRhck1vZHVsbygpIHtcbiAgICAgICAgLy8gIHNldEVtcHJlc2FBZG1pbmlzdHJhdGl2YVxuICAgICAgICBsZXQgdXN1YXJpbzogVXN1YXJpbztcbiAgICAgICAgbGV0IHRva2VuX3R5cGUgPSAnJztcbiAgICAgICAgbGV0IGFjY2Vzc190b2tlbiA9ICcnO1xuICAgICAgICB1c3VhcmlvID0gPFVzdWFyaW8+SlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzdWFyaW9cIikpO1xuICAgICAgICBpZiAodXN1YXJpbykge1xuICAgICAgICAgICAgdG9rZW5fdHlwZSA9IHVzdWFyaW8udG9rZW5fdHlwZSxcbiAgICAgICAgICAgICAgICBhY2Nlc3NfdG9rZW4gPSB1c3VhcmlvLmFjY2Vzc190b2tlblxuICAgICAgICB9XG4gICAgICAgIGxldCBodHRwT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0FjY2VwdC10eXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxuICAgICAgICAgICAgICAgICdBdXRob3JpemF0aW9uJzogdG9rZW5fdHlwZSArICcgJyArIGFjY2Vzc190b2tlblxuICAgICAgICAgICAgfSlcbiAgICAgICAgfTtcbiAgICAgICAgbGV0IGNvbmZpZyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb25maWdcIikpO1xuICAgICAgICBpZiAoY29uZmlnKVxuICAgICAgICAgICAgaWYgKGNvbmZpZy51cmwpXG4gICAgICAgICAgICAgICAgdGhpcy51cmxfaG9zdCA9IGNvbmZpZy51cmw7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMudXJsX2hvc3QgKyAnL3VzdWFyaW8vc2V0TW9kdWxvJywgeyBpZDogMCB9LCBodHRwT3B0aW9ucyk7XG4gICAgfVxuXG4gICAgZ2V0RGV0YWxzVXNlcigpIHtcbiAgICAgICAgbGV0IHVzdWFyaW86IFVzdWFyaW87XG4gICAgICAgIGxldCB0b2tlbl90eXBlID0gJyc7XG4gICAgICAgIGxldCBhY2Nlc3NfdG9rZW4gPSAnJztcbiAgICAgICAgdXN1YXJpbyA9IDxVc3VhcmlvPkpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJ1c3VhcmlvXCIpKTtcbiAgICAgICAgaWYgKHVzdWFyaW8pIHtcbiAgICAgICAgICAgIHRva2VuX3R5cGUgPSB1c3VhcmlvLnRva2VuX3R5cGUsXG4gICAgICAgICAgICAgICAgYWNjZXNzX3Rva2VuID0gdXN1YXJpby5hY2Nlc3NfdG9rZW5cbiAgICAgICAgfVxuICAgICAgICBsZXQgaHR0cE9wdGlvbnMgPSB7XG4gICAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgICAgICAgICAgICdBY2NlcHQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAnQXV0aG9yaXphdGlvbic6IHRva2VuX3R5cGUgKyAnICcgKyBhY2Nlc3NfdG9rZW5cbiAgICAgICAgICAgIH0pXG4gICAgICAgIH07XG4gICAgICAgIGxldCBjb25maWcgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiY29uZmlnXCIpKTtcbiAgICAgICAgaWYgKGNvbmZpZylcbiAgICAgICAgICAgIGlmIChjb25maWcudXJsKVxuICAgICAgICAgICAgICAgIHRoaXMudXJsX2hvc3QgPSBjb25maWcudXJsO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZ2V0KHRoaXMudXJsX2hvc3QgKyAnL3VzdWFyaW8vb2J0aWVuZVVzdWFyaW9BY3R1YWwnLCBodHRwT3B0aW9ucyk7XG4gICAgfVxufVxuIl19
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
1
|
import { Injectable } from '@angular/core';
|
|
6
2
|
import { AuthService } from './auth.service';
|
|
7
3
|
import { ControlAccesoService } from './controlAcceso.service';
|
|
@@ -16,25 +12,11 @@ var Authenticated = /** @class */ (function () {
|
|
|
16
12
|
this.controlAccesoService = controlAccesoService;
|
|
17
13
|
this.router = router;
|
|
18
14
|
}
|
|
19
|
-
|
|
20
|
-
* @param {?=} modulo
|
|
21
|
-
* @return {?}
|
|
22
|
-
*/
|
|
23
|
-
Authenticated.prototype.load = /**
|
|
24
|
-
* @param {?=} modulo
|
|
25
|
-
* @return {?}
|
|
26
|
-
*/
|
|
27
|
-
function (modulo) {
|
|
15
|
+
Authenticated.prototype.load = function (modulo) {
|
|
28
16
|
var _this = this;
|
|
29
|
-
/** @type {?} */
|
|
30
17
|
var usuario = this.authService.getUser();
|
|
31
18
|
if (usuario) {
|
|
32
|
-
this.authService.getDetalsUser().subscribe((
|
|
33
|
-
* @param {?} resp
|
|
34
|
-
* @return {?}
|
|
35
|
-
*/
|
|
36
|
-
function (resp) {
|
|
37
|
-
/** @type {?} */
|
|
19
|
+
this.authService.getDetalsUser().subscribe(function (resp) {
|
|
38
20
|
var roles = resp.roles;
|
|
39
21
|
for (var index = 0; index < roles.length; index++) {
|
|
40
22
|
if (roles[index].authority === "ROLE_CLIENTE") {
|
|
@@ -62,31 +44,17 @@ var Authenticated = /** @class */ (function () {
|
|
|
62
44
|
}
|
|
63
45
|
|
|
64
46
|
*/
|
|
65
|
-
}
|
|
66
|
-
* @param {?} error
|
|
67
|
-
* @return {?}
|
|
68
|
-
*/
|
|
69
|
-
function (error) {
|
|
47
|
+
}, function (error) {
|
|
70
48
|
_this.regresaAlprincipal(undefined);
|
|
71
|
-
})
|
|
49
|
+
});
|
|
72
50
|
}
|
|
73
51
|
else {
|
|
74
52
|
this.regresaAlprincipal(undefined);
|
|
75
53
|
}
|
|
76
54
|
return false;
|
|
77
55
|
};
|
|
78
|
-
|
|
79
|
-
* @param {?} url
|
|
80
|
-
* @return {?}
|
|
81
|
-
*/
|
|
82
|
-
Authenticated.prototype.regresaAlprincipal = /**
|
|
83
|
-
* @param {?} url
|
|
84
|
-
* @return {?}
|
|
85
|
-
*/
|
|
86
|
-
function (url) {
|
|
87
|
-
/** @type {?} */
|
|
56
|
+
Authenticated.prototype.regresaAlprincipal = function (url) {
|
|
88
57
|
var config = JSON.parse(localStorage.getItem("config"));
|
|
89
|
-
/** @type {?} */
|
|
90
58
|
var host = "";
|
|
91
59
|
if (config) {
|
|
92
60
|
if (config.host) {
|
|
@@ -98,36 +66,15 @@ var Authenticated = /** @class */ (function () {
|
|
|
98
66
|
}
|
|
99
67
|
window.location.href = host;
|
|
100
68
|
};
|
|
101
|
-
Authenticated
|
|
102
|
-
|
|
103
|
-
providedIn: 'root'
|
|
104
|
-
},] }
|
|
105
|
-
];
|
|
106
|
-
/** @nocollapse */
|
|
107
|
-
Authenticated.ctorParameters = function () { return [
|
|
108
|
-
{ type: AuthService },
|
|
109
|
-
{ type: ControlAccesoService },
|
|
110
|
-
{ type: Router }
|
|
111
|
-
]; };
|
|
112
|
-
/** @nocollapse */ Authenticated.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function Authenticated_Factory() { return new Authenticated(i0.ɵɵinject(i1.AuthService), i0.ɵɵinject(i2.ControlAccesoService), i0.ɵɵinject(i3.Router)); }, token: Authenticated, providedIn: "root" });
|
|
69
|
+
/** @nocollapse */ Authenticated.ɵfac = function Authenticated_Factory(t) { return new (t || Authenticated)(i0.ɵɵinject(i1.AuthService), i0.ɵɵinject(i2.ControlAccesoService), i0.ɵɵinject(i3.Router)); };
|
|
70
|
+
/** @nocollapse */ Authenticated.ɵprov = i0.ɵɵdefineInjectable({ token: Authenticated, factory: Authenticated.ɵfac, providedIn: 'root' });
|
|
113
71
|
return Authenticated;
|
|
114
72
|
}());
|
|
115
73
|
export { Authenticated };
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
* @type {?}
|
|
124
|
-
* @private
|
|
125
|
-
*/
|
|
126
|
-
Authenticated.prototype.controlAccesoService;
|
|
127
|
-
/**
|
|
128
|
-
* @type {?}
|
|
129
|
-
* @private
|
|
130
|
-
*/
|
|
131
|
-
Authenticated.prototype.router;
|
|
132
|
-
}
|
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRlZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmlzb3J1cy1lcnAtY29yZS8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9hdXRoZW50aWNhdGVkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRS9ELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUFFekM7SUFLSSx1QkFDWSxXQUF3QixFQUN4QixvQkFBMEMsRUFDMUMsTUFBYztRQUZkLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBc0I7UUFDMUMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUcxQixDQUFDOzs7OztJQUVELDRCQUFJOzs7O0lBQUosVUFBSyxNQUFRO1FBQWIsaUJBMENHOztZQXpDSyxPQUFPLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUU7UUFFeEMsSUFBSSxPQUFPLEVBQUU7WUFDWCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDLFNBQVM7Ozs7WUFDeEMsVUFBQyxJQUFTOztvQkFDSixLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUs7Z0JBQ3RCLEtBQUssSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFO29CQUNqRCxJQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxTQUFTLEtBQUssY0FBYyxFQUFDO3dCQUMzQywyRUFBMkU7d0JBQzFFLEtBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDO3FCQUMzRDtpQkFDRjtnQkFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtvQkFDakIsS0FBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO2lCQUNwQztnQkFDRCxLQUFJLENBQUMsb0JBQW9CLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2dCQUNsRCxLQUFJLENBQUMsb0JBQW9CLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDaEQsT0FBTyxJQUFJLENBQUM7Z0JBQ2hCOzs7Ozs7Ozs7Ozs7O2tCQWFFO1lBRUosQ0FBQzs7OztZQUFFLFVBQUMsS0FBVTtnQkFDWixLQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDckMsQ0FBQyxFQUNGLENBQUM7U0FDSDthQUFNO1lBQ0wsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ3BDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDOzs7OztJQUVILDBDQUFrQjs7OztJQUFsQixVQUFtQixHQUFHOztZQUNkLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7O1lBQ25ELElBQUksR0FBRyxFQUFFO1FBQ2IsSUFBSSxNQUFNLEVBQUU7WUFDVixJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUU7Z0JBQ2YsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUM7YUFDcEI7U0FDRjtRQUNELElBQUksR0FBRyxFQUFFO1lBQ1AsSUFBSSxHQUFHLElBQUksR0FBRyxHQUFHLENBQUM7U0FDbkI7UUFDRCxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDOUIsQ0FBQzs7Z0JBckVOLFVBQVUsU0FBQztvQkFDUixVQUFVLEVBQUUsTUFBTTtpQkFDckI7Ozs7Z0JBUFEsV0FBVztnQkFDWCxvQkFBb0I7Z0JBRXBCLE1BQU07Ozt3QkFKZjtDQTRFQyxBQXRFRCxJQXNFQztTQW5FWSxhQUFhOzs7Ozs7SUFHbEIsb0NBQWdDOzs7OztJQUNoQyw2Q0FBa0Q7Ozs7O0lBQ2xELCtCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udHJvbEFjY2Vzb1NlcnZpY2UgfSBmcm9tICcuL2NvbnRyb2xBY2Nlc28uc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRlZCB7XG5cbiAgICBjb25zdHJ1Y3RvciggXG4gICAgICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvbnRyb2xBY2Nlc29TZXJ2aWNlOiBDb250cm9sQWNjZXNvU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxuICAgICAgICApe1xuICAgICAgIFxuICAgIH1cbiAgICBcbiAgICBsb2FkKG1vZHVsbyA/KXtcbiAgICAgICAgbGV0IHVzdWFyaW8gPSB0aGlzLmF1dGhTZXJ2aWNlLmdldFVzZXIoKTtcblxuICAgICAgICBpZiAodXN1YXJpbykge1xuICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0RGV0YWxzVXNlcigpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChyZXNwOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgbGV0IHJvbGVzID0gcmVzcC5yb2xlczsgXG4gICAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCByb2xlcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgICAgICBpZihyb2xlc1tpbmRleF0uYXV0aG9yaXR5ID09PSBcIlJPTEVfQ0xJRU5URVwiKXtcbiAgICAgICAgICAgICAgICAgIC8vdGhpcy5yZWdyZXNhQWxwcmluY2lwYWwoJy9hZG1pbmlzdHJhdGl2by9tb3ZpbWllbnRvcy92ZW50YVJhcGlkYS9jcmVhdGUnKVxuICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbW92aW1pZW50b3MvdmVudGFSYXBpZGEvY3JlYXRlJ10pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAoIXJlc3AuZW1wcmVzYSkge1xuICAgICAgICAgICAgICAgIHRoaXMucmVncmVzYUFscHJpbmNpcGFsKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgdGhpcy5jb250cm9sQWNjZXNvU2VydmljZS5kZXRhbGxlc1VzdWFyaW9zID0gcmVzcDtcbiAgICAgICAgICAgICAgdGhpcy5jb250cm9sQWNjZXNvU2VydmljZS5jYW1iaW9BY2Npb25lcy5lbWl0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAgIGlmIChyZXNwLm1vZHVsb0FjY2Vzb0FjdHVhbCkge1xuICAgICAgICAgICAgICAgIGlmIChyZXNwLm1vZHVsb0FjY2Vzb0FjdHVhbC5kZXNjcmlwY2lvbiA9PT0gbW9kdWxvKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xBY2Nlc29TZXJ2aWNlLmRldGFsbGVzVXN1YXJpb3MgPSByZXNwO1xuICAgICAgICAgICAgICAgICAgdGhpcy5jb250cm9sQWNjZXNvU2VydmljZS5jYW1iaW9BY2Npb25lcy5lbWl0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMucmVncmVzYUFscHJpbmNpcGFsKHJlc3AubW9kdWxvQWNjZXNvQWN0dWFsLnVybEluaWNpYWwpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZ3Jlc2FBbHByaW5jaXBhbCh1bmRlZmluZWQpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgKi9cbiAgICBcbiAgICAgICAgICAgIH0sIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucmVncmVzYUFscHJpbmNpcGFsKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlZ3Jlc2FBbHByaW5jaXBhbCh1bmRlZmluZWQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgIHJlZ3Jlc2FBbHByaW5jaXBhbCh1cmwpIHtcbiAgICAgICAgbGV0IGNvbmZpZyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb25maWdcIikpO1xuICAgICAgICBsZXQgaG9zdCA9IFwiXCJcbiAgICAgICAgaWYgKGNvbmZpZykge1xuICAgICAgICAgIGlmIChjb25maWcuaG9zdCkge1xuICAgICAgICAgICAgaG9zdCA9IGNvbmZpZy5ob3N0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodXJsKSB7XG4gICAgICAgICAgaG9zdCA9IGhvc3QgKyB1cmw7XG4gICAgICAgIH1cbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBob3N0O1xuICAgICAgfVxufSJdfQ==
|
|
74
|
+
/*@__PURE__*/ (function () { i0.ɵsetClassMetadata(Authenticated, [{
|
|
75
|
+
type: Injectable,
|
|
76
|
+
args: [{
|
|
77
|
+
providedIn: 'root'
|
|
78
|
+
}]
|
|
79
|
+
}], function () { return [{ type: i1.AuthService }, { type: i2.ControlAccesoService }, { type: i3.Router }]; }, null); })();
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRlZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmlzb3J1cy1lcnAtY29yZS8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9hdXRoZW50aWNhdGVkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFL0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQUV6QztJQUtJLHVCQUNZLFdBQXdCLEVBQ3hCLG9CQUEwQyxFQUMxQyxNQUFjO1FBRmQsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBRzFCLENBQUM7SUFFRCw0QkFBSSxHQUFKLFVBQUssTUFBUTtRQUFiLGlCQTBDRztRQXpDQyxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBRXpDLElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxTQUFTLENBQ3hDLFVBQUMsSUFBUztnQkFDUixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO2dCQUN2QixLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtvQkFDakQsSUFBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsU0FBUyxLQUFLLGNBQWMsRUFBQzt3QkFDM0MsMkVBQTJFO3dCQUMxRSxLQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGdDQUFnQyxDQUFDLENBQUMsQ0FBQztxQkFDM0Q7aUJBQ0Y7Z0JBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7b0JBQ2pCLEtBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztpQkFDcEM7Z0JBQ0QsS0FBSSxDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQztnQkFDbEQsS0FBSSxDQUFDLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2hELE9BQU8sSUFBSSxDQUFDO2dCQUNoQjs7Ozs7Ozs7Ozs7OztrQkFhRTtZQUVKLENBQUMsRUFBRSxVQUFDLEtBQVU7Z0JBQ1osS0FBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JDLENBQUMsQ0FDRixDQUFDO1NBQ0g7YUFBTTtZQUNMLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNwQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVILDBDQUFrQixHQUFsQixVQUFtQixHQUFHO1FBQ2xCLElBQUksTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3hELElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQTtRQUNiLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFO2dCQUNmLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO2FBQ3BCO1NBQ0Y7UUFDRCxJQUFJLEdBQUcsRUFBRTtZQUNQLElBQUksR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDO1NBQ25CO1FBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQzlCLENBQUM7aUdBbEVNLGFBQWE7NEVBQWIsYUFBYSxXQUFiLGFBQWEsbUJBRlYsTUFBTTt3QkFQdEI7Q0E0RUMsQUF0RUQsSUFzRUM7U0FuRVksYUFBYTtrREFBYixhQUFhO2NBSHpCLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29udHJvbEFjY2Vzb1NlcnZpY2UgfSBmcm9tICcuL2NvbnRyb2xBY2Nlc28uc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbXBpbGVyL3NyYy9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRlZCB7XG5cbiAgICBjb25zdHJ1Y3RvciggXG4gICAgICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNvbnRyb2xBY2Nlc29TZXJ2aWNlOiBDb250cm9sQWNjZXNvU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxuICAgICAgICApe1xuICAgICAgIFxuICAgIH1cbiAgICBcbiAgICBsb2FkKG1vZHVsbyA/KXtcbiAgICAgICAgbGV0IHVzdWFyaW8gPSB0aGlzLmF1dGhTZXJ2aWNlLmdldFVzZXIoKTtcblxuICAgICAgICBpZiAodXN1YXJpbykge1xuICAgICAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0RGV0YWxzVXNlcigpLnN1YnNjcmliZShcbiAgICAgICAgICAgIChyZXNwOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgbGV0IHJvbGVzID0gcmVzcC5yb2xlczsgXG4gICAgICAgICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCByb2xlcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgICAgICAgICAgICBpZihyb2xlc1tpbmRleF0uYXV0aG9yaXR5ID09PSBcIlJPTEVfQ0xJRU5URVwiKXtcbiAgICAgICAgICAgICAgICAgIC8vdGhpcy5yZWdyZXNhQWxwcmluY2lwYWwoJy9hZG1pbmlzdHJhdGl2by9tb3ZpbWllbnRvcy92ZW50YVJhcGlkYS9jcmVhdGUnKVxuICAgICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbW92aW1pZW50b3MvdmVudGFSYXBpZGEvY3JlYXRlJ10pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpZiAoIXJlc3AuZW1wcmVzYSkge1xuICAgICAgICAgICAgICAgIHRoaXMucmVncmVzYUFscHJpbmNpcGFsKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgdGhpcy5jb250cm9sQWNjZXNvU2VydmljZS5kZXRhbGxlc1VzdWFyaW9zID0gcmVzcDtcbiAgICAgICAgICAgICAgdGhpcy5jb250cm9sQWNjZXNvU2VydmljZS5jYW1iaW9BY2Npb25lcy5lbWl0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAgIGlmIChyZXNwLm1vZHVsb0FjY2Vzb0FjdHVhbCkge1xuICAgICAgICAgICAgICAgIGlmIChyZXNwLm1vZHVsb0FjY2Vzb0FjdHVhbC5kZXNjcmlwY2lvbiA9PT0gbW9kdWxvKSB7XG4gICAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xBY2Nlc29TZXJ2aWNlLmRldGFsbGVzVXN1YXJpb3MgPSByZXNwO1xuICAgICAgICAgICAgICAgICAgdGhpcy5jb250cm9sQWNjZXNvU2VydmljZS5jYW1iaW9BY2Npb25lcy5lbWl0KHRydWUpO1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIHRoaXMucmVncmVzYUFscHJpbmNpcGFsKHJlc3AubW9kdWxvQWNjZXNvQWN0dWFsLnVybEluaWNpYWwpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZ3Jlc2FBbHByaW5jaXBhbCh1bmRlZmluZWQpO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgKi9cbiAgICBcbiAgICAgICAgICAgIH0sIChlcnJvcjogYW55KSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucmVncmVzYUFscHJpbmNpcGFsKHVuZGVmaW5lZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnJlZ3Jlc2FBbHByaW5jaXBhbCh1bmRlZmluZWQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cblxuICAgIHJlZ3Jlc2FBbHByaW5jaXBhbCh1cmwpIHtcbiAgICAgICAgbGV0IGNvbmZpZyA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJjb25maWdcIikpO1xuICAgICAgICBsZXQgaG9zdCA9IFwiXCJcbiAgICAgICAgaWYgKGNvbmZpZykge1xuICAgICAgICAgIGlmIChjb25maWcuaG9zdCkge1xuICAgICAgICAgICAgaG9zdCA9IGNvbmZpZy5ob3N0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAodXJsKSB7XG4gICAgICAgICAgaG9zdCA9IGhvc3QgKyB1cmw7XG4gICAgICAgIH1cbiAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBob3N0O1xuICAgICAgfVxufSJdfQ==
|