visorus-erp-core 15.0.0 → 17.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.
Files changed (138) hide show
  1. package/{esm2020 → esm2022}/lib/app.module.mjs +20 -20
  2. package/esm2022/lib/components/acreedor/select/select-acreedor.component.mjs +208 -0
  3. package/{esm2020 → esm2022}/lib/components/acreedor/services/acreedor.service.mjs +5 -5
  4. package/{esm2020 → esm2022}/lib/components/acreedor/services/acreedorCuentaContable.mjs +5 -5
  5. package/{esm2020 → esm2022}/lib/components/agente/services/agente.service.mjs +5 -5
  6. package/{esm2020 → esm2022}/lib/components/almacen/services/almacen.service.mjs +5 -5
  7. package/{esm2020 → esm2022}/lib/components/banco/services/banco.service.mjs +5 -5
  8. package/esm2022/lib/components/caja/session-create/session-create.component.mjs +181 -0
  9. package/{esm2020 → esm2022}/lib/components/caja/sessionCaja.service.mjs +5 -5
  10. package/{esm2020 → esm2022}/lib/components/catalogoTipo/services/catalogoTipo.service.mjs +5 -5
  11. package/{esm2020 → esm2022}/lib/components/clasificadorTipo/services/clasificadorTipo.service.mjs +5 -5
  12. package/{esm2020 → esm2022}/lib/components/claveAumentoDisminucion/services/clave-aumento-disminucion.service.mjs +5 -5
  13. package/{esm2020 → esm2022}/lib/components/claveMovimiento/services/claveMovimiento.service.mjs +5 -5
  14. package/esm2022/lib/components/cliente/select/select-cliente.component.mjs +219 -0
  15. package/{esm2020 → esm2022}/lib/components/cliente/services/cliente.service.mjs +5 -5
  16. package/{esm2020 → esm2022}/lib/components/cliente/services/clienteCuentaBanco.service.mjs +5 -5
  17. package/{esm2020 → esm2022}/lib/components/cliente/services/clienteFlete.service.mjs +5 -5
  18. package/{esm2020 → esm2022}/lib/components/contacto/services/datoContacto.service.mjs +5 -5
  19. package/{esm2020 → esm2022}/lib/components/dato-direccion/services/datoDireccion.service.mjs +5 -5
  20. package/{esm2020 → esm2022}/lib/components/departamento/services/departamento.service.mjs +5 -5
  21. package/{esm2020 → esm2022}/lib/components/empresa/services/empresa.service.mjs +5 -5
  22. package/esm2022/lib/components/error404/error404.component.mjs +22 -0
  23. package/{esm2020 → esm2022}/lib/components/flete/services/flete.service.mjs +5 -5
  24. package/{esm2020 → esm2022}/lib/components/formaPago/services/FormaPago.service.mjs +5 -5
  25. package/esm2022/lib/components/loading/loading.component.mjs +49 -0
  26. package/{esm2020 → esm2022}/lib/components/loading/loading.service.mjs +4 -4
  27. package/esm2022/lib/components/loading-screen/loading-screen.component.mjs +45 -0
  28. package/{esm2020 → esm2022}/lib/components/loading-screen/loading-screen.service.mjs +4 -4
  29. package/esm2022/lib/components/login-modal/login-modal.component.mjs +152 -0
  30. package/{esm2020 → esm2022}/lib/components/login-modal/login-modal.service.mjs +4 -4
  31. package/{esm2020 → esm2022}/lib/components/moneda/services/moneda.service.mjs +5 -5
  32. package/esm2022/lib/components/pdfModal/pdf-modal.component.mjs +104 -0
  33. package/{esm2020 → esm2022}/lib/components/pdfModal/pdf-modal.service.mjs +4 -4
  34. package/{esm2020 → esm2022}/lib/components/persona-fisica/services/personaFisica.service.mjs +5 -5
  35. package/esm2022/lib/components/proveedor/select/select-proveedor.component.mjs +142 -0
  36. package/{esm2020 → esm2022}/lib/components/proveedor/services/proveedor.service.mjs +5 -5
  37. package/{esm2020 → esm2022}/lib/components/proveedor/services/proveedorCuentaBanco.service.mjs +5 -5
  38. package/{esm2020 → esm2022}/lib/components/proveedor/services/proveedorFlete.service.mjs +5 -5
  39. package/esm2022/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.mjs +151 -0
  40. package/{esm2020 → esm2022}/lib/components/seleccion-articulo-informacion/services/articulo-informacion.service.mjs +5 -5
  41. package/esm2022/lib/components/selecciona-articulo/selecciona-articulo.component.mjs +486 -0
  42. package/{esm2020 → esm2022}/lib/components/selecciona-articulo/stock.service.mjs +5 -5
  43. package/{esm2020 → esm2022}/lib/components/serieDocumento/services/serieDocumento.service.mjs +5 -5
  44. package/{esm2020 → esm2022}/lib/components/tipo-contacto/services/tipoContacto.service.mjs +5 -5
  45. package/{esm2020 → esm2022}/lib/components/ubicacion/services/ubicacion.service.mjs +5 -5
  46. package/esm2022/lib/contabilidad/componentes/cclista/cclista.component.mjs +262 -0
  47. package/esm2022/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.mjs +66 -0
  48. package/{esm2020 → esm2022}/lib/contabilidad/servicios/cuentacontable.service.mjs +5 -5
  49. package/esm2022/lib/httpInterceptor/httpInterceptor.mjs +90 -0
  50. package/esm2022/lib/services/auth.service.mjs +203 -0
  51. package/esm2022/lib/services/authenticated.service.mjs +77 -0
  52. package/{esm2020 → esm2022}/lib/services/canActivateGuard.service.ts.mjs +5 -5
  53. package/{esm2020 → esm2022}/lib/services/catalogo-adicional.service.mjs +5 -5
  54. package/esm2022/lib/services/controlAcceso.service.mjs +43 -0
  55. package/{esm2020 → esm2022}/lib/services/file.service.mjs +5 -5
  56. package/{esm2020 → esm2022}/lib/services/init.service.mjs +5 -5
  57. package/esm2022/lib/services/message.service.mjs +79 -0
  58. package/esm2022/lib/services/paginate.service.mjs +58 -0
  59. package/{esm2020 → esm2022}/lib/services/personaMoral.service.mjs +5 -5
  60. package/esm2022/lib/services/versionCheck.service.mjs +52 -0
  61. package/esm2022/lib/utils/tipo_catalogo.ts.mjs +5 -0
  62. package/{fesm2020 → fesm2022}/visorus-erp-core.mjs +778 -754
  63. package/fesm2022/visorus-erp-core.mjs.map +1 -0
  64. package/lib/app.module.d.ts +1 -1
  65. package/lib/components/acreedor/select/select-acreedor.component.d.ts +1 -1
  66. package/lib/components/caja/session-create/session-create.component.d.ts +1 -1
  67. package/lib/components/cliente/select/select-cliente.component.d.ts +1 -1
  68. package/lib/components/loading/loading.component.d.ts +1 -1
  69. package/lib/components/loading-screen/loading-screen.component.d.ts +1 -1
  70. package/lib/components/proveedor/select/select-proveedor.component.d.ts +1 -1
  71. package/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.d.ts +1 -1
  72. package/lib/components/selecciona-articulo/selecciona-articulo.component.d.ts +1 -1
  73. package/lib/contabilidad/componentes/cclista/cclista.component.d.ts +1 -1
  74. package/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.d.ts +1 -1
  75. package/package.json +13 -19
  76. package/esm2020/lib/components/acreedor/select/select-acreedor.component.mjs +0 -205
  77. package/esm2020/lib/components/caja/session-create/session-create.component.mjs +0 -177
  78. package/esm2020/lib/components/cliente/select/select-cliente.component.mjs +0 -215
  79. package/esm2020/lib/components/error404/error404.component.mjs +0 -21
  80. package/esm2020/lib/components/loading/loading.component.mjs +0 -48
  81. package/esm2020/lib/components/loading-screen/loading-screen.component.mjs +0 -44
  82. package/esm2020/lib/components/login-modal/login-modal.component.mjs +0 -152
  83. package/esm2020/lib/components/pdfModal/pdf-modal.component.mjs +0 -102
  84. package/esm2020/lib/components/proveedor/select/select-proveedor.component.mjs +0 -138
  85. package/esm2020/lib/components/seleccion-articulo-informacion/seleccion-articulo-informacion.component.mjs +0 -143
  86. package/esm2020/lib/components/selecciona-articulo/selecciona-articulo.component.mjs +0 -493
  87. package/esm2020/lib/contabilidad/componentes/cclista/cclista.component.mjs +0 -262
  88. package/esm2020/lib/contabilidad/componentes/ccseleccion-dialog/ccseleccion-dialog.component.mjs +0 -63
  89. package/esm2020/lib/httpInterceptor/httpInterceptor.mjs +0 -90
  90. package/esm2020/lib/services/auth.service.mjs +0 -203
  91. package/esm2020/lib/services/authenticated.service.mjs +0 -77
  92. package/esm2020/lib/services/controlAcceso.service.mjs +0 -43
  93. package/esm2020/lib/services/message.service.mjs +0 -79
  94. package/esm2020/lib/services/paginate.service.mjs +0 -58
  95. package/esm2020/lib/services/versionCheck.service.mjs +0 -52
  96. package/esm2020/lib/utils/tipo_catalogo.ts.mjs +0 -5
  97. package/fesm2015/visorus-erp-core.mjs +0 -4063
  98. package/fesm2015/visorus-erp-core.mjs.map +0 -1
  99. package/fesm2020/visorus-erp-core.mjs.map +0 -1
  100. /package/{esm2020 → esm2022}/lib/components/agente/models/Agente.mjs +0 -0
  101. /package/{esm2020 → esm2022}/lib/components/almacen/models/Almacen.mjs +0 -0
  102. /package/{esm2020 → esm2022}/lib/components/banco/models/Banco.mjs +0 -0
  103. /package/{esm2020 → esm2022}/lib/components/catalogoTipo/models/CatalogoTipo.mjs +0 -0
  104. /package/{esm2020 → esm2022}/lib/components/clasificadorTipo/models/ClasificadorTipo.mjs +0 -0
  105. /package/{esm2020 → esm2022}/lib/components/claveMovimiento/models/ClaveMovimiento.mjs +0 -0
  106. /package/{esm2020 → esm2022}/lib/components/cliente/models/Cliente.mjs +0 -0
  107. /package/{esm2020 → esm2022}/lib/components/cliente/models/ClienteCuentaBanco.mjs +0 -0
  108. /package/{esm2020 → esm2022}/lib/components/cliente/models/ClienteFlete.mjs +0 -0
  109. /package/{esm2020 → esm2022}/lib/components/contacto/models/DatoContacto.mjs +0 -0
  110. /package/{esm2020 → esm2022}/lib/components/dato-direccion/models/DatoDireccion.mjs +0 -0
  111. /package/{esm2020 → esm2022}/lib/components/departamento/models/Departamento.mjs +0 -0
  112. /package/{esm2020 → esm2022}/lib/components/empresa/models/ConfiguracionEmpresaAdministrativa.mjs +0 -0
  113. /package/{esm2020 → esm2022}/lib/components/empresa/models/Empresa.mjs +0 -0
  114. /package/{esm2020 → esm2022}/lib/components/flete/models/Flete.mjs +0 -0
  115. /package/{esm2020 → esm2022}/lib/components/formaPago/models/FormaPago.mjs +0 -0
  116. /package/{esm2020 → esm2022}/lib/components/moneda/models/Moneda.mjs +0 -0
  117. /package/{esm2020 → esm2022}/lib/components/persona-fisica/models/EstadoCivil.mjs +0 -0
  118. /package/{esm2020 → esm2022}/lib/components/persona-fisica/models/Genero.mjs +0 -0
  119. /package/{esm2020 → esm2022}/lib/components/persona-fisica/models/Persona.mjs +0 -0
  120. /package/{esm2020 → esm2022}/lib/components/persona-fisica/models/PersonaFisica.mjs +0 -0
  121. /package/{esm2020 → esm2022}/lib/components/proveedor/models/Proveedor.mjs +0 -0
  122. /package/{esm2020 → esm2022}/lib/components/proveedor/models/ProveedorCuentaBanco.mjs +0 -0
  123. /package/{esm2020 → esm2022}/lib/components/proveedor/models/ProveedorFlete.mjs +0 -0
  124. /package/{esm2020 → esm2022}/lib/components/serieDocumento/models/SerieDocumento.mjs +0 -0
  125. /package/{esm2020 → esm2022}/lib/components/tipo-contacto/models/TipoContacto.mjs +0 -0
  126. /package/{esm2020 → esm2022}/lib/components/ubicacion/models/Ubicacion.mjs +0 -0
  127. /package/{esm2020 → esm2022}/lib/contabilidad/modelos/cuentaContable.model.mjs +0 -0
  128. /package/{esm2020 → esm2022}/lib/contabilidad/modelos/normaInfoFinanciera.model.mjs +0 -0
  129. /package/{esm2020 → esm2022}/lib/globalPrimeNg.mjs +0 -0
  130. /package/{esm2020 → esm2022}/lib/importComponents.mjs +0 -0
  131. /package/{esm2020 → esm2022}/lib/importComponetsConta.mjs +0 -0
  132. /package/{esm2020 → esm2022}/lib/models/PersonaMoral.mjs +0 -0
  133. /package/{esm2020 → esm2022}/lib/models/Usuario.mjs +0 -0
  134. /package/{esm2020 → esm2022}/lib/models/auth.mjs +0 -0
  135. /package/{esm2020 → esm2022}/lib/services/crud.service.mjs +0 -0
  136. /package/{esm2020 → esm2022}/lib/services/global.service.mjs +0 -0
  137. /package/{esm2020 → esm2022}/public_api.mjs +0 -0
  138. /package/{esm2020 → esm2022}/visorus-erp-core.mjs +0 -0
