wm-menu 1.2.8 → 1.3.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/wm-menu.umd.js +147 -160
- package/bundles/wm-menu.umd.js.map +1 -1
- package/bundles/wm-menu.umd.min.js +2 -2
- package/bundles/wm-menu.umd.min.js.map +1 -1
- package/esm2015/lib/wm-menu/services/wm-menu-alerta-panico.service.js +4 -21
- package/esm2015/lib/wm-menu/wm-menu.component.js +8 -3
- package/esm5/lib/wm-menu/services/wm-menu-alerta-panico.service.js +4 -21
- package/esm5/lib/wm-menu/wm-menu.component.js +8 -3
- package/fesm2015/wm-menu.js +145 -158
- package/fesm2015/wm-menu.js.map +1 -1
- package/fesm5/wm-menu.js +147 -160
- package/fesm5/wm-menu.js.map +1 -1
- package/lib/wm-menu/wm-menu.component.d.ts +4 -1
- package/package.json +1 -1
- package/wm-menu.metadata.json +1 -1
package/fesm5/wm-menu.js
CHANGED
|
@@ -114,146 +114,6 @@ var WmMenuServicioService = /** @class */ (function () {
|
|
|
114
114
|
return WmMenuServicioService;
|
|
115
115
|
}());
|
|
116
116
|
|
|
117
|
-
var WmMenuComponent = /** @class */ (function () {
|
|
118
|
-
function WmMenuComponent(wmMenuServicioService) {
|
|
119
|
-
this.wmMenuServicioService = wmMenuServicioService;
|
|
120
|
-
this.menuSecundarioSel = new MenuSecundario();
|
|
121
|
-
this.menuLateralAbierto = false;
|
|
122
|
-
this.menuIdioma = [];
|
|
123
|
-
}
|
|
124
|
-
WmMenuComponent.prototype.ngOnInit = function () {
|
|
125
|
-
var _this = this;
|
|
126
|
-
this.cargarMenuCuenta();
|
|
127
|
-
if (this.urlMenu && this.token) {
|
|
128
|
-
var helper = new JwtHelperService();
|
|
129
|
-
var decodedToken = helper.decodeToken(this.token);
|
|
130
|
-
this.wmMenuServicioService
|
|
131
|
-
.menuApiObtener(this.urlMenu, decodedToken["id_usuario"], this.token)
|
|
132
|
-
.subscribe(function (resp) {
|
|
133
|
-
_this.menuPrincipal = _this.wmMenuServicioService.mapearMenu(resp);
|
|
134
|
-
});
|
|
135
|
-
}
|
|
136
|
-
if (this.urlIdiomas && this.token) {
|
|
137
|
-
var helper = new JwtHelperService();
|
|
138
|
-
var decodedToken = helper.decodeToken(this.token);
|
|
139
|
-
this.wmMenuServicioService
|
|
140
|
-
.menuIdiomasObtener(this.urlIdiomas, decodedToken["id_usuario"], this.token)
|
|
141
|
-
.subscribe(function (resp) {
|
|
142
|
-
_this.menuIdioma = resp;
|
|
143
|
-
_this.cargarMenuCuenta();
|
|
144
|
-
});
|
|
145
|
-
}
|
|
146
|
-
if (this.urlBaseAlmacenamiento && this.token) {
|
|
147
|
-
var helper = new JwtHelperService();
|
|
148
|
-
var decodedToken = helper.decodeToken(this.token);
|
|
149
|
-
this.wmMenuServicioService
|
|
150
|
-
.almacenamientoApiObtener(this.urlBaseAlmacenamiento, decodedToken["id_usuario"], this.token)
|
|
151
|
-
.subscribe(function (resp) {
|
|
152
|
-
var utilizado = resp[0] && resp[0].Utilizado ? resp[0].Utilizado : 0;
|
|
153
|
-
var total = resp[0] && resp[0].Total ? resp[0].Total : 0;
|
|
154
|
-
_this.porcentajeUtilizado = Math.round((utilizado / total) * 100);
|
|
155
|
-
});
|
|
156
|
-
}
|
|
157
|
-
};
|
|
158
|
-
WmMenuComponent.prototype.clickMenuPrincipal = function (i) {
|
|
159
|
-
if (this.menuPrincipal[i].hijos && this.menuPrincipal[i].hijos.length) {
|
|
160
|
-
if (this.menuPrincipalSel == this.menuPrincipal[i]) {
|
|
161
|
-
this.menuPrincipalSel = null;
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
this.menuPrincipalSel = this.menuPrincipal[i];
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
};
|
|
168
|
-
WmMenuComponent.prototype.clickMenuSecundario = function (i) {
|
|
169
|
-
this.menuSecundarioSel = this.menuSecundario[i];
|
|
170
|
-
this.menuPrincipalSel = null;
|
|
171
|
-
};
|
|
172
|
-
WmMenuComponent.prototype.cargarMenuCuenta = function () {
|
|
173
|
-
var _a;
|
|
174
|
-
if (this.urlCuentaSeguridad && this.token) {
|
|
175
|
-
var helper = new JwtHelperService();
|
|
176
|
-
var decodedToken = helper.decodeToken(this.token);
|
|
177
|
-
this.menuSecundario = [{
|
|
178
|
-
titulo: decodedToken["unique_name"],
|
|
179
|
-
icono: "account_circle",
|
|
180
|
-
hijos: [
|
|
181
|
-
{ titulo: decodedToken["unique_name"], url: "", icono: "person" },
|
|
182
|
-
{ titulo: this.menuIdioma && this.menuIdioma.CambiarContrasenna ? this.menuIdioma.CambiarContrasenna : "Cambiar contraseña", url: this.urlCuentaSeguridad + "CambioContrasena", icono: "vpn_key" },
|
|
183
|
-
this.activar2fa == "1" ? { titulo: this.menuIdioma && this.menuIdioma.Configurar2fa ? this.menuIdioma.Configurar2fa : "Configurar 2FA", url: this.urlCuentaSeguridad + "Habilitacion2FA", icono: "verified_user" } : null,
|
|
184
|
-
this.urlguiasOnline != null && this.urlguiasOnline !== "" && ((_a = this.urlguiasOnline) === null || _a === void 0 ? void 0 : _a.length) != 0 ? { titulo: this.menuIdioma && this.menuIdioma.guiasOnline ? this.menuIdioma.guiasOnline : "Guias Online", url: this.urlguiasOnline, icono: "menu_book" } : null,
|
|
185
|
-
{ titulo: this.menuIdioma && this.menuIdioma.CerrarSesion ? this.menuIdioma.CerrarSesion : "Cerrar sesión", url: this.urlCuentaSeguridad + "CerrarSesion", icono: "exit_to_app" }
|
|
186
|
-
].filter(function (hijo) { return hijo != null; }),
|
|
187
|
-
}];
|
|
188
|
-
}
|
|
189
|
-
};
|
|
190
|
-
WmMenuComponent.ctorParameters = function () { return [
|
|
191
|
-
{ type: WmMenuServicioService }
|
|
192
|
-
]; };
|
|
193
|
-
__decorate([
|
|
194
|
-
Input()
|
|
195
|
-
], WmMenuComponent.prototype, "logo", void 0);
|
|
196
|
-
__decorate([
|
|
197
|
-
Input()
|
|
198
|
-
], WmMenuComponent.prototype, "colorFondo", void 0);
|
|
199
|
-
__decorate([
|
|
200
|
-
Input()
|
|
201
|
-
], WmMenuComponent.prototype, "colorTexto", void 0);
|
|
202
|
-
__decorate([
|
|
203
|
-
Input()
|
|
204
|
-
], WmMenuComponent.prototype, "menuPrincipal", void 0);
|
|
205
|
-
__decorate([
|
|
206
|
-
Input()
|
|
207
|
-
], WmMenuComponent.prototype, "menuSecundario", void 0);
|
|
208
|
-
__decorate([
|
|
209
|
-
Input()
|
|
210
|
-
], WmMenuComponent.prototype, "urlMenu", void 0);
|
|
211
|
-
__decorate([
|
|
212
|
-
Input()
|
|
213
|
-
], WmMenuComponent.prototype, "token", void 0);
|
|
214
|
-
__decorate([
|
|
215
|
-
Input()
|
|
216
|
-
], WmMenuComponent.prototype, "urlCuentaSeguridad", void 0);
|
|
217
|
-
__decorate([
|
|
218
|
-
Input()
|
|
219
|
-
], WmMenuComponent.prototype, "activar2fa", void 0);
|
|
220
|
-
__decorate([
|
|
221
|
-
Input()
|
|
222
|
-
], WmMenuComponent.prototype, "urlguiasOnline", void 0);
|
|
223
|
-
__decorate([
|
|
224
|
-
Input()
|
|
225
|
-
], WmMenuComponent.prototype, "urlObtenerAlertasPanico", void 0);
|
|
226
|
-
__decorate([
|
|
227
|
-
Input()
|
|
228
|
-
], WmMenuComponent.prototype, "urlObtenerParametro", void 0);
|
|
229
|
-
__decorate([
|
|
230
|
-
Input()
|
|
231
|
-
], WmMenuComponent.prototype, "rutaAudio", void 0);
|
|
232
|
-
__decorate([
|
|
233
|
-
Input()
|
|
234
|
-
], WmMenuComponent.prototype, "nombreCliente", void 0);
|
|
235
|
-
__decorate([
|
|
236
|
-
Input()
|
|
237
|
-
], WmMenuComponent.prototype, "nombreUsuario", void 0);
|
|
238
|
-
__decorate([
|
|
239
|
-
Input()
|
|
240
|
-
], WmMenuComponent.prototype, "versionWeb", void 0);
|
|
241
|
-
__decorate([
|
|
242
|
-
Input()
|
|
243
|
-
], WmMenuComponent.prototype, "urlBaseAlmacenamiento", void 0);
|
|
244
|
-
__decorate([
|
|
245
|
-
Input()
|
|
246
|
-
], WmMenuComponent.prototype, "urlIdiomas", void 0);
|
|
247
|
-
WmMenuComponent = __decorate([
|
|
248
|
-
Component({
|
|
249
|
-
selector: 'wm-menu',
|
|
250
|
-
template: "<div class=\"menu\" [ngStyle]=\"{'background-color': colorFondo, 'color': colorTexto}\">\r\n <div class=\"d-lg-none\">\r\n <button mat-icon-button (click)=\"menuLateralAbierto=!menuLateralAbierto; menuPrincipalSel = null\">\r\n <mat-icon *ngIf=\"!menuLateralAbierto\" class=\"animate__animated animate__fadeInRight animate__faster\">menu\r\n </mat-icon>\r\n <mat-icon *ngIf=\"menuLateralAbierto\" class=\"animate__animated animate__fadeInLeft animate__faster\">close\r\n </mat-icon>\r\n </button>\r\n </div>\r\n <div class=\"d-lg-none logo-menu-principal\">\r\n <img class=\"logo\" src=\"{{logo}}\">\r\n </div>\r\n <div class=\"d-none d-lg-block\">\r\n <img class=\"logo\" src=\"{{logo}}\">\r\n <div *ngFor=\"let menuItem of menuPrincipal; let i=index\" class=\"d-inline-block\">\r\n\r\n <a *ngIf=\"menuItem.url\" mat-button [href]=\"menuItem.url\" (click)=\"clickMenuPrincipal(i)\">\r\n {{menuItem.titulo}}\r\n </a>\r\n <button *ngIf=\"!menuItem.url\" mat-button (click)=\"clickMenuPrincipal(i)\">\r\n {{menuItem.titulo}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"info-adicional\">\r\n <div class=\"datos border-r mt-1\" *ngIf=\"nombreCliente\">{{nombreCliente}}<mat-icon>people</mat-icon></div>\r\n <div class=\"datos border-r mt-1\" *ngIf=\"nombreUsuario\">{{nombreUsuario}}<mat-icon>person_outline</mat-icon></div>\r\n <div class=\"version\" *ngIf=\"versionWeb\">{{versionWeb}}</div>\r\n <div class=\"content-idioma\" *ngIf=\"urlIdiomas\">\r\n <mat-menu #menuIdiomas=\"matMenu\">\r\n <a mat-menu-item *ngFor=\"let menuItem of menuIdioma.Culturas\" href=\"{{urlCuentaSeguridad}}CambiarIdioma?culture={{menuItem.Name}}&ReturnUrl=/\">\r\n {{menuItem.NativeName}}\r\n </a>\r\n </mat-menu>\r\n <button mat-button [matMenuTriggerFor]=\"menuIdiomas\"><label class=\"mt-1\">{{menuIdioma.Lenguaje}}</label><mat-icon class=\"icon-idioma\">language</mat-icon></button>\r\n </div>\r\n\r\n </div>\r\n <div>\r\n <mat-menu #submenu=\"matMenu\">\r\n <a mat-menu-item *ngFor=\"let menuItem of menuSecundarioSel.hijos\" href=\"{{menuItem.url}}\"\r\n [disabled]=\"!menuItem.url\">\r\n <mat-icon *ngIf=\"menuItem.icono\">{{menuItem.icono}}</mat-icon>\r\n {{menuItem.titulo}}\r\n </a>\r\n </mat-menu>\r\n <button *ngFor=\"let menuItem of menuSecundario; let i = index\" mat-icon-button [matMenuTriggerFor]=\"submenu\"\r\n (click)=\"clickMenuSecundario(i)\">\r\n <mat-icon>{{menuItem.icono}}</mat-icon>\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<div class=\"menu-lateral d-lg-none animate__animated animate__fadeInRight animate__faster\" *ngIf=\"menuLateralAbierto\">\r\n <div class=\"row\">\r\n <div *ngFor=\"let menuItem of menuPrincipal; let i=index\" class=\"col-sm-6 col-md-4\">\r\n <a *ngIf=\"menuItem.url\" [href]=\"menuItem.url\" (click)=\"clickMenuPrincipal(i)\">\r\n <div>\r\n <mat-icon svgIcon=\"{{menuItem.icono}}\">{{menuItem.icono}}</mat-icon>\r\n <p>{{menuItem.titulo}}</p>\r\n </div>\r\n </a>\r\n <span *ngIf=\"!menuItem.url\" (click)=\"clickMenuPrincipal(i)\">\r\n <div>\r\n <mat-icon svgIcon=\"{{menuItem.icono}}\">{{menuItem.icono}}</mat-icon>\r\n <p>{{menuItem.titulo}}</p>\r\n </div>\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"sub-menu-fondo animate__animated animate__fadeIn animate__faster\" (click)=\"menuPrincipalSel=null\"\r\n *ngIf=\"menuPrincipalSel\"></div>\r\n\r\n<div class=\"sub-menu animate__animated animate__fadeIn animate__faster\" *ngIf=\"menuPrincipalSel\">\r\n <div class=\"container-fluid\">\r\n <div class=\"row\">\r\n <div class=\"col-12 col-lg-5\">\r\n <div class=\"px-3 px-sm-5 pt-5 pb-lg-5 text-center descripcion-menu\">\r\n <mat-icon [ngStyle]=\"{'color': colorFondo}\" svgIcon=\"{{menuPrincipalSel.icono}}\">\r\n {{menuPrincipalSel.icono}}</mat-icon>\r\n <p>{{menuPrincipalSel.titulo}}</p>\r\n <p class=\"text-secondary\">{{menuPrincipalSel.descripcion}}</p>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-lg-7 my-4\">\r\n <div class=\"px-3 px-md-4 py-2 py-md-2\">\r\n <ul class=\"list-unstyled\">\r\n\r\n <li class=\"mb-3 d-flex\" *ngFor=\"let menuItem of menuPrincipalSel.hijos\">\r\n <mat-icon>{{menuItem.icono}}</mat-icon>\r\n <div class=\"ml-2 flex-fill\">\r\n <a href=\"{{menuItem.url}}\" *ngIf=\"menuItem.url\">\r\n <div class=\"lead mb-2\">{{menuItem.titulo}}</div>\r\n </a>\r\n <div class=\"lead mb-2\" *ngIf=\"!menuItem.url\">{{menuItem.titulo}}</div>\r\n\r\n <a href=\"{{menuSubItem.url}}\" class=\"pl-2 my-2\" *ngFor=\"let menuSubItem of menuItem.hijos\">\r\n <div class=\"text-secondary\">{{menuSubItem.titulo}}</div>\r\n </a>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <button mat-icon-button class=\"close-icon d-lg-none\" (click)=\"menuPrincipalSel=null\">\r\n <mat-icon>arrow_back</mat-icon>\r\n </button>\r\n</div>\r\n<div class=\"alerta-almacenamiento\" *ngIf=\"porcentajeUtilizado >= 100\">Su capacidad de almacenamiento ha llegado al {{porcentajeUtilizado}}% , libere espacio o adquiera mayor capacidad</div>",
|
|
251
|
-
styles: [".menu{height:46px;display:flex;justify-content:space-between;align-items:center;top:0;left:0;right:0;background-color:#1c98a4;color:#fff;padding:0 4px}.menu .d-lg-block .mat-button{font-weight:400;height:46px;line-height:46px}.menu .logo{display:inline-block;height:40px}.menu .logo-menu-principal{position:absolute;display:block;left:65px}.menu .logo-menu-principal>img{display:block;margin:0 -50%}.menu .info-adicional{color:#fff;display:flex;justify-content:end;font-size:13px;position:absolute;right:47px}.menu .info-adicional .border-r{border-right:1px solid #fff}.menu .info-adicional .version{margin:7px 0 0 7px}.menu .info-adicional div.datos{margin:0 2px 0 5px;height:28px}.menu .info-adicional .mat-icon{vertical-align:middle;font-size:17px;color:#fff;line-height:21px;margin-left:2px}.menu .info-adicional button{padding:0 0 0 15px}.menu .info-adicional .content-idioma{margin:-5px 2px 0 5px;display:block;cursor:pointer}.menu .info-adicional .icon-idioma{font-size:17px!important;vertical-align:text-top!important;color:#fffc}.sub-menu{width:100%;position:absolute;top:46px;z-index:1000;background-color:#fff;display:flex;overflow-y:auto;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.sub-menu .close-icon{position:absolute;left:4px;top:4px}.sub-menu .descripcion-menu .mat-icon{color:#1c98a4;width:100px;height:100px}.sub-menu .descripcion-menu p:first-of-type{font-weight:300;font-size:30px;margin:16px 0}.sub-menu .descripcion-menu p:last-of-type{color:#6c757d}.sub-menu li{float:left;width:50%}.sub-menu li>.mat-icon{color:#444}.sub-menu li:nth-child(even){float:right}.sub-menu li a{transition:.5s;display:block}.sub-menu li a:hover{margin-left:8px}.sub-menu li .lead{line-height:24px;color:#212529;font-size:17px}.sub-menu-fondo{background:#272d3357;position:absolute;top:46px;bottom:0;left:0;right:0;z-index:1000}.menu-lateral{width:100%;position:absolute;top:46px;bottom:0;left:0;right:0;z-index:1000;display:flex;flex-direction:column;overflow-y:auto;background:#f7f7f7;padding:20px}.menu-lateral>div>div>*>div{text-align:center;padding:16px;background-color:#fff;margin:0 0 16px;color:#333;cursor:pointer;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.menu-lateral>div>div>*>div>.mat-icon{width:50px;height:50px}.menu-lateral>div>div>*>div>p{padding:0;margin:8px 0 0}a.mat-menu-item{color:#444!important}.alerta-almacenamiento{background:#ffffec;border-bottom:1px solid #efff00;min-height:39px;line-height:36px;font-size:12px;padding:0 0 0 25px}@media (max-width:767.98px){.sub-menu ul{margin:auto;padding:0 10px}.sub-menu ul li{float:none;width:100%}.sub-menu ul li:nth-child(even){float:none}}@media (max-width:991.98px){.sub-menu{bottom:0}}@media (min-width:600px){.logo-menu-principal{left:50%!important}}* :focus,:active{outline:0!important}"]
|
|
252
|
-
})
|
|
253
|
-
], WmMenuComponent);
|
|
254
|
-
return WmMenuComponent;
|
|
255
|
-
}());
|
|
256
|
-
|
|
257
117
|
var WmMenuAlertaPanicoService = /** @class */ (function () {
|
|
258
118
|
function WmMenuAlertaPanicoService(wmMenuServicioService) {
|
|
259
119
|
this.wmMenuServicioService = wmMenuServicioService;
|
|
@@ -263,28 +123,23 @@ var WmMenuAlertaPanicoService = /** @class */ (function () {
|
|
|
263
123
|
this.IdsAlertasPanicoActivas = new Set(); // Almacena los IDs de las alertas ya manejadas
|
|
264
124
|
this.soundTimeout = null; // Controla el temporizador del sonido
|
|
265
125
|
this.isRunning = false;
|
|
266
|
-
console.log('WmMenuAlertaPanicoService inicializado.');
|
|
267
126
|
}
|
|
268
127
|
WmMenuAlertaPanicoService.prototype.iniciarProceso = function (intervalMs, callback, urlObtenerParametro, token, rutaAudio) {
|
|
269
128
|
var _this = this;
|
|
270
|
-
console.log('iniciarProceso llamado con parámetros:', { intervalMs: intervalMs, urlObtenerParametro: urlObtenerParametro, token: token, rutaAudio: rutaAudio });
|
|
271
129
|
this.rutaAudio = rutaAudio;
|
|
272
130
|
var iniciarConInteraccion = function () {
|
|
273
|
-
console.log('iniciarConInteraccion ejecutado.');
|
|
274
131
|
_this.wmMenuServicioService
|
|
275
132
|
.menuApiObtener(urlObtenerParametro, null, token, 'ReporteAlertasPanico')
|
|
276
133
|
.subscribe(function (resp) {
|
|
277
|
-
|
|
134
|
+
// validar si el parametro ReporteAlertasPanico esta encendido
|
|
278
135
|
if (resp && resp.length > 0 && resp[0].Valor == 1) {
|
|
279
136
|
if (_this.isRunning) {
|
|
280
|
-
console.log('Proceso ya está corriendo.');
|
|
281
137
|
return;
|
|
282
138
|
}
|
|
139
|
+
// Inicializar la variable desde localStorage
|
|
283
140
|
var storedIds = localStorage.getItem('ALERTAS_PANICO_ACTIVAS_WM');
|
|
284
141
|
_this.IdsAlertasPanicoActivas = storedIds ? new Set(JSON.parse(storedIds)) : new Set();
|
|
285
|
-
console.log('IdsAlertasPanicoActivas inicializado:', _this.IdsAlertasPanicoActivas);
|
|
286
142
|
var ejecutarProceso_1 = function () {
|
|
287
|
-
console.log('ejecutarProceso iniciado.');
|
|
288
143
|
_this.isRunning = true;
|
|
289
144
|
callback();
|
|
290
145
|
setTimeout(function () {
|
|
@@ -297,49 +152,42 @@ var WmMenuAlertaPanicoService = /** @class */ (function () {
|
|
|
297
152
|
});
|
|
298
153
|
};
|
|
299
154
|
['drag', 'click'].forEach(function (evento) {
|
|
300
|
-
console.log("Evento " + evento + " registrado para iniciar proceso.");
|
|
301
155
|
document.addEventListener(evento, function () {
|
|
302
156
|
iniciarConInteraccion();
|
|
303
157
|
}, { once: true });
|
|
304
158
|
});
|
|
305
159
|
};
|
|
306
160
|
WmMenuAlertaPanicoService.prototype.stopProcess = function () {
|
|
307
|
-
console.log('stopProcess ejecutado.');
|
|
308
161
|
this.isRunning = false;
|
|
309
162
|
if (this.subscription) {
|
|
310
163
|
this.subscription.unsubscribe();
|
|
311
164
|
}
|
|
312
165
|
};
|
|
313
166
|
WmMenuAlertaPanicoService.prototype.ngOnDestroy = function () {
|
|
314
|
-
console.log('ngOnDestroy ejecutado.');
|
|
315
167
|
this.stopSound();
|
|
316
168
|
this.stopFlashingTitle();
|
|
317
169
|
};
|
|
318
170
|
WmMenuAlertaPanicoService.prototype.playSound = function () {
|
|
319
171
|
var _this = this;
|
|
320
|
-
console.log('playSound llamado.');
|
|
321
172
|
if (this.isPlaying)
|
|
322
173
|
return; // Evita reproducir si ya está sonando
|
|
323
174
|
this.isPlaying = true;
|
|
324
175
|
if (!this.audio) {
|
|
325
176
|
this.audio = new Audio(this.rutaAudio); // Ruta al archivo de sonido
|
|
326
177
|
}
|
|
327
|
-
console.log("Audio cargado: ", this.audio);
|
|
328
178
|
this.audio.loop = true; // Reproducir en bucle
|
|
329
179
|
this.audio.play()
|
|
330
180
|
.then(function () {
|
|
331
|
-
console.log('Sonido reproduciéndose.');
|
|
332
181
|
// Detener el sonido después de 10 segundos
|
|
333
182
|
_this.soundTimeout = setTimeout(function () {
|
|
334
183
|
_this.stopSound();
|
|
335
184
|
}, 10000); // Detener después de 10 segundos
|
|
336
185
|
})
|
|
337
186
|
.catch(function (error) {
|
|
338
|
-
console.
|
|
187
|
+
console.log('Error al reproducir el sonido:', error);
|
|
339
188
|
});
|
|
340
189
|
};
|
|
341
190
|
WmMenuAlertaPanicoService.prototype.stopSound = function () {
|
|
342
|
-
console.log('stopSound llamado.');
|
|
343
191
|
if (this.audio) {
|
|
344
192
|
this.audio.pause();
|
|
345
193
|
this.audio.currentTime = 0; // Reinicia el sonido
|
|
@@ -352,7 +200,6 @@ var WmMenuAlertaPanicoService = /** @class */ (function () {
|
|
|
352
200
|
};
|
|
353
201
|
WmMenuAlertaPanicoService.prototype.startFlashingTitle = function () {
|
|
354
202
|
var _this = this;
|
|
355
|
-
console.log('startFlashingTitle llamado.');
|
|
356
203
|
var toggle = false;
|
|
357
204
|
// Almacenar el título original si aún no se ha guardado
|
|
358
205
|
if (!this.originalTitle) {
|
|
@@ -367,7 +214,6 @@ var WmMenuAlertaPanicoService = /** @class */ (function () {
|
|
|
367
214
|
}
|
|
368
215
|
};
|
|
369
216
|
WmMenuAlertaPanicoService.prototype.stopFlashingTitle = function () {
|
|
370
|
-
console.log('stopFlashingTitle llamado.');
|
|
371
217
|
if (this.intervalId) {
|
|
372
218
|
clearInterval(this.intervalId);
|
|
373
219
|
this.intervalId = null;
|
|
@@ -376,16 +222,13 @@ var WmMenuAlertaPanicoService = /** @class */ (function () {
|
|
|
376
222
|
};
|
|
377
223
|
WmMenuAlertaPanicoService.prototype.revisarAlertasPendientes = function (urlObtenerAlertasPanico, token) {
|
|
378
224
|
var _this = this;
|
|
379
|
-
console.log('revisarAlertasPendientes llamado con parámetros:', { urlObtenerAlertasPanico: urlObtenerAlertasPanico, token: token });
|
|
380
225
|
var helper = new JwtHelperService();
|
|
381
226
|
var decodedToken = helper.decodeToken(token);
|
|
382
227
|
this.wmMenuServicioService
|
|
383
228
|
.menuApiObtener(urlObtenerAlertasPanico, decodedToken['id_usuario'], token)
|
|
384
229
|
.subscribe(function (resp) {
|
|
385
|
-
console.log('Respuesta obtenida de revisarAlertasPendientes:', resp);
|
|
386
230
|
if (resp && resp.length > 0) {
|
|
387
231
|
var alertasIds_1 = resp.map(function (alerta) { return alerta.IdAlertaPanico; });
|
|
388
|
-
console.log('IDs de alertas obtenidas:', alertasIds_1);
|
|
389
232
|
// Eliminar IDs que no están en la respuesta del servicio
|
|
390
233
|
_this.IdsAlertasPanicoActivas.forEach(function (id) {
|
|
391
234
|
if (!alertasIds_1.includes(id)) {
|
|
@@ -425,6 +268,150 @@ var WmMenuAlertaPanicoService = /** @class */ (function () {
|
|
|
425
268
|
return WmMenuAlertaPanicoService;
|
|
426
269
|
}());
|
|
427
270
|
|
|
271
|
+
var WmMenuComponent = /** @class */ (function () {
|
|
272
|
+
function WmMenuComponent(wmMenuServicioService, alertaPanicoService) {
|
|
273
|
+
this.wmMenuServicioService = wmMenuServicioService;
|
|
274
|
+
this.alertaPanicoService = alertaPanicoService;
|
|
275
|
+
this.menuSecundarioSel = new MenuSecundario();
|
|
276
|
+
this.menuLateralAbierto = false;
|
|
277
|
+
this.menuIdioma = [];
|
|
278
|
+
this.intervaloPeticionesMs = 60000;
|
|
279
|
+
}
|
|
280
|
+
WmMenuComponent.prototype.ngOnInit = function () {
|
|
281
|
+
var _this = this;
|
|
282
|
+
this.cargarMenuCuenta();
|
|
283
|
+
this.alertaPanicoService.iniciarProceso(this.intervaloPeticionesMs, function () { return _this.alertaPanicoService.revisarAlertasPendientes(_this.urlObtenerAlertasPanico, _this.token); }, this.urlObtenerParametro, this.token, this.rutaAudio);
|
|
284
|
+
if (this.urlMenu && this.token) {
|
|
285
|
+
var helper = new JwtHelperService();
|
|
286
|
+
var decodedToken = helper.decodeToken(this.token);
|
|
287
|
+
this.wmMenuServicioService
|
|
288
|
+
.menuApiObtener(this.urlMenu, decodedToken["id_usuario"], this.token)
|
|
289
|
+
.subscribe(function (resp) {
|
|
290
|
+
_this.menuPrincipal = _this.wmMenuServicioService.mapearMenu(resp);
|
|
291
|
+
});
|
|
292
|
+
}
|
|
293
|
+
if (this.urlIdiomas && this.token) {
|
|
294
|
+
var helper = new JwtHelperService();
|
|
295
|
+
var decodedToken = helper.decodeToken(this.token);
|
|
296
|
+
this.wmMenuServicioService
|
|
297
|
+
.menuIdiomasObtener(this.urlIdiomas, decodedToken["id_usuario"], this.token)
|
|
298
|
+
.subscribe(function (resp) {
|
|
299
|
+
_this.menuIdioma = resp;
|
|
300
|
+
_this.cargarMenuCuenta();
|
|
301
|
+
});
|
|
302
|
+
}
|
|
303
|
+
if (this.urlBaseAlmacenamiento && this.token) {
|
|
304
|
+
var helper = new JwtHelperService();
|
|
305
|
+
var decodedToken = helper.decodeToken(this.token);
|
|
306
|
+
this.wmMenuServicioService
|
|
307
|
+
.almacenamientoApiObtener(this.urlBaseAlmacenamiento, decodedToken["id_usuario"], this.token)
|
|
308
|
+
.subscribe(function (resp) {
|
|
309
|
+
var utilizado = resp[0] && resp[0].Utilizado ? resp[0].Utilizado : 0;
|
|
310
|
+
var total = resp[0] && resp[0].Total ? resp[0].Total : 0;
|
|
311
|
+
_this.porcentajeUtilizado = Math.round((utilizado / total) * 100);
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
};
|
|
315
|
+
WmMenuComponent.prototype.clickMenuPrincipal = function (i) {
|
|
316
|
+
if (this.menuPrincipal[i].hijos && this.menuPrincipal[i].hijos.length) {
|
|
317
|
+
if (this.menuPrincipalSel == this.menuPrincipal[i]) {
|
|
318
|
+
this.menuPrincipalSel = null;
|
|
319
|
+
}
|
|
320
|
+
else {
|
|
321
|
+
this.menuPrincipalSel = this.menuPrincipal[i];
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
};
|
|
325
|
+
WmMenuComponent.prototype.clickMenuSecundario = function (i) {
|
|
326
|
+
this.menuSecundarioSel = this.menuSecundario[i];
|
|
327
|
+
this.menuPrincipalSel = null;
|
|
328
|
+
};
|
|
329
|
+
WmMenuComponent.prototype.cargarMenuCuenta = function () {
|
|
330
|
+
var _a;
|
|
331
|
+
if (this.urlCuentaSeguridad && this.token) {
|
|
332
|
+
var helper = new JwtHelperService();
|
|
333
|
+
var decodedToken = helper.decodeToken(this.token);
|
|
334
|
+
this.menuSecundario = [{
|
|
335
|
+
titulo: decodedToken["unique_name"],
|
|
336
|
+
icono: "account_circle",
|
|
337
|
+
hijos: [
|
|
338
|
+
{ titulo: decodedToken["unique_name"], url: "", icono: "person" },
|
|
339
|
+
{ titulo: this.menuIdioma && this.menuIdioma.CambiarContrasenna ? this.menuIdioma.CambiarContrasenna : "Cambiar contraseña", url: this.urlCuentaSeguridad + "CambioContrasena", icono: "vpn_key" },
|
|
340
|
+
this.activar2fa == "1" ? { titulo: this.menuIdioma && this.menuIdioma.Configurar2fa ? this.menuIdioma.Configurar2fa : "Configurar 2FA", url: this.urlCuentaSeguridad + "Habilitacion2FA", icono: "verified_user" } : null,
|
|
341
|
+
this.urlguiasOnline != null && this.urlguiasOnline !== "" && ((_a = this.urlguiasOnline) === null || _a === void 0 ? void 0 : _a.length) != 0 ? { titulo: this.menuIdioma && this.menuIdioma.guiasOnline ? this.menuIdioma.guiasOnline : "Guias Online", url: this.urlguiasOnline, icono: "menu_book" } : null,
|
|
342
|
+
{ titulo: this.menuIdioma && this.menuIdioma.CerrarSesion ? this.menuIdioma.CerrarSesion : "Cerrar sesión", url: this.urlCuentaSeguridad + "CerrarSesion", icono: "exit_to_app" }
|
|
343
|
+
].filter(function (hijo) { return hijo != null; }),
|
|
344
|
+
}];
|
|
345
|
+
}
|
|
346
|
+
};
|
|
347
|
+
WmMenuComponent.ctorParameters = function () { return [
|
|
348
|
+
{ type: WmMenuServicioService },
|
|
349
|
+
{ type: WmMenuAlertaPanicoService }
|
|
350
|
+
]; };
|
|
351
|
+
__decorate([
|
|
352
|
+
Input()
|
|
353
|
+
], WmMenuComponent.prototype, "logo", void 0);
|
|
354
|
+
__decorate([
|
|
355
|
+
Input()
|
|
356
|
+
], WmMenuComponent.prototype, "colorFondo", void 0);
|
|
357
|
+
__decorate([
|
|
358
|
+
Input()
|
|
359
|
+
], WmMenuComponent.prototype, "colorTexto", void 0);
|
|
360
|
+
__decorate([
|
|
361
|
+
Input()
|
|
362
|
+
], WmMenuComponent.prototype, "menuPrincipal", void 0);
|
|
363
|
+
__decorate([
|
|
364
|
+
Input()
|
|
365
|
+
], WmMenuComponent.prototype, "menuSecundario", void 0);
|
|
366
|
+
__decorate([
|
|
367
|
+
Input()
|
|
368
|
+
], WmMenuComponent.prototype, "urlMenu", void 0);
|
|
369
|
+
__decorate([
|
|
370
|
+
Input()
|
|
371
|
+
], WmMenuComponent.prototype, "token", void 0);
|
|
372
|
+
__decorate([
|
|
373
|
+
Input()
|
|
374
|
+
], WmMenuComponent.prototype, "urlCuentaSeguridad", void 0);
|
|
375
|
+
__decorate([
|
|
376
|
+
Input()
|
|
377
|
+
], WmMenuComponent.prototype, "activar2fa", void 0);
|
|
378
|
+
__decorate([
|
|
379
|
+
Input()
|
|
380
|
+
], WmMenuComponent.prototype, "urlguiasOnline", void 0);
|
|
381
|
+
__decorate([
|
|
382
|
+
Input()
|
|
383
|
+
], WmMenuComponent.prototype, "urlObtenerAlertasPanico", void 0);
|
|
384
|
+
__decorate([
|
|
385
|
+
Input()
|
|
386
|
+
], WmMenuComponent.prototype, "urlObtenerParametro", void 0);
|
|
387
|
+
__decorate([
|
|
388
|
+
Input()
|
|
389
|
+
], WmMenuComponent.prototype, "rutaAudio", void 0);
|
|
390
|
+
__decorate([
|
|
391
|
+
Input()
|
|
392
|
+
], WmMenuComponent.prototype, "nombreCliente", void 0);
|
|
393
|
+
__decorate([
|
|
394
|
+
Input()
|
|
395
|
+
], WmMenuComponent.prototype, "nombreUsuario", void 0);
|
|
396
|
+
__decorate([
|
|
397
|
+
Input()
|
|
398
|
+
], WmMenuComponent.prototype, "versionWeb", void 0);
|
|
399
|
+
__decorate([
|
|
400
|
+
Input()
|
|
401
|
+
], WmMenuComponent.prototype, "urlBaseAlmacenamiento", void 0);
|
|
402
|
+
__decorate([
|
|
403
|
+
Input()
|
|
404
|
+
], WmMenuComponent.prototype, "urlIdiomas", void 0);
|
|
405
|
+
WmMenuComponent = __decorate([
|
|
406
|
+
Component({
|
|
407
|
+
selector: 'wm-menu',
|
|
408
|
+
template: "<div class=\"menu\" [ngStyle]=\"{'background-color': colorFondo, 'color': colorTexto}\">\r\n <div class=\"d-lg-none\">\r\n <button mat-icon-button (click)=\"menuLateralAbierto=!menuLateralAbierto; menuPrincipalSel = null\">\r\n <mat-icon *ngIf=\"!menuLateralAbierto\" class=\"animate__animated animate__fadeInRight animate__faster\">menu\r\n </mat-icon>\r\n <mat-icon *ngIf=\"menuLateralAbierto\" class=\"animate__animated animate__fadeInLeft animate__faster\">close\r\n </mat-icon>\r\n </button>\r\n </div>\r\n <div class=\"d-lg-none logo-menu-principal\">\r\n <img class=\"logo\" src=\"{{logo}}\">\r\n </div>\r\n <div class=\"d-none d-lg-block\">\r\n <img class=\"logo\" src=\"{{logo}}\">\r\n <div *ngFor=\"let menuItem of menuPrincipal; let i=index\" class=\"d-inline-block\">\r\n\r\n <a *ngIf=\"menuItem.url\" mat-button [href]=\"menuItem.url\" (click)=\"clickMenuPrincipal(i)\">\r\n {{menuItem.titulo}}\r\n </a>\r\n <button *ngIf=\"!menuItem.url\" mat-button (click)=\"clickMenuPrincipal(i)\">\r\n {{menuItem.titulo}}\r\n </button>\r\n </div>\r\n </div>\r\n <div class=\"info-adicional\">\r\n <div class=\"datos border-r mt-1\" *ngIf=\"nombreCliente\">{{nombreCliente}}<mat-icon>people</mat-icon></div>\r\n <div class=\"datos border-r mt-1\" *ngIf=\"nombreUsuario\">{{nombreUsuario}}<mat-icon>person_outline</mat-icon></div>\r\n <div class=\"version\" *ngIf=\"versionWeb\">{{versionWeb}}</div>\r\n <div class=\"content-idioma\" *ngIf=\"urlIdiomas\">\r\n <mat-menu #menuIdiomas=\"matMenu\">\r\n <a mat-menu-item *ngFor=\"let menuItem of menuIdioma.Culturas\" href=\"{{urlCuentaSeguridad}}CambiarIdioma?culture={{menuItem.Name}}&ReturnUrl=/\">\r\n {{menuItem.NativeName}}\r\n </a>\r\n </mat-menu>\r\n <button mat-button [matMenuTriggerFor]=\"menuIdiomas\"><label class=\"mt-1\">{{menuIdioma.Lenguaje}}</label><mat-icon class=\"icon-idioma\">language</mat-icon></button>\r\n </div>\r\n\r\n </div>\r\n <div>\r\n <mat-menu #submenu=\"matMenu\">\r\n <a mat-menu-item *ngFor=\"let menuItem of menuSecundarioSel.hijos\" href=\"{{menuItem.url}}\"\r\n [disabled]=\"!menuItem.url\">\r\n <mat-icon *ngIf=\"menuItem.icono\">{{menuItem.icono}}</mat-icon>\r\n {{menuItem.titulo}}\r\n </a>\r\n </mat-menu>\r\n <button *ngFor=\"let menuItem of menuSecundario; let i = index\" mat-icon-button [matMenuTriggerFor]=\"submenu\"\r\n (click)=\"clickMenuSecundario(i)\">\r\n <mat-icon>{{menuItem.icono}}</mat-icon>\r\n </button>\r\n </div>\r\n</div>\r\n\r\n<div class=\"menu-lateral d-lg-none animate__animated animate__fadeInRight animate__faster\" *ngIf=\"menuLateralAbierto\">\r\n <div class=\"row\">\r\n <div *ngFor=\"let menuItem of menuPrincipal; let i=index\" class=\"col-sm-6 col-md-4\">\r\n <a *ngIf=\"menuItem.url\" [href]=\"menuItem.url\" (click)=\"clickMenuPrincipal(i)\">\r\n <div>\r\n <mat-icon svgIcon=\"{{menuItem.icono}}\">{{menuItem.icono}}</mat-icon>\r\n <p>{{menuItem.titulo}}</p>\r\n </div>\r\n </a>\r\n <span *ngIf=\"!menuItem.url\" (click)=\"clickMenuPrincipal(i)\">\r\n <div>\r\n <mat-icon svgIcon=\"{{menuItem.icono}}\">{{menuItem.icono}}</mat-icon>\r\n <p>{{menuItem.titulo}}</p>\r\n </div>\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"sub-menu-fondo animate__animated animate__fadeIn animate__faster\" (click)=\"menuPrincipalSel=null\"\r\n *ngIf=\"menuPrincipalSel\"></div>\r\n\r\n<div class=\"sub-menu animate__animated animate__fadeIn animate__faster\" *ngIf=\"menuPrincipalSel\">\r\n <div class=\"container-fluid\">\r\n <div class=\"row\">\r\n <div class=\"col-12 col-lg-5\">\r\n <div class=\"px-3 px-sm-5 pt-5 pb-lg-5 text-center descripcion-menu\">\r\n <mat-icon [ngStyle]=\"{'color': colorFondo}\" svgIcon=\"{{menuPrincipalSel.icono}}\">\r\n {{menuPrincipalSel.icono}}</mat-icon>\r\n <p>{{menuPrincipalSel.titulo}}</p>\r\n <p class=\"text-secondary\">{{menuPrincipalSel.descripcion}}</p>\r\n </div>\r\n </div>\r\n <div class=\"col-12 col-lg-7 my-4\">\r\n <div class=\"px-3 px-md-4 py-2 py-md-2\">\r\n <ul class=\"list-unstyled\">\r\n\r\n <li class=\"mb-3 d-flex\" *ngFor=\"let menuItem of menuPrincipalSel.hijos\">\r\n <mat-icon>{{menuItem.icono}}</mat-icon>\r\n <div class=\"ml-2 flex-fill\">\r\n <a href=\"{{menuItem.url}}\" *ngIf=\"menuItem.url\">\r\n <div class=\"lead mb-2\">{{menuItem.titulo}}</div>\r\n </a>\r\n <div class=\"lead mb-2\" *ngIf=\"!menuItem.url\">{{menuItem.titulo}}</div>\r\n\r\n <a href=\"{{menuSubItem.url}}\" class=\"pl-2 my-2\" *ngFor=\"let menuSubItem of menuItem.hijos\">\r\n <div class=\"text-secondary\">{{menuSubItem.titulo}}</div>\r\n </a>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <button mat-icon-button class=\"close-icon d-lg-none\" (click)=\"menuPrincipalSel=null\">\r\n <mat-icon>arrow_back</mat-icon>\r\n </button>\r\n</div>\r\n<div class=\"alerta-almacenamiento\" *ngIf=\"porcentajeUtilizado >= 100\">Su capacidad de almacenamiento ha llegado al {{porcentajeUtilizado}}% , libere espacio o adquiera mayor capacidad</div>",
|
|
409
|
+
styles: [".menu{height:46px;display:flex;justify-content:space-between;align-items:center;top:0;left:0;right:0;background-color:#1c98a4;color:#fff;padding:0 4px}.menu .d-lg-block .mat-button{font-weight:400;height:46px;line-height:46px}.menu .logo{display:inline-block;height:40px}.menu .logo-menu-principal{position:absolute;display:block;left:65px}.menu .logo-menu-principal>img{display:block;margin:0 -50%}.menu .info-adicional{color:#fff;display:flex;justify-content:end;font-size:13px;position:absolute;right:47px}.menu .info-adicional .border-r{border-right:1px solid #fff}.menu .info-adicional .version{margin:7px 0 0 7px}.menu .info-adicional div.datos{margin:0 2px 0 5px;height:28px}.menu .info-adicional .mat-icon{vertical-align:middle;font-size:17px;color:#fff;line-height:21px;margin-left:2px}.menu .info-adicional button{padding:0 0 0 15px}.menu .info-adicional .content-idioma{margin:-5px 2px 0 5px;display:block;cursor:pointer}.menu .info-adicional .icon-idioma{font-size:17px!important;vertical-align:text-top!important;color:#fffc}.sub-menu{width:100%;position:absolute;top:46px;z-index:1000;background-color:#fff;display:flex;overflow-y:auto;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.sub-menu .close-icon{position:absolute;left:4px;top:4px}.sub-menu .descripcion-menu .mat-icon{color:#1c98a4;width:100px;height:100px}.sub-menu .descripcion-menu p:first-of-type{font-weight:300;font-size:30px;margin:16px 0}.sub-menu .descripcion-menu p:last-of-type{color:#6c757d}.sub-menu li{float:left;width:50%}.sub-menu li>.mat-icon{color:#444}.sub-menu li:nth-child(even){float:right}.sub-menu li a{transition:.5s;display:block}.sub-menu li a:hover{margin-left:8px}.sub-menu li .lead{line-height:24px;color:#212529;font-size:17px}.sub-menu-fondo{background:#272d3357;position:absolute;top:46px;bottom:0;left:0;right:0;z-index:1000}.menu-lateral{width:100%;position:absolute;top:46px;bottom:0;left:0;right:0;z-index:1000;display:flex;flex-direction:column;overflow-y:auto;background:#f7f7f7;padding:20px}.menu-lateral>div>div>*>div{text-align:center;padding:16px;background-color:#fff;margin:0 0 16px;color:#333;cursor:pointer;box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)}.menu-lateral>div>div>*>div>.mat-icon{width:50px;height:50px}.menu-lateral>div>div>*>div>p{padding:0;margin:8px 0 0}a.mat-menu-item{color:#444!important}.alerta-almacenamiento{background:#ffffec;border-bottom:1px solid #efff00;min-height:39px;line-height:36px;font-size:12px;padding:0 0 0 25px}@media (max-width:767.98px){.sub-menu ul{margin:auto;padding:0 10px}.sub-menu ul li{float:none;width:100%}.sub-menu ul li:nth-child(even){float:none}}@media (max-width:991.98px){.sub-menu{bottom:0}}@media (min-width:600px){.logo-menu-principal{left:50%!important}}* :focus,:active{outline:0!important}"]
|
|
410
|
+
})
|
|
411
|
+
], WmMenuComponent);
|
|
412
|
+
return WmMenuComponent;
|
|
413
|
+
}());
|
|
414
|
+
|
|
428
415
|
var WmMenuModule = /** @class */ (function () {
|
|
429
416
|
function WmMenuModule() {
|
|
430
417
|
}
|
package/fesm5/wm-menu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wm-menu.js","sources":["ng://wm-menu/lib/wm-menu/model/wm-menu-cuenta.model.ts","ng://wm-menu/lib/wm-menu/services/wm-menu-servicio.service.ts","ng://wm-menu/lib/wm-menu/wm-menu.component.ts","ng://wm-menu/lib/wm-menu/services/wm-menu-alerta-panico.service.ts","ng://wm-menu/lib/wm-menu.module.ts","ng://wm-menu/public-api.ts","ng://wm-menu/wm-menu.ts"],"sourcesContent":["export class MenuSecundario {\r\n icono: string;\r\n titulo: string;\r\n hijos: MenuSecundarioHijo[] = [];\r\n}\r\n\r\nexport class MenuSecundarioHijo {\r\n icono: string;\r\n titulo: string;\r\n url: string;\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { throwError, Observable } from 'rxjs';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { MenuPrincipal } from '../model/wm-menu-principal.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class WmMenuServicioService {\r\n\r\n constructor(private http: HttpClient, private iconRegistry: MatIconRegistry, private sanitizer: DomSanitizer) { }\r\n\r\n menuApiObtener(url:string, idUsuario: string, token:string, codLogicaParametro = \"\"): Observable<any> {\r\n const headers = new HttpHeaders({\r\n 'Authorization': `Bearer ${token}`\r\n });\r\n \r\n let myParams = new HttpParams();\r\n if (codLogicaParametro.length > 0) {\r\n myParams = myParams.append(\"codLogica\", codLogicaParametro);\r\n }\r\n myParams = myParams.append(\"ctrlActivo\", \"true\");\r\n myParams = myParams.append(\"conPadres\", \"true\");\r\n if (idUsuario != null)\r\n myParams = myParams.append(\"idUsuario\", idUsuario.toString());\r\n\r\n return this.http.get(url, { headers, params: myParams }).pipe(\r\n map(resp => {\r\n return resp;\r\n }),\r\n catchError(error => {\r\n return throwError(error.error);\r\n })\r\n );\r\n }\r\n\r\n mapearMenu(respApi: any): MenuPrincipal[] {\r\n respApi = respApi.sort((a, b) => a.Posicion > b.Posicion?\"1\":\"-1\");\r\n\r\n for (const key in respApi) {\r\n const element = respApi[key];\r\n if (element.Icono.startsWith(\"http\")) {\r\n var iconSvg = 'wm-icon-menu-' + key;\r\n this.iconRegistry.addSvgIcon(\r\n iconSvg,\r\n this.sanitizer.bypassSecurityTrustResourceUrl(element.Icono));\r\n respApi[key].Icono = iconSvg;\r\n }\r\n }\r\n\r\n return this.obtenerMenu(respApi);\r\n }\r\n\r\n\r\n private obtenerMenu(respApi: any, idMenuPadre?: Number): MenuPrincipal[] {\r\n var menu: MenuPrincipal[] = [];\r\n for (const key in respApi) {\r\n if (respApi[key].IdMenuPadre == idMenuPadre || (!idMenuPadre && respApi[key].IdMenuPadre == null)) {\r\n menu.push({\r\n titulo: respApi[key].IdiomaRecurso,\r\n url: respApi[key].Url,\r\n icono: respApi[key].Icono,\r\n descripcion: respApi[key].Descripcion,\r\n hijos: this.obtenerMenu(respApi, respApi[key].IdMenu)\r\n });\r\n }\r\n }\r\n return menu;\r\n }\r\n\r\n menuIdiomasObtener(url:string, idUsuario: string, token:string): Observable<any> {\r\n const headers = new HttpHeaders({\r\n 'Authorization': `Bearer ${token}`\r\n });\r\n\r\n return this.http.get(url).pipe(\r\n map(resp => {\r\n return resp;\r\n }),\r\n catchError(error => {\r\n return throwError(error.error);\r\n })\r\n );\r\n }\r\n \r\n almacenamientoApiObtener(url:string, idUsuario: string, token:string): Observable<any> {\r\n const headers = new HttpHeaders({\r\n 'Authorization': `Bearer ${token}`\r\n });\r\n \r\n let myParams = new HttpParams();\r\n\r\n if (idUsuario != null)\r\n myParams = myParams.append(\"idUsuario\", idUsuario.toString());\r\n \r\n return this.http.get(url, { headers, params: myParams }).pipe(\r\n map(resp => {\r\n return resp;\r\n }),\r\n catchError(error => {\r\n return throwError(error.error);\r\n })\r\n );\r\n }\r\n}","import { Component, OnInit, Input } from '@angular/core';\r\nimport { MenuPrincipal } from './model/wm-menu-principal.model';\r\nimport { MenuSecundario } from './model/wm-menu-cuenta.model';\r\nimport { WmMenuServicioService } from './services/wm-menu-servicio.service';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\n\r\n@Component({\r\n selector: 'wm-menu',\r\n templateUrl: './wm-menu.component.html',\r\n styleUrls: ['./wm-menu.component.scss']\r\n})\r\nexport class WmMenuComponent implements OnInit {\r\n @Input() logo: string;\r\n @Input() colorFondo: string;\r\n @Input() colorTexto: string;\r\n @Input() menuPrincipal: MenuPrincipal[];\r\n @Input() menuSecundario: MenuSecundario[];\r\n\r\n @Input() urlMenu: string; \r\n @Input() token: string;\r\n @Input() urlCuentaSeguridad: string;\r\n @Input() activar2fa: string;\r\n @Input() urlguiasOnline: string;\r\n @Input() urlObtenerAlertasPanico: string;\r\n @Input() urlObtenerParametro: string;\r\n @Input() rutaAudio: string;\r\n\r\n @Input() nombreCliente: string;\r\n @Input() nombreUsuario: string;\r\n @Input() versionWeb: string;\r\n @Input() urlBaseAlmacenamiento: string;\r\n\r\n @Input() urlIdiomas: string;\r\n\r\n menuPrincipalSel: MenuPrincipal;\r\n menuSecundarioSel: MenuSecundario = new MenuSecundario();\r\n menuLateralAbierto: Boolean = false;\r\n porcentajeUtilizado : number;\r\n menuIdioma : any = [];\r\n\r\n constructor(private wmMenuServicioService: WmMenuServicioService) { }\r\n\r\n ngOnInit(): void {\r\n \r\n this.cargarMenuCuenta();\r\n\r\n if (this.urlMenu && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.wmMenuServicioService\r\n .menuApiObtener(this.urlMenu, decodedToken[\"id_usuario\"], this.token)\r\n .subscribe((resp) => {\r\n this.menuPrincipal = this.wmMenuServicioService.mapearMenu(resp);\r\n });\r\n }\r\n\r\n if (this.urlIdiomas && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.wmMenuServicioService\r\n .menuIdiomasObtener(this.urlIdiomas, decodedToken[\"id_usuario\"], this.token)\r\n .subscribe((resp) => {\r\n this.menuIdioma = resp;\r\n this.cargarMenuCuenta();\r\n });\r\n }\r\n\r\n if (this.urlBaseAlmacenamiento && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.wmMenuServicioService\r\n .almacenamientoApiObtener(this.urlBaseAlmacenamiento, decodedToken[\"id_usuario\"], this.token)\r\n .subscribe((resp) => {\r\n let utilizado = resp[0] && resp[0].Utilizado ? resp[0].Utilizado : 0;\r\n let total = resp[0] && resp[0].Total ? resp[0].Total : 0;\r\n this.porcentajeUtilizado = Math.round((utilizado / total) * 100);\r\n });\r\n }\r\n }\r\n\r\n clickMenuPrincipal(i: number) {\r\n if (this.menuPrincipal[i].hijos && this.menuPrincipal[i].hijos.length) {\r\n if (this.menuPrincipalSel == this.menuPrincipal[i]) {\r\n this.menuPrincipalSel = null;\r\n } else {\r\n this.menuPrincipalSel = this.menuPrincipal[i];\r\n }\r\n }\r\n }\r\n\r\n clickMenuSecundario(i: number) {\r\n this.menuSecundarioSel = this.menuSecundario[i];\r\n this.menuPrincipalSel = null;\r\n }\r\n\r\n cargarMenuCuenta(){\r\n if (this.urlCuentaSeguridad && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.menuSecundario = [{\r\n titulo: decodedToken[\"unique_name\"],\r\n icono: \"account_circle\",\r\n hijos: [\r\n { titulo: decodedToken[\"unique_name\"], url: \"\", icono: \"person\" },\r\n { titulo: this.menuIdioma && this.menuIdioma.CambiarContrasenna ? this.menuIdioma.CambiarContrasenna : \"Cambiar contraseña\", url: this.urlCuentaSeguridad + \"CambioContrasena\", icono: \"vpn_key\" },\r\n this.activar2fa == \"1\" ? { titulo: this.menuIdioma && this.menuIdioma.Configurar2fa ? this.menuIdioma.Configurar2fa : \"Configurar 2FA\", url: this.urlCuentaSeguridad + \"Habilitacion2FA\", icono: \"verified_user\" } : null,\r\n this.urlguiasOnline != null && this.urlguiasOnline !== \"\" && this.urlguiasOnline?.length != 0 ? { titulo: this.menuIdioma && this.menuIdioma.guiasOnline ? this.menuIdioma.guiasOnline : \"Guias Online\", url: this.urlguiasOnline, icono: \"menu_book\" } : null,\r\n { titulo: this.menuIdioma && this.menuIdioma.CerrarSesion ? this.menuIdioma.CerrarSesion : \"Cerrar sesión\", url: this.urlCuentaSeguridad + \"CerrarSesion\", icono: \"exit_to_app\" }].filter(hijo => hijo != null),\r\n }];\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\nimport { WmMenuServicioService } from './wm-menu-servicio.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class WmMenuAlertaPanicoService {\r\n\r\n private intervalId: any;\r\n private alternateTitle = 'Alerta de Pánico Recibida';\r\n private originalTitle: string;\r\n private audio: HTMLAudioElement | null = null;\r\n private isPlaying = false; // Controla si el sonido ya está reproduciéndose\r\n public formulario: any;\r\n private IdsAlertasPanicoActivas: Set<number> = new Set(); // Almacena los IDs de las alertas ya manejadas\r\n private soundTimeout: any = null; // Controla el temporizador del sonido\r\n private rutaAudio: string;\r\n constructor(private wmMenuServicioService: WmMenuServicioService) { \r\n console.log('WmMenuAlertaPanicoService inicializado.');\r\n }\r\n\r\n private subscription: any;\r\n private isRunning: boolean = false;\r\n\r\n iniciarProceso(\r\n intervalMs: number,\r\n callback: () => void,\r\n urlObtenerParametro: string,\r\n token: string,\r\n rutaAudio: string\r\n ): void {\r\n console.log('iniciarProceso llamado con parámetros:', { intervalMs, urlObtenerParametro, token, rutaAudio });\r\n this.rutaAudio = rutaAudio;\r\n\r\n const iniciarConInteraccion = () => {\r\n console.log('iniciarConInteraccion ejecutado.');\r\n this.wmMenuServicioService\r\n .menuApiObtener(urlObtenerParametro, null, token, 'ReporteAlertasPanico')\r\n .subscribe((resp) => {\r\n console.log('Respuesta obtenida de menuApiObtener:', resp);\r\n if (resp && resp.length > 0 && resp[0].Valor == 1) {\r\n if (this.isRunning) {\r\n console.log('Proceso ya está corriendo.');\r\n return;\r\n }\r\n\r\n const storedIds = localStorage.getItem('ALERTAS_PANICO_ACTIVAS_WM');\r\n this.IdsAlertasPanicoActivas = storedIds ? new Set(JSON.parse(storedIds)) : new Set();\r\n console.log('IdsAlertasPanicoActivas inicializado:', this.IdsAlertasPanicoActivas);\r\n\r\n const ejecutarProceso = () => {\r\n console.log('ejecutarProceso iniciado.');\r\n this.isRunning = true;\r\n callback();\r\n setTimeout(() => {\r\n this.isRunning = false;\r\n ejecutarProceso();\r\n }, intervalMs);\r\n };\r\n\r\n ejecutarProceso();\r\n }\r\n });\r\n };\r\n\r\n ['drag', 'click'].forEach(evento => {\r\n console.log(`Evento ${evento} registrado para iniciar proceso.`);\r\n document.addEventListener(\r\n evento,\r\n () => {\r\n iniciarConInteraccion();\r\n },\r\n { once: true }\r\n );\r\n });\r\n }\r\n\r\n stopProcess(): void {\r\n console.log('stopProcess ejecutado.');\r\n this.isRunning = false;\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n console.log('ngOnDestroy ejecutado.');\r\n this.stopSound();\r\n this.stopFlashingTitle();\r\n }\r\n\r\n playSound(): void {\r\n console.log('playSound llamado.');\r\n if (this.isPlaying) return; // Evita reproducir si ya está sonando\r\n this.isPlaying = true;\r\n if (!this.audio) {\r\n this.audio = new Audio(this.rutaAudio); // Ruta al archivo de sonido\r\n }\r\n console.log(\"Audio cargado: \", this.audio)\r\n this.audio.loop = true; // Reproducir en bucle\r\n this.audio.play()\r\n .then(() => {\r\n console.log('Sonido reproduciéndose.');\r\n // Detener el sonido después de 10 segundos\r\n this.soundTimeout = setTimeout(() => {\r\n this.stopSound();\r\n }, 10000); // Detener después de 10 segundos\r\n })\r\n .catch(error => {\r\n console.error('Error al reproducir el sonido:', error);\r\n });\r\n }\r\n\r\n stopSound(): void {\r\n console.log('stopSound llamado.');\r\n if (this.audio) {\r\n this.audio.pause();\r\n this.audio.currentTime = 0; // Reinicia el sonido\r\n }\r\n this.isPlaying = false; // Restablece la bandera\r\n if (this.soundTimeout) {\r\n clearTimeout(this.soundTimeout); // Asegura que el temporizador se borre\r\n this.soundTimeout = null;\r\n }\r\n }\r\n\r\n startFlashingTitle(): void {\r\n console.log('startFlashingTitle llamado.');\r\n let toggle = false;\r\n\r\n // Almacenar el título original si aún no se ha guardado\r\n if (!this.originalTitle) {\r\n this.originalTitle = document.title;\r\n }\r\n\r\n if (!this.intervalId) {\r\n this.intervalId = setInterval(() => {\r\n // Alternar entre el título alternativo y el título original\r\n document.title = toggle ? this.alternateTitle : this.originalTitle;\r\n toggle = !toggle;\r\n }, 1000); // Cambia el título cada segundo\r\n }\r\n }\r\n\r\n stopFlashingTitle(): void {\r\n console.log('stopFlashingTitle llamado.');\r\n if (this.intervalId) {\r\n clearInterval(this.intervalId);\r\n this.intervalId = null;\r\n document.title = this.originalTitle; // Restaura a vacío\r\n }\r\n }\r\n\r\n revisarAlertasPendientes(urlObtenerAlertasPanico: string, token: string): void {\r\n console.log('revisarAlertasPendientes llamado con parámetros:', { urlObtenerAlertasPanico, token });\r\n const helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(token);\r\n this.wmMenuServicioService\r\n .menuApiObtener(urlObtenerAlertasPanico, decodedToken['id_usuario'], token)\r\n .subscribe((resp) => {\r\n console.log('Respuesta obtenida de revisarAlertasPendientes:', resp);\r\n if (resp && resp.length > 0) {\r\n\r\n const alertasIds = resp.map(alerta => alerta.IdAlertaPanico);\r\n console.log('IDs de alertas obtenidas:', alertasIds);\r\n\r\n // Eliminar IDs que no están en la respuesta del servicio\r\n this.IdsAlertasPanicoActivas.forEach((id) => {\r\n if (!alertasIds.includes(id)) {\r\n this.IdsAlertasPanicoActivas.delete(id);\r\n }\r\n });\r\n\r\n // Filtrar alertas nuevas\r\n const newAlerts = resp.filter(alerta => !this.IdsAlertasPanicoActivas.has(alerta.IdAlertaPanico));\r\n\r\n // Agregar las nuevas alertas a la lista activa\r\n newAlerts.forEach(alerta => this.IdsAlertasPanicoActivas.add(alerta.IdAlertaPanico));\r\n if (this.IdsAlertasPanicoActivas.size > 0) {\r\n this.startFlashingTitle();\r\n }\r\n // Si hay nuevas alertas, dispara notificacion sonora\r\n if (newAlerts.length > 0) {\r\n this.playSound();\r\n }\r\n } else {\r\n // Si no hay alertas en la respuesta, limpiar la lista\r\n this.IdsAlertasPanicoActivas.clear();\r\n this.stopFlashingTitle();\r\n }\r\n // Actualizar localStorage con los IDs activos\r\n localStorage.setItem('ALERTAS_PANICO_ACTIVAS_WM', JSON.stringify(Array.from(this.IdsAlertasPanicoActivas)));\r\n });\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSidenavModule} from '@angular/material/sidenav';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatRippleModule } from \"@angular/material/core\";\r\n\r\nimport { WmMenuComponent } from './wm-menu/wm-menu.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { JwtModule } from '@auth0/angular-jwt';\r\n\r\n\r\n@NgModule({\r\n declarations: [WmMenuComponent],\r\n imports: [\r\n BrowserModule,\r\n MatToolbarModule,\r\n MatSidenavModule,\r\n MatListModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatRippleModule,\r\n HttpClientModule,\r\n JwtModule\r\n ],\r\n exports: [WmMenuComponent]\r\n})\r\nexport class WmMenuModule { }\r\n","/*\r\n * Public API Surface of wm-menu\r\n */\r\n\r\nexport * from './lib/wm-menu/wm-menu.component';\r\nexport * from './lib/wm-menu/services/wm-menu-servicio.service';\r\nexport * from './lib/wm-menu/services/wm-menu-alerta-panico.service';\r\nexport * from './lib/wm-menu.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;IAAA;QAGI,UAAK,GAAyB,EAAE,CAAC;KACpC;IAAD,qBAAC;AAAD,CAAC,IAAA;AAED;IAAA;KAIC;IAAD,yBAAC;AAAD,CAAC;;;ICGG,+BAAoB,IAAgB,EAAU,YAA6B,EAAU,SAAuB;QAAxF,SAAI,GAAJ,IAAI,CAAY;QAAU,iBAAY,GAAZ,YAAY,CAAiB;QAAU,cAAS,GAAT,SAAS,CAAc;KAAK;IAEjH,8CAAc,GAAd,UAAe,GAAU,EAAE,SAAiB,EAAE,KAAY,EAAE,kBAAuB;QAAvB,mCAAA,EAAA,uBAAuB;QAC/E,IAAM,OAAO,GAAG,IAAI,WAAW,CAAC;YAC5B,eAAe,EAAE,YAAU,KAAO;SACrC,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAC;QAChC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9B,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAC;SAChE;QACD,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACjD,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,SAAS,IAAI,IAAI;YACjB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAElE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,SAAA,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CACzD,GAAG,CAAC,UAAA,IAAI;YACJ,OAAO,IAAI,CAAC;SACf,CAAC,EACF,UAAU,CAAC,UAAA,KAAK;YACZ,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAClC,CAAC,CACL,CAAC;KACL;IAED,0CAAU,GAAV,UAAW,OAAY;QACnB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,GAAC,GAAG,GAAC,IAAI,GAAA,CAAC,CAAC;QAEnE,KAAK,IAAM,GAAG,IAAI,OAAO,EAAE;YACvB,IAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;gBAClC,IAAI,OAAO,GAAG,eAAe,GAAG,GAAG,CAAC;gBACpC,IAAI,CAAC,YAAY,CAAC,UAAU,CACxB,OAAO,EACP,IAAI,CAAC,SAAS,CAAC,8BAA8B,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBAClE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC;aAChC;SACJ;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;KACpC;IAGO,2CAAW,GAAnB,UAAoB,OAAY,EAAE,WAAoB;QAClD,IAAI,IAAI,GAAoB,EAAE,CAAC;QAC/B,KAAK,IAAM,GAAG,IAAI,OAAO,EAAE;YACvB,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,IAAI,WAAW,KAAK,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE;gBAC/F,IAAI,CAAC,IAAI,CAAC;oBACN,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,aAAa;oBAClC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG;oBACrB,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK;oBACzB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,WAAW;oBACrC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;iBACxD,CAAC,CAAC;aACN;SACJ;QACD,OAAO,IAAI,CAAC;KACf;IAED,kDAAkB,GAAlB,UAAmB,GAAU,EAAE,SAAiB,EAAE,KAAY;QAC1D,IAAM,OAAO,GAAG,IAAI,WAAW,CAAC;YAC5B,eAAe,EAAE,YAAU,KAAO;SACrC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAC1B,GAAG,CAAC,UAAA,IAAI;YACJ,OAAO,IAAI,CAAC;SACf,CAAC,EACF,UAAU,CAAC,UAAA,KAAK;YACZ,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAClC,CAAC,CACL,CAAC;KACL;IAED,wDAAwB,GAAxB,UAAyB,GAAU,EAAE,SAAiB,EAAE,KAAY;QAChE,IAAM,OAAO,GAAG,IAAI,WAAW,CAAC;YAC5B,eAAe,EAAE,YAAU,KAAO;SACrC,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAC;QAEhC,IAAI,SAAS,IAAI,IAAI;YACjB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;QAElE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,SAAA,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,CACzD,GAAG,CAAC,UAAA,IAAI;YACJ,OAAO,IAAI,CAAC;SACf,CAAC,EACF,UAAU,CAAC,UAAA,KAAK;YACZ,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SAClC,CAAC,CACL,CAAC;KACL;;gBA7FyB,UAAU;gBAAwB,eAAe;gBAAqB,YAAY;;;IAFnG,qBAAqB;QAHjC,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;OACW,qBAAqB,CAgGjC;gCA3GD;CAWA;;;IC6BI,yBAAoB,qBAA4C;QAA5C,0BAAqB,GAArB,qBAAqB,CAAuB;QALhE,sBAAiB,GAAmB,IAAI,cAAc,EAAE,CAAC;QACzD,uBAAkB,GAAY,KAAK,CAAC;QAEpC,eAAU,GAAS,EAAE,CAAC;KAE+C;IAErE,kCAAQ,GAAR;QAAA,iBAoCC;QAlCG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAExB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE;YAC5B,IAAI,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACpC,IAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpD,IAAI,CAAC,qBAAqB;iBACrB,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC;iBACpE,SAAS,CAAC,UAAC,IAAI;gBACZ,KAAI,CAAC,aAAa,GAAG,KAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;aACpE,CAAC,CAAC;SACV;QAED,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,EAAE;YAC/B,IAAI,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACpC,IAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpD,IAAI,CAAC,qBAAqB;iBACrB,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC;iBAC3E,SAAS,CAAC,UAAC,IAAI;gBACb,KAAI,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvB,KAAI,CAAC,gBAAgB,EAAE,CAAC;aAC1B,CAAC,CAAC;SACV;QAED,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,KAAK,EAAE;YAC1C,IAAI,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACpC,IAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpD,IAAI,CAAC,qBAAqB;iBACrB,wBAAwB,CAAC,IAAI,CAAC,qBAAqB,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC;iBAC5F,SAAS,CAAC,UAAC,IAAI;gBACZ,IAAI,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;gBACrE,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;gBACzD,KAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,KAAK,IAAI,GAAG,CAAC,CAAC;aACpE,CAAC,CAAC;SACV;KACJ;IAED,4CAAkB,GAAlB,UAAmB,CAAS;QACxB,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE;YACnE,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;gBAChD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;aAChC;iBAAM;gBACH,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aACjD;SACJ;KACJ;IAED,6CAAmB,GAAnB,UAAoB,CAAS;QACzB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;KAChC;IAED,0CAAgB,GAAhB;;QACI,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,KAAK,EAAE;YACvC,IAAI,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACpC,IAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpD,IAAI,CAAC,cAAc,GAAG,CAAC;oBACnB,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC;oBACnC,KAAK,EAAE,gBAAgB;oBACvB,KAAK,EAAE;wBACH,EAAE,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE;wBACjE,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,kBAAkB,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,GAAG,oBAAoB,EAAE,GAAG,EAAE,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,EAAE,KAAK,EAAE,SAAS,EAAE;wBAClM,IAAI,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,GAAG,gBAAgB,EAAE,GAAG,EAAE,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,IAAI;wBACzN,IAAI,CAAC,cAAc,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,EAAE,IAAI,OAAA,IAAI,CAAC,cAAc,0CAAE,MAAM,KAAI,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,cAAc,EAAE,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI;wBAC9P,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,kBAAkB,GAAG,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE;qBAAC,CAAC,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,IAAI,IAAI,GAAA,CAAC;iBACtN,CAAC,CAAC;SACN;KACJ;;gBAtE0C,qBAAqB;;IA5BvD;QAAR,KAAK,EAAE;iDAAc;IACb;QAAR,KAAK,EAAE;uDAAoB;IACnB;QAAR,KAAK,EAAE;uDAAoB;IACnB;QAAR,KAAK,EAAE;0DAAgC;IAC/B;QAAR,KAAK,EAAE;2DAAkC;IAEjC;QAAR,KAAK,EAAE;oDAAiB;IAChB;QAAR,KAAK,EAAE;kDAAe;IACd;QAAR,KAAK,EAAE;+DAA4B;IAC3B;QAAR,KAAK,EAAE;uDAAoB;IACnB;QAAR,KAAK,EAAE;2DAAwB;IACvB;QAAR,KAAK,EAAE;oEAAiC;IAChC;QAAR,KAAK,EAAE;gEAA6B;IAC5B;QAAR,KAAK,EAAE;sDAAmB;IAElB;QAAR,KAAK,EAAE;0DAAuB;IACtB;QAAR,KAAK,EAAE;0DAAuB;IACtB;QAAR,KAAK,EAAE;uDAAoB;IACnB;QAAR,KAAK,EAAE;kEAA+B;IAE9B;QAAR,KAAK,EAAE;uDAAoB;IArBnB,eAAe;QAL3B,SAAS,CAAC;YACP,QAAQ,EAAE,SAAS;YACnB,giMAAuC;;SAE1C,CAAC;OACW,eAAe,CAoG3B;IAAD,sBAAC;CApGD;;;ICOE,mCAAoB,qBAA4C;QAA5C,0BAAqB,GAArB,qBAAqB,CAAuB;QARxD,mBAAc,GAAG,2BAA2B,CAAC;QAE7C,UAAK,GAA4B,IAAI,CAAC;QACtC,cAAS,GAAG,KAAK,CAAC;QAElB,4BAAuB,GAAgB,IAAI,GAAG,EAAE,CAAC;QACjD,iBAAY,GAAQ,IAAI,CAAC;QAOzB,cAAS,GAAY,KAAK,CAAC;QAJjC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;KACxD;IAKD,kDAAc,GAAd,UACE,UAAkB,EAClB,QAAoB,EACpB,mBAA2B,EAC3B,KAAa,EACb,SAAiB;QALnB,iBAmDC;QA5CC,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE,EAAE,UAAU,YAAA,EAAE,mBAAmB,qBAAA,EAAE,KAAK,OAAA,EAAE,SAAS,WAAA,EAAE,CAAC,CAAC;QAC7G,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,IAAM,qBAAqB,GAAG;YAC5B,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,KAAI,CAAC,qBAAqB;iBACvB,cAAc,CAAC,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,sBAAsB,CAAC;iBACxE,SAAS,CAAC,UAAC,IAAI;gBACd,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,IAAI,CAAC,CAAC;gBAC3D,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE;oBACjD,IAAI,KAAI,CAAC,SAAS,EAAE;wBAClB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;wBAC1C,OAAO;qBACR;oBAED,IAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;oBACpE,KAAI,CAAC,uBAAuB,GAAG,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI,GAAG,EAAE,CAAC;oBACtF,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,KAAI,CAAC,uBAAuB,CAAC,CAAC;oBAEnF,IAAM,iBAAe,GAAG;wBACtB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;wBACzC,KAAI,CAAC,SAAS,GAAG,IAAI,CAAC;wBACtB,QAAQ,EAAE,CAAC;wBACX,UAAU,CAAC;4BACT,KAAI,CAAC,SAAS,GAAG,KAAK,CAAC;4BACvB,iBAAe,EAAE,CAAC;yBACnB,EAAE,UAAU,CAAC,CAAC;qBAChB,CAAC;oBAEF,iBAAe,EAAE,CAAC;iBACnB;aACF,CAAC,CAAC;SACN,CAAC;QAEF,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,UAAA,MAAM;YAC9B,OAAO,CAAC,GAAG,CAAC,YAAU,MAAM,sCAAmC,CAAC,CAAC;YACjE,QAAQ,CAAC,gBAAgB,CACvB,MAAM,EACN;gBACE,qBAAqB,EAAE,CAAC;aACzB,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;SACH,CAAC,CAAC;KACJ;IAED,+CAAW,GAAX;QACE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC;SACjC;KACF;IAED,+CAAW,GAAX;QACE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;IAED,6CAAS,GAAT;QAAA,iBAoBC;QAnBC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACxC;QACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;aACd,IAAI,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;;YAEvC,KAAI,CAAC,YAAY,GAAG,UAAU,CAAC;gBAC7B,KAAI,CAAC,SAAS,EAAE,CAAC;aAClB,EAAE,KAAK,CAAC,CAAC;SACX,CAAC;aACD,KAAK,CAAC,UAAA,KAAK;YACV,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;SACxD,CAAC,CAAC;KACN;IAED,6CAAS,GAAT;QACE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACnB,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC;SAC5B;QACD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAChC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;SAC1B;KACF;IAED,sDAAkB,GAAlB;QAAA,iBAgBC;QAfC,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,KAAK,CAAC;;QAGnB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC;SACrC;QAED,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC;;gBAE5B,QAAQ,CAAC,KAAK,GAAG,MAAM,GAAG,KAAI,CAAC,cAAc,GAAG,KAAI,CAAC,aAAa,CAAC;gBACnE,MAAM,GAAG,CAAC,MAAM,CAAC;aAClB,EAAE,IAAI,CAAC,CAAC;SACV;KACF;IAED,qDAAiB,GAAjB;QACE,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;QAC1C,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC;SACrC;KACF;IAED,4DAAwB,GAAxB,UAAyB,uBAA+B,EAAE,KAAa;QAAvE,iBAwCC;QAvCC,OAAO,CAAC,GAAG,CAAC,kDAAkD,EAAE,EAAE,uBAAuB,yBAAA,EAAE,KAAK,OAAA,EAAE,CAAC,CAAC;QACpG,IAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACtC,IAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,qBAAqB;aACvB,cAAc,CAAC,uBAAuB,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;aAC1E,SAAS,CAAC,UAAC,IAAI;YACd,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,IAAI,CAAC,CAAC;YACrE,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;gBAE3B,IAAM,YAAU,GAAG,IAAI,CAAC,GAAG,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,cAAc,GAAA,CAAC,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,YAAU,CAAC,CAAC;;gBAGrD,KAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,UAAC,EAAE;oBACtC,IAAI,CAAC,YAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;wBAC5B,KAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;qBACzC;iBACF,CAAC,CAAC;;gBAGH,IAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,UAAA,MAAM,IAAI,OAAA,CAAC,KAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,GAAA,CAAC,CAAC;;gBAGlG,SAAS,CAAC,OAAO,CAAC,UAAA,MAAM,IAAI,OAAA,KAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,CAAC,GAAA,CAAC,CAAC;gBACrF,IAAI,KAAI,CAAC,uBAAuB,CAAC,IAAI,GAAG,CAAC,EAAE;oBACzC,KAAI,CAAC,kBAAkB,EAAE,CAAC;iBAC3B;;gBAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxB,KAAI,CAAC,SAAS,EAAE,CAAC;iBAClB;aACF;iBAAM;;gBAEL,KAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,CAAC;gBACrC,KAAI,CAAC,iBAAiB,EAAE,CAAC;aAC1B;;YAED,YAAY,CAAC,OAAO,CAAC,2BAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC;SAC7G,CAAC,CAAC;KACN;;gBAhL0C,qBAAqB;;;IAXrD,yBAAyB;QAHrC,UAAU,CAAC;YACV,UAAU,EAAE,MAAM;SACnB,CAAC;OACW,yBAAyB,CA6LrC;oCApMD;CAOA;;;ICyBA;KAA6B;IAAhB,YAAY;QAhBxB,QAAQ,CAAC;YACR,YAAY,EAAE,CAAC,eAAe,CAAC;YAC/B,OAAO,EAAE;gBACP,aAAa;gBACb,gBAAgB;gBAChB,gBAAgB;gBAChB,aAAa;gBACb,eAAe;gBACf,aAAa;gBACb,aAAa;gBACb,eAAe;gBACf,gBAAgB;gBAChB,SAAS;aACV;YACD,OAAO,EAAE,CAAC,eAAe,CAAC;SAC3B,CAAC;OACW,YAAY,CAAI;IAAD,mBAAC;CAA7B;;AChCA;;;;ACAA;;;;;;"}
|
|
1
|
+
{"version":3,"file":"wm-menu.js","sources":["ng://wm-menu/lib/wm-menu/model/wm-menu-cuenta.model.ts","ng://wm-menu/lib/wm-menu/services/wm-menu-servicio.service.ts","ng://wm-menu/lib/wm-menu/services/wm-menu-alerta-panico.service.ts","ng://wm-menu/lib/wm-menu/wm-menu.component.ts","ng://wm-menu/lib/wm-menu.module.ts","ng://wm-menu/public-api.ts","ng://wm-menu/wm-menu.ts"],"sourcesContent":["export class MenuSecundario {\r\n icono: string;\r\n titulo: string;\r\n hijos: MenuSecundarioHijo[] = [];\r\n}\r\n\r\nexport class MenuSecundarioHijo {\r\n icono: string;\r\n titulo: string;\r\n url: string;\r\n}","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';\r\nimport { map, catchError } from 'rxjs/operators';\r\nimport { throwError, Observable } from 'rxjs';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { MatIconRegistry } from '@angular/material/icon';\r\nimport { MenuPrincipal } from '../model/wm-menu-principal.model';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class WmMenuServicioService {\r\n\r\n constructor(private http: HttpClient, private iconRegistry: MatIconRegistry, private sanitizer: DomSanitizer) { }\r\n\r\n menuApiObtener(url:string, idUsuario: string, token:string, codLogicaParametro = \"\"): Observable<any> {\r\n const headers = new HttpHeaders({\r\n 'Authorization': `Bearer ${token}`\r\n });\r\n \r\n let myParams = new HttpParams();\r\n if (codLogicaParametro.length > 0) {\r\n myParams = myParams.append(\"codLogica\", codLogicaParametro);\r\n }\r\n myParams = myParams.append(\"ctrlActivo\", \"true\");\r\n myParams = myParams.append(\"conPadres\", \"true\");\r\n if (idUsuario != null)\r\n myParams = myParams.append(\"idUsuario\", idUsuario.toString());\r\n\r\n return this.http.get(url, { headers, params: myParams }).pipe(\r\n map(resp => {\r\n return resp;\r\n }),\r\n catchError(error => {\r\n return throwError(error.error);\r\n })\r\n );\r\n }\r\n\r\n mapearMenu(respApi: any): MenuPrincipal[] {\r\n respApi = respApi.sort((a, b) => a.Posicion > b.Posicion?\"1\":\"-1\");\r\n\r\n for (const key in respApi) {\r\n const element = respApi[key];\r\n if (element.Icono.startsWith(\"http\")) {\r\n var iconSvg = 'wm-icon-menu-' + key;\r\n this.iconRegistry.addSvgIcon(\r\n iconSvg,\r\n this.sanitizer.bypassSecurityTrustResourceUrl(element.Icono));\r\n respApi[key].Icono = iconSvg;\r\n }\r\n }\r\n\r\n return this.obtenerMenu(respApi);\r\n }\r\n\r\n\r\n private obtenerMenu(respApi: any, idMenuPadre?: Number): MenuPrincipal[] {\r\n var menu: MenuPrincipal[] = [];\r\n for (const key in respApi) {\r\n if (respApi[key].IdMenuPadre == idMenuPadre || (!idMenuPadre && respApi[key].IdMenuPadre == null)) {\r\n menu.push({\r\n titulo: respApi[key].IdiomaRecurso,\r\n url: respApi[key].Url,\r\n icono: respApi[key].Icono,\r\n descripcion: respApi[key].Descripcion,\r\n hijos: this.obtenerMenu(respApi, respApi[key].IdMenu)\r\n });\r\n }\r\n }\r\n return menu;\r\n }\r\n\r\n menuIdiomasObtener(url:string, idUsuario: string, token:string): Observable<any> {\r\n const headers = new HttpHeaders({\r\n 'Authorization': `Bearer ${token}`\r\n });\r\n\r\n return this.http.get(url).pipe(\r\n map(resp => {\r\n return resp;\r\n }),\r\n catchError(error => {\r\n return throwError(error.error);\r\n })\r\n );\r\n }\r\n \r\n almacenamientoApiObtener(url:string, idUsuario: string, token:string): Observable<any> {\r\n const headers = new HttpHeaders({\r\n 'Authorization': `Bearer ${token}`\r\n });\r\n \r\n let myParams = new HttpParams();\r\n\r\n if (idUsuario != null)\r\n myParams = myParams.append(\"idUsuario\", idUsuario.toString());\r\n \r\n return this.http.get(url, { headers, params: myParams }).pipe(\r\n map(resp => {\r\n return resp;\r\n }),\r\n catchError(error => {\r\n return throwError(error.error);\r\n })\r\n );\r\n }\r\n}","import { Injectable } from '@angular/core';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\nimport { WmMenuServicioService } from './wm-menu-servicio.service';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class WmMenuAlertaPanicoService {\r\n\r\n private intervalId: any;\r\n private alternateTitle = 'Alerta de Pánico Recibida';\r\n private originalTitle: string;\r\n private audio: HTMLAudioElement | null = null;\r\n private isPlaying = false; // Controla si el sonido ya está reproduciéndose\r\n public formulario: any;\r\n private IdsAlertasPanicoActivas: Set<number> = new Set(); // Almacena los IDs de las alertas ya manejadas\r\n private soundTimeout: any = null; // Controla el temporizador del sonido\r\n private rutaAudio: string;\r\n constructor(private wmMenuServicioService: WmMenuServicioService) { }\r\n\r\n private subscription: any;\r\n private isRunning: boolean = false;\r\n\r\n iniciarProceso(\r\n intervalMs: number,\r\n callback: () => void,\r\n urlObtenerParametro: string,\r\n token: string,\r\n rutaAudio: string\r\n ): void {\r\n this.rutaAudio = rutaAudio;\r\n \r\n const iniciarConInteraccion = () => {\r\n this.wmMenuServicioService\r\n .menuApiObtener(urlObtenerParametro, null, token, 'ReporteAlertasPanico')\r\n .subscribe((resp) => {\r\n // validar si el parametro ReporteAlertasPanico esta encendido\r\n if (resp && resp.length > 0 && resp[0].Valor == 1) {\r\n if (this.isRunning) {\r\n return;\r\n }\r\n // Inicializar la variable desde localStorage\r\n const storedIds = localStorage.getItem('ALERTAS_PANICO_ACTIVAS_WM');\r\n this.IdsAlertasPanicoActivas = storedIds ? new Set(JSON.parse(storedIds)) : new Set();\r\n \r\n const ejecutarProceso = () => {\r\n this.isRunning = true;\r\n callback();\r\n setTimeout(() => {\r\n this.isRunning = false;\r\n ejecutarProceso();\r\n }, intervalMs);\r\n };\r\n \r\n ejecutarProceso();\r\n }\r\n });\r\n };\r\n \r\n ['drag', 'click'].forEach(evento => {\r\n document.addEventListener(\r\n evento,\r\n () => {\r\n iniciarConInteraccion();\r\n },\r\n { once: true }\r\n );\r\n });\r\n\r\n }\r\n \r\n\r\n stopProcess(): void {\r\n this.isRunning = false;\r\n if (this.subscription) {\r\n this.subscription.unsubscribe();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.stopSound();\r\n this.stopFlashingTitle();\r\n }\r\n\r\n playSound(): void {\r\n if (this.isPlaying) return; // Evita reproducir si ya está sonando\r\n\r\n this.isPlaying = true;\r\n if (!this.audio) {\r\n this.audio = new Audio(this.rutaAudio); // Ruta al archivo de sonido\r\n }\r\n\r\n this.audio.loop = true; // Reproducir en bucle\r\n this.audio.play()\r\n .then(() => {\r\n // Detener el sonido después de 10 segundos\r\n this.soundTimeout = setTimeout(() => {\r\n this.stopSound();\r\n }, 10000); // Detener después de 10 segundos\r\n })\r\n .catch(error => {\r\n console.log('Error al reproducir el sonido:', error);\r\n });\r\n }\r\n\r\n stopSound(): void {\r\n if (this.audio) {\r\n this.audio.pause();\r\n this.audio.currentTime = 0; // Reinicia el sonido\r\n }\r\n this.isPlaying = false; // Restablece la bandera\r\n if (this.soundTimeout) {\r\n clearTimeout(this.soundTimeout); // Asegura que el temporizador se borre\r\n this.soundTimeout = null;\r\n }\r\n }\r\n\r\n startFlashingTitle(): void {\r\n let toggle = false;\r\n \r\n // Almacenar el título original si aún no se ha guardado\r\n if (!this.originalTitle) {\r\n this.originalTitle = document.title;\r\n }\r\n \r\n if (!this.intervalId) {\r\n this.intervalId = setInterval(() => {\r\n // Alternar entre el título alternativo y el título original\r\n document.title = toggle ? this.alternateTitle : this.originalTitle;\r\n toggle = !toggle;\r\n }, 1000); // Cambia el título cada segundo\r\n }\r\n }\r\n\r\n stopFlashingTitle(): void {\r\n if (this.intervalId) {\r\n clearInterval(this.intervalId);\r\n this.intervalId = null;\r\n document.title = this.originalTitle; // Restaura a vacío\r\n }\r\n }\r\n\r\n revisarAlertasPendientes(urlObtenerAlertasPanico: string, token: string): void {\r\n const helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(token);\r\n this.wmMenuServicioService\r\n .menuApiObtener(urlObtenerAlertasPanico, decodedToken['id_usuario'], token)\r\n .subscribe((resp) => {\r\n if (resp && resp.length > 0) {\r\n \r\n const alertasIds = resp.map(alerta => alerta.IdAlertaPanico);\r\n\r\n // Eliminar IDs que no están en la respuesta del servicio\r\n this.IdsAlertasPanicoActivas.forEach((id) => {\r\n if (!alertasIds.includes(id)) {\r\n this.IdsAlertasPanicoActivas.delete(id);\r\n }\r\n });\r\n\r\n // Filtrar alertas nuevas\r\n const newAlerts = resp.filter(alerta => !this.IdsAlertasPanicoActivas.has(alerta.IdAlertaPanico));\r\n\r\n // Agregar las nuevas alertas a la lista activa\r\n newAlerts.forEach(alerta => this.IdsAlertasPanicoActivas.add(alerta.IdAlertaPanico));\r\n if (this.IdsAlertasPanicoActivas.size > 0) {\r\n this.startFlashingTitle();\r\n }\r\n // Si hay nuevas alertas, dispara notificacion sonora\r\n if (newAlerts.length > 0) {\r\n this.playSound();\r\n }\r\n } else {\r\n // Si no hay alertas en la respuesta, limpiar la lista\r\n this.IdsAlertasPanicoActivas.clear();\r\n this.stopFlashingTitle();\r\n }\r\n // Actualizar localStorage con los IDs activos\r\n localStorage.setItem('ALERTAS_PANICO_ACTIVAS_WM', JSON.stringify(Array.from(this.IdsAlertasPanicoActivas)));\r\n });\r\n }\r\n\r\n}\r\n","import { Component, OnInit, Input } from '@angular/core';\r\nimport { MenuPrincipal } from './model/wm-menu-principal.model';\r\nimport { MenuSecundario } from './model/wm-menu-cuenta.model';\r\nimport { WmMenuServicioService } from './services/wm-menu-servicio.service';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\nimport { WmMenuAlertaPanicoService } from './services/wm-menu-alerta-panico.service';\r\n\r\n@Component({\r\n selector: 'wm-menu',\r\n templateUrl: './wm-menu.component.html',\r\n styleUrls: ['./wm-menu.component.scss']\r\n})\r\nexport class WmMenuComponent implements OnInit {\r\n @Input() logo: string;\r\n @Input() colorFondo: string;\r\n @Input() colorTexto: string;\r\n @Input() menuPrincipal: MenuPrincipal[];\r\n @Input() menuSecundario: MenuSecundario[];\r\n\r\n @Input() urlMenu: string; \r\n @Input() token: string;\r\n @Input() urlCuentaSeguridad: string;\r\n @Input() activar2fa: string;\r\n @Input() urlguiasOnline: string;\r\n @Input() urlObtenerAlertasPanico: string;\r\n @Input() urlObtenerParametro: string;\r\n @Input() rutaAudio: string;\r\n\r\n @Input() nombreCliente: string;\r\n @Input() nombreUsuario: string;\r\n @Input() versionWeb: string;\r\n @Input() urlBaseAlmacenamiento: string;\r\n\r\n @Input() urlIdiomas: string;\r\n\r\n menuPrincipalSel: MenuPrincipal;\r\n menuSecundarioSel: MenuSecundario = new MenuSecundario();\r\n menuLateralAbierto: Boolean = false;\r\n porcentajeUtilizado : number;\r\n menuIdioma : any = [];\r\n private intervaloPeticionesMs = 60000;\r\n\r\n constructor(private wmMenuServicioService: WmMenuServicioService, private alertaPanicoService: WmMenuAlertaPanicoService) { }\r\n\r\n ngOnInit(): void {\r\n this.cargarMenuCuenta();\r\n\r\n this.alertaPanicoService.iniciarProceso(this.intervaloPeticionesMs, () => this.alertaPanicoService.revisarAlertasPendientes(this.urlObtenerAlertasPanico, this.token), this.urlObtenerParametro, this.token, this.rutaAudio);\r\n\r\n if (this.urlMenu && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.wmMenuServicioService\r\n .menuApiObtener(this.urlMenu, decodedToken[\"id_usuario\"], this.token)\r\n .subscribe((resp) => {\r\n this.menuPrincipal = this.wmMenuServicioService.mapearMenu(resp);\r\n });\r\n }\r\n\r\n if (this.urlIdiomas && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.wmMenuServicioService\r\n .menuIdiomasObtener(this.urlIdiomas, decodedToken[\"id_usuario\"], this.token)\r\n .subscribe((resp) => {\r\n this.menuIdioma = resp;\r\n this.cargarMenuCuenta();\r\n });\r\n }\r\n\r\n if (this.urlBaseAlmacenamiento && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.wmMenuServicioService\r\n .almacenamientoApiObtener(this.urlBaseAlmacenamiento, decodedToken[\"id_usuario\"], this.token)\r\n .subscribe((resp) => {\r\n let utilizado = resp[0] && resp[0].Utilizado ? resp[0].Utilizado : 0;\r\n let total = resp[0] && resp[0].Total ? resp[0].Total : 0;\r\n this.porcentajeUtilizado = Math.round((utilizado / total) * 100);\r\n });\r\n }\r\n }\r\n\r\n clickMenuPrincipal(i: number) {\r\n if (this.menuPrincipal[i].hijos && this.menuPrincipal[i].hijos.length) {\r\n if (this.menuPrincipalSel == this.menuPrincipal[i]) {\r\n this.menuPrincipalSel = null;\r\n } else {\r\n this.menuPrincipalSel = this.menuPrincipal[i];\r\n }\r\n }\r\n }\r\n\r\n clickMenuSecundario(i: number) {\r\n this.menuSecundarioSel = this.menuSecundario[i];\r\n this.menuPrincipalSel = null;\r\n }\r\n\r\n cargarMenuCuenta(){\r\n if (this.urlCuentaSeguridad && this.token) {\r\n var helper = new JwtHelperService();\r\n const decodedToken = helper.decodeToken(this.token);\r\n this.menuSecundario = [{\r\n titulo: decodedToken[\"unique_name\"],\r\n icono: \"account_circle\",\r\n hijos: [\r\n { titulo: decodedToken[\"unique_name\"], url: \"\", icono: \"person\" },\r\n { titulo: this.menuIdioma && this.menuIdioma.CambiarContrasenna ? this.menuIdioma.CambiarContrasenna : \"Cambiar contraseña\", url: this.urlCuentaSeguridad + \"CambioContrasena\", icono: \"vpn_key\" },\r\n this.activar2fa == \"1\" ? { titulo: this.menuIdioma && this.menuIdioma.Configurar2fa ? this.menuIdioma.Configurar2fa : \"Configurar 2FA\", url: this.urlCuentaSeguridad + \"Habilitacion2FA\", icono: \"verified_user\" } : null,\r\n this.urlguiasOnline != null && this.urlguiasOnline !== \"\" && this.urlguiasOnline?.length != 0 ? { titulo: this.menuIdioma && this.menuIdioma.guiasOnline ? this.menuIdioma.guiasOnline : \"Guias Online\", url: this.urlguiasOnline, icono: \"menu_book\" } : null,\r\n { titulo: this.menuIdioma && this.menuIdioma.CerrarSesion ? this.menuIdioma.CerrarSesion : \"Cerrar sesión\", url: this.urlCuentaSeguridad + \"CerrarSesion\", icono: \"exit_to_app\" }].filter(hijo => hijo != null),\r\n }];\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\n\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSidenavModule} from '@angular/material/sidenav';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { MatRippleModule } from \"@angular/material/core\";\r\n\r\nimport { WmMenuComponent } from './wm-menu/wm-menu.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { BrowserModule } from '@angular/platform-browser';\r\nimport { JwtModule } from '@auth0/angular-jwt';\r\n\r\n\r\n@NgModule({\r\n declarations: [WmMenuComponent],\r\n imports: [\r\n BrowserModule,\r\n MatToolbarModule,\r\n MatSidenavModule,\r\n MatListModule,\r\n MatButtonModule,\r\n MatIconModule,\r\n MatMenuModule,\r\n MatRippleModule,\r\n HttpClientModule,\r\n JwtModule\r\n ],\r\n exports: [WmMenuComponent]\r\n})\r\nexport class WmMenuModule { }\r\n","/*\r\n * Public API Surface of wm-menu\r\n */\r\n\r\nexport * from './lib/wm-menu/wm-menu.component';\r\nexport * from './lib/wm-menu/services/wm-menu-servicio.service';\r\nexport * from './lib/wm-menu/services/wm-menu-alerta-panico.service';\r\nexport * from './lib/wm-menu.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,10 @@ import { OnInit } from '@angular/core';
|
|
|
2
2
|
import { MenuPrincipal } from './model/wm-menu-principal.model';
|
|
3
3
|
import { MenuSecundario } from './model/wm-menu-cuenta.model';
|
|
4
4
|
import { WmMenuServicioService } from './services/wm-menu-servicio.service';
|
|
5
|
+
import { WmMenuAlertaPanicoService } from './services/wm-menu-alerta-panico.service';
|
|
5
6
|
export declare class WmMenuComponent implements OnInit {
|
|
6
7
|
private wmMenuServicioService;
|
|
8
|
+
private alertaPanicoService;
|
|
7
9
|
logo: string;
|
|
8
10
|
colorFondo: string;
|
|
9
11
|
colorTexto: string;
|
|
@@ -27,7 +29,8 @@ export declare class WmMenuComponent implements OnInit {
|
|
|
27
29
|
menuLateralAbierto: Boolean;
|
|
28
30
|
porcentajeUtilizado: number;
|
|
29
31
|
menuIdioma: any;
|
|
30
|
-
|
|
32
|
+
private intervaloPeticionesMs;
|
|
33
|
+
constructor(wmMenuServicioService: WmMenuServicioService, alertaPanicoService: WmMenuAlertaPanicoService);
|
|
31
34
|
ngOnInit(): void;
|
|
32
35
|
clickMenuPrincipal(i: number): void;
|
|
33
36
|
clickMenuSecundario(i: number): void;
|