@@ -1,262 +0,0 @@
1
- import { Component, Input, Output, EventEmitter } from '@angular/core';
2
- import { CuentaContableService } from '../../servicios/cuentacontable.service';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../../servicios/cuentacontable.service";
5
- import * as i2 from "@angular/common";
6
- import * as i3 from "primeng/api";
7
- import * as i4 from "primeng/treetable";
8
- import * as i5 from "primeng/button";
9
- import * as i6 from "primeng/inputtext";
10
- import * as i7 from "@angular/forms";
11
- function CclistaComponent_ng_template_3_Template(rf, ctx) { if (rf & 1) {
12
- i0.ɵɵelementStart(0, "tr")(1, "th", 5);
13
- i0.ɵɵtext(2, "Cuenta contable");
14
- i0.ɵɵelementEnd();
15
- i0.ɵɵelementStart(3, "th", 5);
16
- i0.ɵɵtext(4, "Descripci\u00F3n");
17
- i0.ɵɵelementEnd();
18
- i0.ɵɵelementStart(5, "th", 6);
19
- i0.ɵɵtext(6, "Naturaleza");
20
- i0.ɵɵelementEnd();
21
- i0.ɵɵelementStart(7, "th", 7);
22
- i0.ɵɵtext(8, "Tipo");
23
- i0.ɵɵelementEnd();
24
- i0.ɵɵelementStart(9, "th", 8);
25
- i0.ɵɵtext(10, "Acciones");
26
- i0.ɵɵelementEnd()();
27
- } }
28
- function CclistaComponent_ng_template_4_button_12_Template(rf, ctx) { if (rf & 1) {
29
- const _r8 = i0.ɵɵgetCurrentView();
30
- i0.ɵɵelementStart(0, "button", 16);
31
- i0.ɵɵlistener("click", function CclistaComponent_ng_template_4_button_12_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r8); const rowData_r3 = i0.ɵɵnextContext().rowData; const ctx_r6 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r6.selectCuentaContable(rowData_r3)); });
32
- i0.ɵɵelementEnd();
33
- } }
34
- function CclistaComponent_ng_template_4_button_13_Template(rf, ctx) { if (rf & 1) {
35
- const _r11 = i0.ɵɵgetCurrentView();
36
- i0.ɵɵelementStart(0, "button", 16);
37
- i0.ɵɵlistener("click", function CclistaComponent_ng_template_4_button_13_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r11); const rowData_r3 = i0.ɵɵnextContext().rowData; const ctx_r9 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r9.selectCuentaContable(rowData_r3)); });
38
- i0.ɵɵelementEnd();
39
- } }
40
- function CclistaComponent_ng_template_4_Template(rf, ctx) { if (rf & 1) {
41
- i0.ɵɵelementStart(0, "tr")(1, "td", 9);
42
- i0.ɵɵelement(2, "p-treeTableToggler", 10);
43
- i0.ɵɵtext(3);
44
- i0.ɵɵelementEnd();
45
- i0.ɵɵelementStart(4, "td", 9);
46
- i0.ɵɵtext(5);
47
- i0.ɵɵelementEnd();
48
- i0.ɵɵelementStart(6, "td", 11);
49
- i0.ɵɵtext(7);
50
- i0.ɵɵelementEnd();
51
- i0.ɵɵelementStart(8, "td", 12);
52
- i0.ɵɵtext(9);
53
- i0.ɵɵelementEnd();
54
- i0.ɵɵelementStart(10, "td", 13)(11, "div", 14);
55
- i0.ɵɵtemplate(12, CclistaComponent_ng_template_4_button_12_Template, 1, 0, "button", 15);
56
- i0.ɵɵtemplate(13, CclistaComponent_ng_template_4_button_13_Template, 1, 0, "button", 15);
57
- i0.ɵɵelementEnd()()();
58
- } if (rf & 2) {
59
- const rowNode_r2 = ctx.$implicit;
60
- const rowData_r3 = ctx.rowData;
61
- const ctx_r1 = i0.ɵɵnextContext();
62
- i0.ɵɵadvance(2);
63
- i0.ɵɵproperty("rowNode", rowNode_r2);
64
- i0.ɵɵadvance(1);
65
- i0.ɵɵtextInterpolate1(" ", rowData_r3.cuentaContable, " ");
66
- i0.ɵɵadvance(2);
67
- i0.ɵɵtextInterpolate1(" ", rowData_r3.descripcion, " ");
68
- i0.ɵɵadvance(2);
69
- i0.ɵɵtextInterpolate1(" ", rowData_r3.naturaleza, " ");
70
- i0.ɵɵadvance(2);
71
- i0.ɵɵtextInterpolate1(" ", rowData_r3.tipo, " ");
72
- i0.ɵɵadvance(3);
73
- i0.ɵɵproperty("ngIf", ctx_r1.typeAccount == 1 && rowData_r3.cuentaRegistro);
74
- i0.ɵɵadvance(1);
75
- i0.ɵɵproperty("ngIf", ctx_r1.typeAccount == 2 && !rowData_r3.cuentaRegistro);
76
- } }
77
- const _c0 = function () { return { width: "100%" }; };
78
- export class CclistaComponent {
79
- constructor(_cuentaContableService) {
80
- this._cuentaContableService = _cuentaContableService;
81
- this.cuentasContables = [];
82
- this.maxH = 720;
83
- this.query = "";
84
- this.tempAccounts = [];
85
- this.evSelectedAccount = new EventEmitter();
86
- }
87
- ngOnInit() {
88
- this.maxH = window.innerHeight - 320;
89
- this.obtenerCuentasContablesRecursivo();
90
- }
91
- obtenerCuentasContablesRecursivo() {
92
- this._cuentaContableService.obtieneCuentasContablesRecursivo().subscribe((result) => {
93
- if (result) {
94
- this.cuentasContables = result;
95
- this.sortAccounts();
96
- }
97
- });
98
- }
99
- sortAccounts() {
100
- this.cuentasContables.sort(function (a, b) {
101
- // get symbol for string
102
- let characterBreak = '.';
103
- const listA = a.data.cuentaContable.split(characterBreak);
104
- const listB = b.data.cuentaContable.split(characterBreak);
105
- if (listA.length > 0 && listB.length > 0) {
106
- if (listA.length === listB.length) {
107
- for (let i = 0; i < listA.length; i++) {
108
- if (parseInt(listA[i]) > parseInt(listB[i])) {
109
- return 1;
110
- }
111
- if (parseInt(listA[i]) < parseInt(listB[i])) {
112
- return -1;
113
- }
114
- }
115
- return 0;
116
- }
117
- if (listA.length < listB.length) {
118
- for (let i = 0; i < listA.length; i++) {
119
- if (parseInt(listA[i]) > parseInt(listB[i])) {
120
- return 1;
121
- }
122
- if (parseInt(listA[i]) < parseInt(listB[i])) {
123
- return -1;
124
- }
125
- }
126
- return -1;
127
- }
128
- if (listB.length < listA.length) {
129
- for (let i = 0; i < listB.length; i++) {
130
- if (parseInt(listA[i]) > parseInt(listB[i])) {
131
- return 1;
132
- }
133
- if (parseInt(listA[i]) < parseInt(listB[i])) {
134
- return -1;
135
- }
136
- }
137
- return 1;
138
- }
139
- }
140
- return 0;
141
- });
142
- for (let item of this.cuentasContables) {
143
- if (item.children) {
144
- this.sortItem(item);
145
- }
146
- }
147
- this.tempAccounts = this.cuentasContables;
148
- }
149
- sortItem(account) {
150
- account.children.sort(function (a, b) {
151
- // get symbol for string
152
- let characterBreak = '.';
153
- const listA = a.data.cuentaContable.split(characterBreak);
154
- const listB = b.data.cuentaContable.split(characterBreak);
155
- if (listA.length > 0 && listB.length > 0) {
156
- if (listA.length === listB.length) {
157
- for (let i = 0; i < listA.length; i++) {
158
- if (parseInt(listA[i]) > parseInt(listB[i])) {
159
- return 1;
160
- }
161
- if (parseInt(listA[i]) < parseInt(listB[i])) {
162
- return -1;
163
- }
164
- }
165
- return 0;
166
- }
167
- if (listA.length < listB.length) {
168
- for (let i = 0; i < listA.length; i++) {
169
- if (parseInt(listA[i]) > parseInt(listB[i])) {
170
- return 1;
171
- }
172
- if (parseInt(listA[i]) < parseInt(listB[i])) {
173
- return -1;
174
- }
175
- }
176
- return -1;
177
- }
178
- if (listB.length < listA.length) {
179
- for (let i = 0; i < listB.length; i++) {
180
- if (parseInt(listA[i]) > parseInt(listB[i])) {
181
- return 1;
182
- }
183
- if (parseInt(listA[i]) < parseInt(listB[i])) {
184
- return -1;
185
- }
186
- }
187
- return 1;
188
- }
189
- }
190
- return 0;
191
- });
192
- for (let item of account.children) {
193
- this.sortItem(item);
194
- }
195
- }
196
- selectCuentaContable(account) {
197
- this.evSelectedAccount.emit(account);
198
- }
199
- filterAccounts(evt) {
200
- if (!evt) {
201
- const temp = this.resetAccount();
202
- this.cuentasContables = temp;
203
- return;
204
- }
205
- this.cuentasContables = this.browseAccount(this.tempAccounts);
206
- }
207
- resetAccount() {
208
- this.query = '';
209
- let accounts = [];
210
- for (let cc of this.tempAccounts) {
211
- accounts.push(cc);
212
- }
213
- return accounts;
214
- }
215
- browseAccount(accounts) {
216
- let listAccounts = [];
217
- if (this.query === '') {
218
- const temp = this.resetAccount();
219
- this.cuentasContables = temp;
220
- }
221
- else {
222
- for (let account of accounts) {
223
- if (account.data.cuentaContable.toString().toLowerCase().includes(this.query.toLowerCase()) || account.data.descripcion.toString().toLowerCase().includes(this.query.toLowerCase())) {
224
- listAccounts = listAccounts.concat({
225
- data: account.data,
226
- children: this.browseAccount(account.children)
227
- });
228
- }
229
- else {
230
- listAccounts = listAccounts.concat(this.browseAccount(account.children));
231
- }
232
- }
233
- return listAccounts;
234
- }
235
- }
236
- }
237
- /** @nocollapse */ CclistaComponent.ɵfac = function CclistaComponent_Factory(t) { return new (t || CclistaComponent)(i0.ɵɵdirectiveInject(i1.CuentaContableService)); };
238
- /** @nocollapse */ CclistaComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: CclistaComponent, selectors: [["lib-cclista"]], inputs: { isShared: "isShared", typeAccount: "typeAccount" }, outputs: { evSelectedAccount: "evSelectedAccount" }, decls: 5, vars: 8, consts: [["type", "text", "pInputText", "", "placeholder", "Cuenta o descripci\u00F3n", 2, "width", "100%", 3, "ngModel", "ngModelChange", "keyup"], [2, "padding", "10px"], [3, "value", "scrollable", "scrollHeight", "resizableColumns"], ["pTemplate", "header"], ["pTemplate", "body", "style", "width: 100%;"], [2, "width", "150px"], [2, "width", "90px"], [2, "width", "60px"], [2, "width", "200px"], [1, "ui-resizable-column", 2, "width", "150px"], [3, "rowNode"], [1, "ui-resizable-column", 2, "width", "90px"], [1, "ui-resizable-column", 2, "width", "60px"], [1, "ui-resizable-column", 2, "width", "200px"], [1, "button-row"], ["pButton", "", "type", "button", "icon", "pi pi-check", "class", "ui-button-raised ui-button-success", 3, "click", 4, "ngIf"], ["pButton", "", "type", "button", "icon", "pi pi-check", 1, "ui-button-raised", "ui-button-success", 3, "click"]], template: function CclistaComponent_Template(rf, ctx) { if (rf & 1) {
239
- i0.ɵɵelementStart(0, "input", 0);
240
- i0.ɵɵlistener("ngModelChange", function CclistaComponent_Template_input_ngModelChange_0_listener($event) { return ctx.query = $event; })("keyup", function CclistaComponent_Template_input_keyup_0_listener($event) { return ctx.filterAccounts($event); });
241
- i0.ɵɵelementEnd();
242
- i0.ɵɵelementStart(1, "div", 1)(2, "p-treeTable", 2);
243
- i0.ɵɵtemplate(3, CclistaComponent_ng_template_3_Template, 11, 0, "ng-template", 3);
244
- i0.ɵɵtemplate(4, CclistaComponent_ng_template_4_Template, 14, 7, "ng-template", 4);
245
- i0.ɵɵelementEnd()();
246
- } if (rf & 2) {
247
- i0.ɵɵproperty("ngModel", ctx.query);
248
- i0.ɵɵadvance(2);
249
- i0.ɵɵstyleMap(i0.ɵɵpureFunction0(7, _c0));
250
- i0.ɵɵproperty("value", ctx.cuentasContables ? ctx.cuentasContables : ctx.tempAccounts)("scrollable", true)("scrollHeight", ctx.maxH + "px")("resizableColumns", true);
251
- } }, dependencies: [i2.NgIf, i3.PrimeTemplate, i4.TreeTable, i4.TreeTableToggler, i5.ButtonDirective, i6.InputText, i7.DefaultValueAccessor, i7.NgControlStatus, i7.NgModel] });
252
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CclistaComponent, [{
253
- type: Component,
254
- args: [{ selector: 'lib-cclista', template: "<input type=\"text\" style=\"width: 100%;\" pInputText placeholder=\"Cuenta o descripci\u00F3n\" [(ngModel)]=\"query\" (keyup)=\"filterAccounts($event)\">\n\n<div style=\"padding: 10px;\">\n <p-treeTable [value]=\"cuentasContables?cuentasContables:tempAccounts\" [scrollable]=\"true\" [style]=\"{width: '100%'} \" [scrollHeight]=\"maxH + 'px'\" [resizableColumns]=\"true\">\n <ng-template pTemplate=\"header\">\n <tr>\n <th style=\"width: 150px;\">Cuenta contable</th>\n <th style=\"width: 150px;\">Descripci\u00F3n</th>\n <th style=\"width: 90px;\">Naturaleza</th>\n <th style=\"width: 60px;\">Tipo</th>\n <th style=\"width: 200px;\">Acciones</th>\n </tr>\n </ng-template>\n <ng-template pTemplate=\"body\" let-rowNode let-rowData=\"rowData\" style=\"width: 100%;\">\n <tr>\n <td class=\"ui-resizable-column\" style=\"width: 150px;\">\n <p-treeTableToggler [rowNode]=\"rowNode\"></p-treeTableToggler>\n {{rowData.cuentaContable}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 150px;\">\n {{rowData.descripcion}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 90px;\">\n {{rowData.naturaleza}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 60px;\">\n {{rowData.tipo}}\n </td>\n <td class=\"ui-resizable-column\" style=\"width: 200px;\">\n <div class=\"button-row\">\n <button pButton type=\"button\" icon=\"pi pi-check\" class=\"ui-button-raised ui-button-success\" (click)=\"selectCuentaContable(rowData)\" *ngIf=\"typeAccount==1 && rowData.cuentaRegistro\"></button>\n <button pButton type=\"button\" icon=\"pi pi-check\" class=\"ui-button-raised ui-button-success\" (click)=\"selectCuentaContable(rowData)\" *ngIf=\"typeAccount==2 && !rowData.cuentaRegistro\"></button>\n </div>\n </td>\n </tr>\n </ng-template>\n </p-treeTable>\n</div>" }]
255
- }], function () { return [{ type: i1.CuentaContableService }]; }, { isShared: [{
256
- type: Input
257
- }], typeAccount: [{
258
- type: Input
259
- }], evSelectedAccount: [{
260
- type: Output
261
- }] }); })();
262
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2NsaXN0YS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcnAtY29yZS9zcmMvbGliL2NvbnRhYmlsaWRhZC9jb21wb25lbnRlcy9jY2xpc3RhL2NjbGlzdGEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXJwLWNvcmUvc3JjL2xpYi9jb250YWJpbGlkYWQvY29tcG9uZW50ZXMvY2NsaXN0YS9jY2xpc3RhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7Ozs7Ozs7SUNHbkUsMEJBQUksWUFBQTtJQUMwQiwrQkFBZTtJQUFBLGlCQUFLO0lBQzlDLDZCQUEwQjtJQUFBLGdDQUFXO0lBQUEsaUJBQUs7SUFDMUMsNkJBQXlCO0lBQUEsMEJBQVU7SUFBQSxpQkFBSztJQUN4Qyw2QkFBeUI7SUFBQSxvQkFBSTtJQUFBLGlCQUFLO0lBQ2xDLDZCQUEwQjtJQUFBLHlCQUFRO0lBQUEsaUJBQUssRUFBQTs7OztJQW9CL0Isa0NBQXFMO0lBQXpGLDhOQUFTLGVBQUEsdUNBQTZCLENBQUEsSUFBQztJQUFrRCxpQkFBUzs7OztJQUM5TCxrQ0FBc0w7SUFBMUYsK05BQVMsZUFBQSx1Q0FBNkIsQ0FBQSxJQUFDO0lBQW1ELGlCQUFTOzs7SUFqQjNNLDBCQUFJLFlBQUE7SUFFSSx5Q0FBNkQ7SUFDN0QsWUFDSjtJQUFBLGlCQUFLO0lBQ0wsNkJBQXNEO0lBQ2xELFlBQ0o7SUFBQSxpQkFBSztJQUNMLDhCQUFxRDtJQUNqRCxZQUNKO0lBQUEsaUJBQUs7SUFDTCw4QkFBcUQ7SUFDakQsWUFDSjtJQUFBLGlCQUFLO0lBQ0wsK0JB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QUMsUUFBUSxDQUFDO3FCQUMvQyxDQUFDLENBQUM7aUJBQ0o7cUJBQU07b0JBQ0wsWUFBWSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztpQkFDMUU7YUFDRjtZQUNELE9BQU8sWUFBWSxDQUFDO1NBQ3JCO0lBQ0gsQ0FBQzs7bUdBakxVLGdCQUFnQjtrR0FBaEIsZ0JBQWdCO1FDVDdCLGdDQUEySTtRQUFyRCx3SUFBbUIscUZBQVUsMEJBQXNCLElBQWhDO1FBQXpHLGlCQUEySTtRQUUzSSw4QkFBNEIscUJBQUE7UUFFcEIsa0ZBUWM7UUFDZCxrRkFzQmM7UUFDbEIsaUJBQWMsRUFBQTs7UUFwQ29FLG1DQUFtQjtRQUdYLGVBQTBCO1FBQTFCLHlDQUEwQjtRQUF2RyxzRkFBd0Qsb0JBQUEsaUNBQUEsMEJBQUE7O3VGRE01RCxnQkFBZ0I7Y0FMNUIsU0FBUzsyQkFDRSxhQUFhO3dFQU92QixRQUFRO2tCQURQLEtBQUs7WUFHTixXQUFXO2tCQURWLEtBQUs7WUFHTixpQkFBaUI7a0JBRGhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDdWVudGFDb250YWJsZU1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxvcy9jdWVudGFDb250YWJsZS5tb2RlbCc7XG5pbXBvcnQgeyBDdWVudGFDb250YWJsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNpb3MvY3VlbnRhY29udGFibGUuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1jY2xpc3RhJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NjbGlzdGEuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jY2xpc3RhLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDY2xpc3RhQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKVxuICBpc1NoYXJlZDogYm9vbGVhbjtcbiAgQElucHV0KClcbiAgdHlwZUFjY291bnQ6IG51bWJlcjtcbiAgQE91dHB1dCgpXG4gIGV2U2VsZWN0ZWRBY2NvdW50OiBFdmVudEVtaXR0ZXI8Q3VlbnRhQ29udGFibGVNb2RlbD47XG4gIGN1ZW50YXNDb250YWJsZXM6IGFueVtdID0gW107XG4gIG1heEggPSA3MjA7XG4gIHF1ZXJ5OiBhbnkgPSBcIlwiO1xuICB0ZW1wQWNjb3VudHM6IEN1ZW50YUNvbnRhYmxlTW9kZWxbXSA9IFtdO1xuXG4gIGN1ZW50YVNlbGVjY2lvbmFkYTogQ3VlbnRhQ29udGFibGVNb2RlbDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9jdWVudGFDb250YWJsZVNlcnZpY2U6IEN1ZW50YUNvbnRhYmxlU2VydmljZSkge1xuICAgIHRoaXMuZXZTZWxlY3RlZEFjY291bnQgPSBuZXcgRXZlbnRFbWl0dGVyPEN1ZW50YUNvbnRhYmxlTW9kZWw+KCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLm1heEggPSB3aW5kb3cuaW5uZXJIZWlnaHQgLSAzMjA7XG4gICAgdGhpcy5vYnRlbmVyQ3VlbnRhc0NvbnRhYmxlc1JlY3Vyc2l2bygpO1xuICB9XG5cbiAgb2J0ZW5lckN1ZW50YXNDb250YWJsZXNSZWN1cnNpdm8oKSB7XG4gICAgdGhpcy5fY3VlbnRhQ29udGFibGVTZXJ2aWNlLm9idGllbmVDdWVudGFzQ29udGFibGVzUmVjdXJzaXZvKCkuc3Vic2NyaWJlKChyZXN1bHQ6IGFueSkgPT4ge1xuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICB0aGlzLmN1ZW50YXNDb250YWJsZXMgPSByZXN1bHQ7XG4gICAgICAgIHRoaXMuc29ydEFjY291bnRzKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBzb3J0QWNjb3VudHMoKSB7XG4gICAgdGhpcy5jdWVudGFzQ29udGFibGVzLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHtcbiAgICAgIC8vIGdldCBzeW1ib2wgZm9yIHN0cmluZ1xuICAgICAgbGV0IGNoYXJhY3RlckJyZWFrID0gJy4nO1xuICAgICAgY29uc3QgbGlzdEE6IGFueVtdID0gYS5kYXRhLmN1ZW50YUNvbnRhYmxlLnNwbGl0KGNoYXJhY3RlckJyZWFrKTtcbiAgICAgIGNvbnN0IGxpc3RCOiBhbnlbXSA9IGIuZGF0YS5jdWVudGFDb250YWJsZS5zcGxpdChjaGFyYWN0ZXJCcmVhayk7XG5cbiAgICAgIGlmIChsaXN0QS5sZW5ndGggPiAwICYmIGxpc3RCLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKGxpc3RBLmxlbmd0aCA9PT0gbGlzdEIubGVuZ3RoKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0QS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKHBhcnNlSW50KGxpc3RBW2ldKSA+IHBhcnNlSW50KGxpc3RCW2ldKSkge1xuICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwYXJzZUludChsaXN0QVtpXSkgPCBwYXJzZUludChsaXN0QltpXSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAobGlzdEEubGVuZ3RoIDwgbGlzdEIubGVuZ3RoKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0QS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKHBhcnNlSW50KGxpc3RBW2ldKSA+IHBhcnNlSW50KGxpc3RCW2ldKSkge1xuICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwYXJzZUludChsaXN0QVtpXSkgPCBwYXJzZUludChsaXN0QltpXSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxpc3RCLmxlbmd0aCA8IGxpc3RBLmxlbmd0aCkge1xuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdEIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChwYXJzZUludChsaXN0QVtpXSkgPiBwYXJzZUludChsaXN0QltpXSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocGFyc2VJbnQobGlzdEFbaV0pIDwgcGFyc2VJbnQobGlzdEJbaV0pKSB7XG4gICAgICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiAwO1xuICAgIH0pO1xuICAgIGZvciAobGV0IGl0ZW0gb2YgdGhpcy5jdWVudGFzQ29udGFibGVzKSB7XG4gICAgICBpZiAoaXRlbS5jaGlsZHJlbikge1xuICAgICAgICB0aGlzLnNvcnRJdGVtKGl0ZW0pO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLnRlbXBBY2NvdW50cyA9IHRoaXMuY3VlbnRhc0NvbnRhYmxlcztcbiAgfVxuXG4gIHNvcnRJdGVtKGFjY291bnQ6IGFueSkge1xuICAgIGFjY291bnQuY2hpbGRyZW4uc29ydChmdW5jdGlvbiAoYSwgYikge1xuICAgICAgLy8gZ2V0IHN5bWJvbCBmb3Igc3RyaW5nXG4gICAgICBsZXQgY2hhcmFjdGVyQnJlYWsgPSAnLic7XG4gICAgICBjb25zdCBsaXN0QTogYW55W10gPSBhLmRhdGEuY3VlbnRhQ29udGFibGUuc3BsaXQoY2hhcmFjdGVyQnJlYWspO1xuICAgICAgY29uc3QgbGlzdEI6IGFueVtdID0gYi5kYXRhLmN1ZW50YUNvbnRhYmxlLnNwbGl0KGNoYXJhY3RlckJyZWFrKTtcbiAgICAgIGlmIChsaXN0QS5sZW5ndGggPiAwICYmIGxpc3RCLmxlbmd0aCA+IDApIHtcbiAgICAgICAgaWYgKGxpc3RBLmxlbmd0aCA9PT0gbGlzdEIubGVuZ3RoKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0QS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKHBhcnNlSW50KGxpc3RBW2ldKSA+IHBhcnNlSW50KGxpc3RCW2ldKSkge1xuICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwYXJzZUludChsaXN0QVtpXSkgPCBwYXJzZUludChsaXN0QltpXSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAobGlzdEEubGVuZ3RoIDwgbGlzdEIubGVuZ3RoKSB7XG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsaXN0QS5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKHBhcnNlSW50KGxpc3RBW2ldKSA+IHBhcnNlSW50KGxpc3RCW2ldKSkge1xuICAgICAgICAgICAgICByZXR1cm4gMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChwYXJzZUludChsaXN0QVtpXSkgPCBwYXJzZUludChsaXN0QltpXSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gLTE7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGxpc3RCLmxlbmd0aCA8IGxpc3RBLmxlbmd0aCkge1xuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGlzdEIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChwYXJzZUludChsaXN0QVtpXSkgPiBwYXJzZUludChsaXN0QltpXSkpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocGFyc2VJbnQobGlzdEFbaV0pIDwgcGFyc2VJbnQobGlzdEJbaV0pKSB7XG4gICAgICAgICAgICAgIHJldHVybiAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiAwO1xuICAgIH0pO1xuICAgIGZvciAobGV0IGl0ZW0gb2YgYWNjb3VudC5jaGlsZHJlbikge1xuICAgICAgdGhpcy5zb3J0SXRlbShpdGVtKTtcbiAgICB9XG4gIH1cblxuXG5cbiAgc2VsZWN0Q3VlbnRhQ29udGFibGUoYWNjb3VudDogQ3VlbnRhQ29udGFibGVNb2RlbCkge1xuICAgIHRoaXMuZXZTZWxlY3RlZEFjY291bnQuZW1pdChhY2NvdW50KTtcbiAgfVxuXG4gIGZpbHRlckFjY291bnRzKGV2dDogYW55KSB7XG4gICAgaWYgKCFldnQpIHtcbiAgICAgIGNvbnN0IHRlbXAgPSB0aGlzLnJlc2V0QWNjb3VudCgpO1xuICAgICAgdGhpcy5jdWVudGFzQ29udGFibGVzID0gdGVtcDtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jdWVudGFzQ29udGFibGVzID0gdGhpcy5icm93c2VBY2NvdW50KHRoaXMudGVtcEFjY291bnRzKTtcbiAgfVxuXG4gIHJlc2V0QWNjb3VudCgpIHtcbiAgICB0aGlzLnF1ZXJ5ID0gJyc7XG4gICAgbGV0IGFjY291bnRzID0gW107XG4gICAgZm9yIChsZXQgY2Mgb2YgdGhpcy50ZW1wQWNjb3VudHMpIHtcbiAgICAgIGFjY291bnRzLnB1c2goY2MpO1xuICAgIH1cbiAgICByZXR1cm4gYWNjb3VudHM7XG4gIH1cblxuXG5cbiAgYnJvd3NlQWNjb3VudChhY2NvdW50czogYW55KSB7XG4gICAgbGV0IGxpc3RBY2NvdW50czogYW55W10gPSBbXTtcbiAgICBpZiAodGhpcy5xdWVyeSA9PT0gJycpIHtcbiAgICAgIGNvbnN0IHRlbXAgPSB0aGlzLnJlc2V0QWNjb3VudCgpO1xuICAgICAgdGhpcy5jdWVudGFzQ29udGFibGVzID0gdGVtcDtcbiAgICB9IGVsc2Uge1xuICAgICAgZm9yIChsZXQgYWNjb3VudCBvZiBhY2NvdW50cykge1xuICAgICAgICBpZiAoYWNjb3VudC5kYXRhLmN1ZW50YUNvbnRhYmxlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLnF1ZXJ5LnRvTG93ZXJDYXNlKCkpIHx8IGFjY291bnQuZGF0YS5kZXNjcmlwY2lvbi50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5xdWVyeS50b0xvd2VyQ2FzZSgpKSkge1xuICAgICAgICAgIGxpc3RBY2NvdW50cyA9IGxpc3RBY2NvdW50cy5jb25jYXQoe1xuICAgICAgICAgICAgZGF0YTogYWNjb3VudC5kYXRhLFxuICAgICAgICAgICAgY2hpbGRyZW46IHRoaXMuYnJvd3NlQWNjb3VudChhY2NvdW50LmNoaWxkcmVuKVxuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxpc3RBY2NvdW50cyA9IGxpc3RBY2NvdW50cy5jb25jYXQodGhpcy5icm93c2VBY2NvdW50KGFjY291bnQuY2hpbGRyZW4pKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIGxpc3RBY2NvdW50cztcbiAgICB9XG4gIH1cblxufVxuIiwiPGlucHV0IHR5cGU9XCJ0ZXh0XCIgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIiBwSW5wdXRUZXh0IHBsYWNlaG9sZGVyPVwiQ3VlbnRhIG8gZGVzY3JpcGNpw7NuXCIgWyhuZ01vZGVsKV09XCJxdWVyeVwiIChrZXl1cCk9XCJmaWx0ZXJBY2NvdW50cygkZXZlbnQpXCI+XG5cbjxkaXYgc3R5bGU9XCJwYWRkaW5nOiAxMHB4O1wiPlxuICAgIDxwLXRyZWVUYWJsZSBbdmFsdWVdPVwiY3VlbnRhc0NvbnRhYmxlcz9jdWVudGFzQ29udGFibGVzOnRlbXBBY2NvdW50c1wiIFtzY3JvbGxhYmxlXT1cInRydWVcIiBbc3R5bGVdPVwie3dpZHRoOiAnMTAwJSd9IFwiIFtzY3JvbGxIZWlnaHRdPVwibWF4SCArICdweCdcIiBbcmVzaXphYmxlQ29sdW1uc109XCJ0cnVlXCI+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogMTUwcHg7XCI+Q3VlbnRhIGNvbnRhYmxlPC90aD5cbiAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogMTUwcHg7XCI+RGVzY3JpcGNpw7NuPC90aD5cbiAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogOTBweDtcIj5OYXR1cmFsZXphPC90aD5cbiAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogNjBweDtcIj5UaXBvPC90aD5cbiAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJ3aWR0aDogMjAwcHg7XCI+QWNjaW9uZXM8L3RoPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImJvZHlcIiBsZXQtcm93Tm9kZSBsZXQtcm93RGF0YT1cInJvd0RhdGFcIiBzdHlsZT1cIndpZHRoOiAxMDAlO1wiPlxuICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInVpLXJlc2l6YWJsZS1jb2x1bW5cIiBzdHlsZT1cIndpZHRoOiAxNTBweDtcIj5cbiAgICAgICAgICAgICAgICAgICAgPHAtdHJlZVRhYmxlVG9nZ2xlciBbcm93Tm9kZV09XCJyb3dOb2RlXCI+PC9wLXRyZWVUYWJsZVRvZ2dsZXI+XG4gICAgICAgICAgICAgICAgICAgIHt7cm93RGF0YS5jdWVudGFDb250YWJsZX19XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ1aS1yZXNpemFibGUtY29sdW1uXCIgc3R5bGU9XCJ3aWR0aDogMTUwcHg7XCI+XG4gICAgICAgICAgICAgICAgICAgIHt7cm93RGF0YS5kZXNjcmlwY2lvbn19XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ1aS1yZXNpemFibGUtY29sdW1uXCIgc3R5bGU9XCJ3aWR0aDogOTBweDtcIj5cbiAgICAgICAgICAgICAgICAgICAge3tyb3dEYXRhLm5hdHVyYWxlemF9fVxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkIGNsYXNzPVwidWktcmVzaXphYmxlLWNvbHVtblwiIHN0eWxlPVwid2lkdGg6IDYwcHg7XCI+XG4gICAgICAgICAgICAgICAgICAgIHt7cm93RGF0YS50aXBvfX1cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDx0ZCBjbGFzcz1cInVpLXJlc2l6YWJsZS1jb2x1bW5cIiBzdHlsZT1cIndpZHRoOiAyMDBweDtcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJ1dHRvbi1yb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gcEJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgaWNvbj1cInBpIHBpLWNoZWNrXCIgY2xhc3M9XCJ1aS1idXR0b24tcmFpc2VkIHVpLWJ1dHRvbi1zdWNjZXNzXCIgKGNsaWNrKT1cInNlbGVjdEN1ZW50YUNvbnRhYmxlKHJvd0RhdGEpXCIgKm5nSWY9XCJ0eXBlQWNjb3VudD09MSAmJiByb3dEYXRhLmN1ZW50YVJlZ2lzdHJvXCI+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHBCdXR0b24gdHlwZT1cImJ1dHRvblwiIGljb249XCJwaSBwaS1jaGVja1wiIGNsYXNzPVwidWktYnV0dG9uLXJhaXNlZCB1aS1idXR0b24tc3VjY2Vzc1wiIChjbGljayk9XCJzZWxlY3RDdWVudGFDb250YWJsZShyb3dEYXRhKVwiICpuZ0lmPVwidHlwZUFjY291bnQ9PTIgJiYgIXJvd0RhdGEuY3VlbnRhUmVnaXN0cm9cIj48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9wLXRyZWVUYWJsZT5cbjwvZGl2PiJdfQ==
@@ -1,63 +0,0 @@
1
- import { Component, ViewChild, Input, Output, EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "primeng/dialog";
5
- import * as i3 from "../cclista/cclista.component";
6
- const _c0 = ["dialog"];
7
- const _c1 = function (a0) { return { "width": a0, "min-width": "200px" }; };
8
- const _c2 = function (a0) { return { "height": a0 }; };
9
- export class CcseleccionDialogComponent {
10
- constructor() {
11
- this.cuentasContables = [];
12
- this.maxH = 720;
13
- this.maxW = 0;
14
- this.flagModal = true;
15
- this.size = 350;
16
- this.maxH = window.innerHeight - 370;
17
- this.maxW = window.innerWidth;
18
- this.size = this.maxW - 50;
19
- this.evSelectedAccount = new EventEmitter();
20
- }
21
- ngOnInit() {
22
- }
23
- getAccount(account) {
24
- this.evSelectedAccount.emit(account);
25
- }
26
- hiddenDialog(evt) {
27
- this.evSelectedAccount.emit(null);
28
- }
29
- }
30
- /** @nocollapse */ CcseleccionDialogComponent.ɵfac = function CcseleccionDialogComponent_Factory(t) { return new (t || CcseleccionDialogComponent)(); };
31
- /** @nocollapse */ CcseleccionDialogComponent.ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: CcseleccionDialogComponent, selectors: [["lib-ccseleccion-dialog"]], viewQuery: function CcseleccionDialogComponent_Query(rf, ctx) { if (rf & 1) {
32
- i0.ɵɵviewQuery(_c0, 7);
33
- } if (rf & 2) {
34
- let _t;
35
- i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dialog = _t.first);
36
- } }, inputs: { tipoCuenta: "tipoCuenta", displayShowCuentas: "displayShowCuentas" }, outputs: { evSelectedAccount: "evSelectedAccount" }, decls: 3, vars: 17, consts: [["header", "Selecciona cuenta contable", 3, "visible", "modal", "minY", "baseZIndex", "blockScroll", "draggable", "maximizable", "visibleChange", "onHide"], [1, "padding10", 3, "ngStyle"], [3, "isShared", "typeAccount", "evSelectedAccount"]], template: function CcseleccionDialogComponent_Template(rf, ctx) { if (rf & 1) {
37
- i0.ɵɵelementStart(0, "p-dialog", 0);
38
- i0.ɵɵlistener("visibleChange", function CcseleccionDialogComponent_Template_p_dialog_visibleChange_0_listener($event) { return ctx.displayShowCuentas = $event; })("onHide", function CcseleccionDialogComponent_Template_p_dialog_onHide_0_listener($event) { return ctx.hiddenDialog($event); });
39
- i0.ɵɵelementStart(1, "div", 1)(2, "lib-cclista", 2);
40
- i0.ɵɵlistener("evSelectedAccount", function CcseleccionDialogComponent_Template_lib_cclista_evSelectedAccount_2_listener($event) { return ctx.getAccount($event); });
41
- i0.ɵɵelementEnd()()();
42
- } if (rf & 2) {
43
- i0.ɵɵstyleMap(i0.ɵɵpureFunction1(13, _c1, ctx.size + "px"));
44
- i0.ɵɵproperty("visible", ctx.displayShowCuentas)("modal", true)("minY", 70)("baseZIndex", 10000)("blockScroll", true)("draggable", false)("blockScroll", true)("maximizable", true);
45
- i0.ɵɵadvance(1);
46
- i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(15, _c2, ctx.maxH + 200 + "px"));
47
- i0.ɵɵadvance(1);
48
- i0.ɵɵproperty("isShared", true)("typeAccount", ctx.tipoCuenta);
49
- } }, dependencies: [i1.NgStyle, i2.Dialog, i3.CclistaComponent] });
50
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CcseleccionDialogComponent, [{
51
- type: Component,
52
- args: [{ selector: 'lib-ccseleccion-dialog', template: "<p-dialog header=\"Selecciona cuenta contable\" [(visible)]=\"displayShowCuentas\" [modal]=\"true\" [style]=\"{'width': size+'px', 'min-width': '200px'}\" [minY]=\"70\" [baseZIndex]=\"10000\" (onHide)=\"hiddenDialog($event)\" [blockScroll]=\"true\" [draggable]=\"false\" [blockScroll]=\"true\"\n [maximizable]=\"true\">\n <div class=\"padding10\" [ngStyle]=\"{'height': maxH+200+'px'}\">\n <lib-cclista [isShared]=\"true\" [typeAccount]=\"tipoCuenta\" (evSelectedAccount)=\"getAccount($event)\"></lib-cclista>\n </div>\n</p-dialog>" }]
53
- }], function () { return []; }, { dialog: [{
54
- type: ViewChild,
55
- args: ["dialog", { static: true }]
56
- }], tipoCuenta: [{
57
- type: Input
58
- }], displayShowCuentas: [{
59
- type: Input
60
- }], evSelectedAccount: [{
61
- type: Output
62
- }] }); })();
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2NzZWxlY2Npb24tZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VycC1jb3JlL3NyYy9saWIvY29udGFiaWxpZGFkL2NvbXBvbmVudGVzL2Njc2VsZWNjaW9uLWRpYWxvZy9jY3NlbGVjY2lvbi1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXJwLWNvcmUvc3JjL2xpYi9jb250YWJpbGlkYWQvY29tcG9uZW50ZXMvY2NzZWxlY2Npb24tZGlhbG9nL2Njc2VsZWNjaW9uLWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7QUFRMUYsTUFBTSxPQUFPLDBCQUEwQjtJQWtCckM7UUFaQSxxQkFBZ0IsR0FBUSxFQUFFLENBQUM7UUFHM0IsU0FBSSxHQUFHLEdBQUcsQ0FBQztRQUtYLFNBQUksR0FBRyxDQUFDLENBQUM7UUFDVCxjQUFTLEdBQVksSUFBSSxDQUFDO1FBRTFCLFNBQUksR0FBRyxHQUFHLENBQUM7UUFFVCxJQUFJLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUM5QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBdUIsQ0FBQztJQUNuRSxDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFRCxVQUFVLENBQUMsT0FBVztRQUNwQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxZQUFZLENBQUMsR0FBUTtRQUNuQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7O3VIQWxDVSwwQkFBMEI7NEdBQTFCLDBCQUEwQjs7Ozs7O1FDUnZDLG1DQUN5QjtRQURxQixrS0FBZ0Msb0dBQWlILHdCQUFvQixJQUFySTtRQUUxRSw4QkFBNkQscUJBQUE7UUFDQywwSUFBcUIsc0JBQWtCLElBQUM7UUFBQyxpQkFBYyxFQUFBLEVBQUE7O1FBSDNCLDJEQUFvRDtRQUFwRyxnREFBZ0MsZUFBQSxZQUFBLHFCQUFBLHFCQUFBLG9CQUFBLHFCQUFBLHFCQUFBO1FBRW5ELGVBQXFDO1FBQXJDLDRFQUFxQztRQUMzQyxlQUFpQjtRQUFqQiwrQkFBaUIsK0JBQUE7O3VGREt6QiwwQkFBMEI7Y0FMdEMsU0FBUzsyQkFDRSx3QkFBd0I7c0NBS0csTUFBTTtrQkFBMUMsU0FBUzttQkFBQyxRQUFRLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDO1lBRW5DLFVBQVU7a0JBRFQsS0FBSztZQUdOLGtCQUFrQjtrQkFEakIsS0FBSztZQUlOLGlCQUFpQjtrQkFEaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBWaWV3Q2hpbGQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VlbnRhQ29udGFibGVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsb3MvY3VlbnRhQ29udGFibGUubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItY2NzZWxlY2Npb24tZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Njc2VsZWNjaW9uLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Njc2VsZWNjaW9uLWRpYWxvZy5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2NzZWxlY2Npb25EaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAVmlld0NoaWxkKFwiZGlhbG9nXCIsIHtzdGF0aWM6IHRydWV9KSBkaWFsb2c7XG4gIEBJbnB1dCgpXG4gIHRpcG9DdWVudGE6IG51bWJlcjsgLy8gMTogcmVnaXN0cm8gMjogY3VlbnRhIG1heW9yXG4gIEBJbnB1dCgpXG4gIGRpc3BsYXlTaG93Q3VlbnRhczogYm9vbGVhbjtcbiAgY3VlbnRhc0NvbnRhYmxlczogYW55ID0gW107XG4gIEBPdXRwdXQoKVxuICBldlNlbGVjdGVkQWNjb3VudDogRXZlbnRFbWl0dGVyPEN1ZW50YUNvbnRhYmxlTW9kZWw+O1xuICBtYXhIID0gNzIwO1xuICBpc19tb3ZpbDogYm9vbGVhbjtcbiAgaXNfbWVkaWE6IGJvb2xlYW47XG4gIGlzX2xhcmdlOiBib29sZWFuO1xuXG4gIG1heFcgPSAwO1xuICBmbGFnTW9kYWw6IGJvb2xlYW4gPSB0cnVlO1xuICBjb2xzOiBhbnlbXTtcbiAgc2l6ZSA9IDM1MDtcbiAgY29uc3RydWN0b3IoKSB7IFxuICAgIHRoaXMubWF4SCA9IHdpbmRvdy5pbm5lckhlaWdodCAtIDM3MDtcbiAgICB0aGlzLm1heFcgPSB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICB0aGlzLnNpemUgPSB0aGlzLm1heFcgLSA1MDtcbiAgICB0aGlzLmV2U2VsZWN0ZWRBY2NvdW50ID0gbmV3IEV2ZW50RW1pdHRlcjxDdWVudGFDb250YWJsZU1vZGVsPigpO1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gIH1cblxuICBnZXRBY2NvdW50KGFjY291bnQ6YW55KXtcbiAgICB0aGlzLmV2U2VsZWN0ZWRBY2NvdW50LmVtaXQoYWNjb3VudCk7XG4gIH1cblxuICBoaWRkZW5EaWFsb2coZXZ0OiBhbnkpIHtcbiAgICB0aGlzLmV2U2VsZWN0ZWRBY2NvdW50LmVtaXQobnVsbCk7XG4gIH1cblxufVxuIiwiPHAtZGlhbG9nIGhlYWRlcj1cIlNlbGVjY2lvbmEgY3VlbnRhIGNvbnRhYmxlXCIgWyh2aXNpYmxlKV09XCJkaXNwbGF5U2hvd0N1ZW50YXNcIiBbbW9kYWxdPVwidHJ1ZVwiIFtzdHlsZV09XCJ7J3dpZHRoJzogc2l6ZSsncHgnLCAnbWluLXdpZHRoJzogJzIwMHB4J31cIiAgW21pblldPVwiNzBcIiBbYmFzZVpJbmRleF09XCIxMDAwMFwiIChvbkhpZGUpPVwiaGlkZGVuRGlhbG9nKCRldmVudClcIiBbYmxvY2tTY3JvbGxdPVwidHJ1ZVwiIFtkcmFnZ2FibGVdPVwiZmFsc2VcIiBbYmxvY2tTY3JvbGxdPVwidHJ1ZVwiXG4gICAgW21heGltaXphYmxlXT1cInRydWVcIj5cbiAgICA8ZGl2IGNsYXNzPVwicGFkZGluZzEwXCIgW25nU3R5bGVdPVwieydoZWlnaHQnOiBtYXhIKzIwMCsncHgnfVwiPlxuICAgICAgICA8bGliLWNjbGlzdGEgW2lzU2hhcmVkXT1cInRydWVcIiBbdHlwZUFjY291bnRdPVwidGlwb0N1ZW50YVwiIChldlNlbGVjdGVkQWNjb3VudCk9XCJnZXRBY2NvdW50KCRldmVudClcIj48L2xpYi1jY2xpc3RhPlxuICAgIDwvZGl2PlxuPC9wLWRpYWxvZz4iXX0=
@@ -1,90 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { of, throwError } from 'rxjs';
3
- import { catchError, tap } from 'rxjs/operators';
4
- import { ToastrService } from 'ngx-toastr';
5
- import { LoginModalService } from '../components/login-modal/login-modal.service';
6
- import { LoadingScreenService } from '../components/loading-screen/loading-screen.service';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../components/login-modal/login-modal.service";
9
- import * as i2 from "ngx-toastr";
10
- import * as i3 from "../components/loading-screen/loading-screen.service";
11
- export class httpInterceptor {
12
- constructor(loginModalService, toastrService, loadingScreenService) {
13
- this.loginModalService = loginModalService;
14
- this.toastrService = toastrService;
15
- this.loadingScreenService = loadingScreenService;
16
- }
17
- intercept(request, next) {
18
- this.loadingScreenService.startLoading(); // this.loadingService.start();
19
- return next.handle(request).pipe(catchError((error, caught) => {
20
- this.loadingScreenService.stopLoading();
21
- this.handleError(error);
22
- return throwError(error);
23
- }), tap((res) => {
24
- // @ts-ignore
25
- const body = (res.body) ? res.body : null;
26
- if (res.type !== 0 && res.type === 4) {
27
- this.loadingScreenService.stopLoading();
28
- }
29
- if (body) {
30
- let message = (body.success) ? body.success : null;
31
- if (message) {
32
- this.toastrService.success(message, 'Exito', {
33
- timeOut: 3000, closeButton: true
34
- });
35
- }
36
- }
37
- }));
38
- }
39
- handleError(err) {
40
- if (err.status === 401 || err.status === 403) {
41
- if (err.status === 401) {
42
- //this.router.navigateByUrl('/login');
43
- // this.router.navigateByUrl('/sing_out');
44
- this.loginModalService.showModal();
45
- }
46
- if (err.status === 403)
47
- this.toastrService.error('No tiene permiso sobre esta accion', 'Error', {
48
- timeOut: 5000
49
- });
50
- return of(err.message);
51
- }
52
- if (err.status !== 401 && err.status !== 403 && err.status !== 409) {
53
- this.toastrService.error('Ocurrio un error al procesar su solicitud', 'Error', {
54
- timeOut: 5000
55
- });
56
- }
57
- this.readError(err);
58
- return of(err);
59
- }
60
- readError(respuesta) {
61
- if (respuesta.error) {
62
- if (respuesta.error.error)
63
- if (respuesta.error.error.message) {
64
- this.toastrService.error(respuesta.error.error.message, 'Error', {
65
- timeOut: 3000
66
- });
67
- }
68
- if (respuesta.error.message) {
69
- this.toastrService.error(respuesta.error.message, 'Error', {
70
- timeOut: 3000
71
- });
72
- }
73
- if (respuesta.error._errors) {
74
- if (Array.isArray(respuesta.error._errors))
75
- for (let indexError = 0; indexError < respuesta.error._errors.length; indexError++) {
76
- this.toastrService.error(respuesta.error._errors[indexError].message, 'Error', {
77
- timeOut: 3000,
78
- closeButton: true
79
- });
80
- }
81
- }
82
- }
83
- }
84
- }
85
- /** @nocollapse */ httpInterceptor.ɵfac = function httpInterceptor_Factory(t) { return new (t || httpInterceptor)(i0.ɵɵinject(i1.LoginModalService), i0.ɵɵinject(i2.ToastrService), i0.ɵɵinject(i3.LoadingScreenService)); };
86
- /** @nocollapse */ httpInterceptor.ɵprov = /** @pureOrBreakMyCode */ i0.ɵɵdefineInjectable({ token: httpInterceptor, factory: httpInterceptor.ɵfac });
87
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(httpInterceptor, [{
88
- type: Injectable
89
- }], function () { return [{ type: i1.LoginModalService }, { type: i2.ToastrService }, { type: i3.LoadingScreenService }]; }, null); })();
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cEludGVyY2VwdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXJwLWNvcmUvc3JjL2xpYi9odHRwSW50ZXJjZXB0b3IvaHR0cEludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsT0FBTyxFQUFjLEVBQUUsRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFEQUFxRCxDQUFDOzs7OztBQUczRixNQUFNLE9BQU8sZUFBZTtJQUN4QixZQUNZLGlCQUFvQyxFQUNuQyxhQUE0QixFQUMvQixvQkFBMkM7UUFGekMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNuQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUMvQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXVCO0lBRXJELENBQUM7SUFFRCxTQUFTLENBQUMsT0FBeUIsRUFBRSxJQUFpQjtRQUVuRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQSwrQkFBK0I7UUFDdkUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDMUQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEIsT0FBTyxVQUFVLENB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QUFLLENBQUMsT0FBTyxDQUFDO29CQUMxQyxLQUFLLElBQUksVUFBVSxHQUFHLENBQUMsRUFBRSxVQUFVLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxFQUFFO3dCQUNoRixJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFOzRCQUMzRSxPQUFPLEVBQUUsSUFBSTs0QkFDYixXQUFXLEVBQUUsSUFBSTt5QkFDcEIsQ0FBQyxDQUFDO3FCQUNOO2FBQ0o7U0FDSjtJQUVMLENBQUM7O2lHQWhGUSxlQUFlO29HQUFmLGVBQWUsV0FBZixlQUFlO3VGQUFmLGVBQWU7Y0FEM0IsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgSHR0cFJlcXVlc3QsXG4gICAgSHR0cEhhbmRsZXIsXG4gICAgSHR0cEV2ZW50LFxuICAgIEh0dHBJbnRlcmNlcHRvciwgSHR0cEVycm9yUmVzcG9uc2Vcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgVG9hc3RyU2VydmljZSB9IGZyb20gJ25neC10b2FzdHInO1xuaW1wb3J0IHsgTG9naW5Nb2RhbFNlcnZpY2UgfSBmcm9tICcuLi9jb21wb25lbnRzL2xvZ2luLW1vZGFsL2xvZ2luLW1vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9hZGluZ1NjcmVlblNlcnZpY2UgfSBmcm9tICcuLi9jb21wb25lbnRzL2xvYWRpbmctc2NyZWVuL2xvYWRpbmctc2NyZWVuLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgaHR0cEludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBsb2dpbk1vZGFsU2VydmljZTogTG9naW5Nb2RhbFNlcnZpY2UsXG4gICAgICAgICBwcml2YXRlIHRvYXN0clNlcnZpY2U6IFRvYXN0clNlcnZpY2UsXG4gICAgICBwcml2YXRlIGxvYWRpbmdTY3JlZW5TZXJ2aWNlIDogTG9hZGluZ1NjcmVlblNlcnZpY2VcbiAgICAgICAgICkge1xuICAgIH1cblxuICAgIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcblxuICAgICAgIHRoaXMubG9hZGluZ1NjcmVlblNlcnZpY2Uuc3RhcnRMb2FkaW5nKCk7Ly8gdGhpcy5sb2FkaW5nU2VydmljZS5zdGFydCgpO1xuICAgICAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxdWVzdCkucGlwZShjYXRjaEVycm9yKChlcnJvciwgY2F1Z2h0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmdTY3JlZW5TZXJ2aWNlLnN0b3BMb2FkaW5nKCk7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUVycm9yKGVycm9yKTtcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yKTtcbiAgICAgICAgfSkgYXMgYW55LCB0YXAoKHJlcyA6IGFueSkgPT4ge1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgY29uc3QgYm9keSA9IChyZXMuYm9keSkgPyByZXMuYm9keSA6IG51bGw7XG4gICAgICAgICAgICBpZihyZXMudHlwZSAhPT0gMCAgJiYgIHJlcy50eXBlID09PSA0KXtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZ1NjcmVlblNlcnZpY2Uuc3RvcExvYWRpbmcoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChib2R5KSB7XG4gICAgICAgICAgICAgICAgbGV0IG1lc3NhZ2UgPSAoYm9keS5zdWNjZXNzKSA/IGJvZHkuc3VjY2VzcyA6IG51bGw7XG5cbiAgICAgICAgICAgICAgICBpZiAobWVzc2FnZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRvYXN0clNlcnZpY2Uuc3VjY2VzcyhtZXNzYWdlLCAnRXhpdG8nLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lT3V0OiAzMDAwLCBjbG9zZUJ1dHRvbjogdHJ1ZVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pIGFzIGFueSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVFcnJvcihlcnI6IEh0dHBFcnJvclJlc3BvbnNlKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgaWYgKGVyci5zdGF0dXMgPT09IDQwMSB8fCBlcnIuc3RhdHVzID09PSA0MDMpIHtcbiAgICAgICAgICAgIGlmIChlcnIuc3RhdHVzID09PSA0MDEpIHtcbiAgICAgICAgICAgICAgICAvL3RoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9sb2dpbicpO1xuICAgICAgICAgICAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoJy9zaW5nX291dCcpO1xuICAgICAgICAgICAgICAgIHRoaXMubG9naW5Nb2RhbFNlcnZpY2Uuc2hvd01vZGFsKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoZXJyLnN0YXR1cyA9PT0gNDAzKVxuICAgICAgICAgICAgdGhpcy50b2FzdHJTZXJ2aWNlLmVycm9yKCdObyB0aWVuZSBwZXJtaXNvIHNvYnJlIGVzdGEgYWNjaW9uJywgJ0Vycm9yJywge1xuICAgICAgICAgICAgICAgIHRpbWVPdXQ6IDUwMDBcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG9mKGVyci5tZXNzYWdlKTtcbiAgICAgICAgfVxuICAgICAgaWYoZXJyLnN0YXR1cyAhPT0gNDAxICYmIGVyci5zdGF0dXMgIT09IDQwMyAmJiBlcnIuc3RhdHVzICE9PSA0MDkpe1xuICAgICAgICB0aGlzLnRvYXN0clNlcnZpY2UuZXJyb3IoJ09jdXJyaW8gdW4gZXJyb3IgYWwgcHJvY2VzYXIgc3Ugc29saWNpdHVkJywgJ0Vycm9yJywge1xuICAgICAgICAgIHRpbWVPdXQ6IDUwMDBcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgICAgIHRoaXMucmVhZEVycm9yKGVycik7XG4gICAgICAgIHJldHVybiBvZihlcnIpO1xuICAgIH1cblxuICAgIHJlYWRFcnJvcihyZXNwdWVzdGE6IGFueSkge1xuICAgICAgICBpZihyZXNwdWVzdGEuZXJyb3Ipe1xuICAgICAgICAgICAgaWYgKHJlc3B1ZXN0YS5lcnJvci5lcnJvcilcbiAgICAgICAgICAgIGlmIChyZXNwdWVzdGEuZXJyb3IuZXJyb3IubWVzc2FnZSl7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdHJTZXJ2aWNlLmVycm9yKHJlc3B1ZXN0YS5lcnJvci5lcnJvci5tZXNzYWdlLCAnRXJyb3InLCB7XG4gICAgICAgICAgICAgICAgICAgIHRpbWVPdXQ6IDMwMDBcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChyZXNwdWVzdGEuZXJyb3IubWVzc2FnZSl7XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdHJTZXJ2aWNlLmVycm9yKHJlc3B1ZXN0YS5lcnJvci5tZXNzYWdlLCAnRXJyb3InLCB7XG4gICAgICAgICAgICAgICAgICAgIHRpbWVPdXQ6IDMwMDBcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYocmVzcHVlc3RhLmVycm9yLl9lcnJvcnMpe1xuICAgICAgICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KHJlc3B1ZXN0YS5lcnJvci5fZXJyb3JzKSlcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpbmRleEVycm9yID0gMDsgaW5kZXhFcnJvciA8IHJlc3B1ZXN0YS5lcnJvci5fZXJyb3JzLmxlbmd0aDsgaW5kZXhFcnJvcisrKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudG9hc3RyU2VydmljZS5lcnJvcihyZXNwdWVzdGEuZXJyb3IuX2Vycm9yc1tpbmRleEVycm9yXS5tZXNzYWdlLCAnRXJyb3InLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aW1lT3V0OiAzMDAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xvc2VCdXR0b246IHRydWVcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiJdfQ==