wm-menu 1.2.9 → 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 +7 -24
- 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 +5 -5
- package/esm5/lib/wm-menu/services/wm-menu-alerta-panico.service.js +4 -21
- package/esm5/lib/wm-menu/wm-menu.component.js +5 -5
- package/fesm2015/wm-menu.js +7 -24
- package/fesm2015/wm-menu.js.map +1 -1
- package/fesm5/wm-menu.js +7 -24
- package/fesm5/wm-menu.js.map +1 -1
- package/lib/wm-menu/wm-menu.component.d.ts +3 -3
- package/package.json +1 -1
package/bundles/wm-menu.umd.js
CHANGED
|
@@ -333,28 +333,23 @@
|
|
|
333
333
|
this.IdsAlertasPanicoActivas = new Set(); // Almacena los IDs de las alertas ya manejadas
|
|
334
334
|
this.soundTimeout = null; // Controla el temporizador del sonido
|
|
335
335
|
this.isRunning = false;
|
|
336
|
-
console.log('WmMenuAlertaPanicoService inicializado.');
|
|
337
336
|
}
|
|
338
337
|
WmMenuAlertaPanicoService.prototype.iniciarProceso = function (intervalMs, callback, urlObtenerParametro, token, rutaAudio) {
|
|
339
338
|
var _this = this;
|
|
340
|
-
console.log('iniciarProceso llamado con parámetros:', { intervalMs: intervalMs, urlObtenerParametro: urlObtenerParametro, token: token, rutaAudio: rutaAudio });
|
|
341
339
|
this.rutaAudio = rutaAudio;
|
|
342
340
|
var iniciarConInteraccion = function () {
|
|
343
|
-
console.log('iniciarConInteraccion ejecutado.');
|
|
344
341
|
_this.wmMenuServicioService
|
|
345
342
|
.menuApiObtener(urlObtenerParametro, null, token, 'ReporteAlertasPanico')
|
|
346
343
|
.subscribe(function (resp) {
|
|
347
|
-
|
|
344
|
+
// validar si el parametro ReporteAlertasPanico esta encendido
|
|
348
345
|
if (resp && resp.length > 0 && resp[0].Valor == 1) {
|
|
349
346
|
if (_this.isRunning) {
|
|
350
|
-
console.log('Proceso ya está corriendo.');
|
|
351
347
|
return;
|
|
352
348
|
}
|
|
349
|
+
// Inicializar la variable desde localStorage
|
|
353
350
|
var storedIds = localStorage.getItem('ALERTAS_PANICO_ACTIVAS_WM');
|
|
354
351
|
_this.IdsAlertasPanicoActivas = storedIds ? new Set(JSON.parse(storedIds)) : new Set();
|
|
355
|
-
console.log('IdsAlertasPanicoActivas inicializado:', _this.IdsAlertasPanicoActivas);
|
|
356
352
|
var ejecutarProceso_1 = function () {
|
|
357
|
-
console.log('ejecutarProceso iniciado.');
|
|
358
353
|
_this.isRunning = true;
|
|
359
354
|
callback();
|
|
360
355
|
setTimeout(function () {
|
|
@@ -367,49 +362,42 @@
|
|
|
367
362
|
});
|
|
368
363
|
};
|
|
369
364
|
['drag', 'click'].forEach(function (evento) {
|
|
370
|
-
console.log("Evento " + evento + " registrado para iniciar proceso.");
|
|
371
365
|
document.addEventListener(evento, function () {
|
|
372
366
|
iniciarConInteraccion();
|
|
373
367
|
}, { once: true });
|
|
374
368
|
});
|
|
375
369
|
};
|
|
376
370
|
WmMenuAlertaPanicoService.prototype.stopProcess = function () {
|
|
377
|
-
console.log('stopProcess ejecutado.');
|
|
378
371
|
this.isRunning = false;
|
|
379
372
|
if (this.subscription) {
|
|
380
373
|
this.subscription.unsubscribe();
|
|
381
374
|
}
|
|
382
375
|
};
|
|
383
376
|
WmMenuAlertaPanicoService.prototype.ngOnDestroy = function () {
|
|
384
|
-
console.log('ngOnDestroy ejecutado.');
|
|
385
377
|
this.stopSound();
|
|
386
378
|
this.stopFlashingTitle();
|
|
387
379
|
};
|
|
388
380
|
WmMenuAlertaPanicoService.prototype.playSound = function () {
|
|
389
381
|
var _this = this;
|
|
390
|
-
console.log('playSound llamado.');
|
|
391
382
|
if (this.isPlaying)
|
|
392
383
|
return; // Evita reproducir si ya está sonando
|
|
393
384
|
this.isPlaying = true;
|
|
394
385
|
if (!this.audio) {
|
|
395
386
|
this.audio = new Audio(this.rutaAudio); // Ruta al archivo de sonido
|
|
396
387
|
}
|
|
397
|
-
console.log("Audio cargado: ", this.audio);
|
|
398
388
|
this.audio.loop = true; // Reproducir en bucle
|
|
399
389
|
this.audio.play()
|
|
400
390
|
.then(function () {
|
|
401
|
-
console.log('Sonido reproduciéndose.');
|
|
402
391
|
// Detener el sonido después de 10 segundos
|
|
403
392
|
_this.soundTimeout = setTimeout(function () {
|
|
404
393
|
_this.stopSound();
|
|
405
394
|
}, 10000); // Detener después de 10 segundos
|
|
406
395
|
})
|
|
407
396
|
.catch(function (error) {
|
|
408
|
-
console.
|
|
397
|
+
console.log('Error al reproducir el sonido:', error);
|
|
409
398
|
});
|
|
410
399
|
};
|
|
411
400
|
WmMenuAlertaPanicoService.prototype.stopSound = function () {
|
|
412
|
-
console.log('stopSound llamado.');
|
|
413
401
|
if (this.audio) {
|
|
414
402
|
this.audio.pause();
|
|
415
403
|
this.audio.currentTime = 0; // Reinicia el sonido
|
|
@@ -422,7 +410,6 @@
|
|
|
422
410
|
};
|
|
423
411
|
WmMenuAlertaPanicoService.prototype.startFlashingTitle = function () {
|
|
424
412
|
var _this = this;
|
|
425
|
-
console.log('startFlashingTitle llamado.');
|
|
426
413
|
var toggle = false;
|
|
427
414
|
// Almacenar el título original si aún no se ha guardado
|
|
428
415
|
if (!this.originalTitle) {
|
|
@@ -437,7 +424,6 @@
|
|
|
437
424
|
}
|
|
438
425
|
};
|
|
439
426
|
WmMenuAlertaPanicoService.prototype.stopFlashingTitle = function () {
|
|
440
|
-
console.log('stopFlashingTitle llamado.');
|
|
441
427
|
if (this.intervalId) {
|
|
442
428
|
clearInterval(this.intervalId);
|
|
443
429
|
this.intervalId = null;
|
|
@@ -446,16 +432,13 @@
|
|
|
446
432
|
};
|
|
447
433
|
WmMenuAlertaPanicoService.prototype.revisarAlertasPendientes = function (urlObtenerAlertasPanico, token) {
|
|
448
434
|
var _this = this;
|
|
449
|
-
console.log('revisarAlertasPendientes llamado con parámetros:', { urlObtenerAlertasPanico: urlObtenerAlertasPanico, token: token });
|
|
450
435
|
var helper = new angularJwt.JwtHelperService();
|
|
451
436
|
var decodedToken = helper.decodeToken(token);
|
|
452
437
|
this.wmMenuServicioService
|
|
453
438
|
.menuApiObtener(urlObtenerAlertasPanico, decodedToken['id_usuario'], token)
|
|
454
439
|
.subscribe(function (resp) {
|
|
455
|
-
console.log('Respuesta obtenida de revisarAlertasPendientes:', resp);
|
|
456
440
|
if (resp && resp.length > 0) {
|
|
457
441
|
var alertasIds_1 = resp.map(function (alerta) { return alerta.IdAlertaPanico; });
|
|
458
|
-
console.log('IDs de alertas obtenidas:', alertasIds_1);
|
|
459
442
|
// Eliminar IDs que no están en la respuesta del servicio
|
|
460
443
|
_this.IdsAlertasPanicoActivas.forEach(function (id) {
|
|
461
444
|
if (!alertasIds_1.includes(id)) {
|
|
@@ -496,18 +479,18 @@
|
|
|
496
479
|
}());
|
|
497
480
|
|
|
498
481
|
var WmMenuComponent = /** @class */ (function () {
|
|
499
|
-
function WmMenuComponent(wmMenuServicioService,
|
|
482
|
+
function WmMenuComponent(wmMenuServicioService, alertaPanicoService) {
|
|
500
483
|
this.wmMenuServicioService = wmMenuServicioService;
|
|
501
|
-
this.
|
|
502
|
-
this.intervaloPeticionesMs = 60000;
|
|
484
|
+
this.alertaPanicoService = alertaPanicoService;
|
|
503
485
|
this.menuSecundarioSel = new MenuSecundario();
|
|
504
486
|
this.menuLateralAbierto = false;
|
|
505
487
|
this.menuIdioma = [];
|
|
488
|
+
this.intervaloPeticionesMs = 60000;
|
|
506
489
|
}
|
|
507
490
|
WmMenuComponent.prototype.ngOnInit = function () {
|
|
508
491
|
var _this = this;
|
|
509
|
-
this.wmMenuAlertaPanicoService.iniciarProceso(this.intervaloPeticionesMs, function () { return _this.wmMenuAlertaPanicoService.revisarAlertasPendientes(_this.urlObtenerAlertasPanico, _this.token); }, this.urlObtenerParametro, this.token, this.rutaAudio);
|
|
510
492
|
this.cargarMenuCuenta();
|
|
493
|
+
this.alertaPanicoService.iniciarProceso(this.intervaloPeticionesMs, function () { return _this.alertaPanicoService.revisarAlertasPendientes(_this.urlObtenerAlertasPanico, _this.token); }, this.urlObtenerParametro, this.token, this.rutaAudio);
|
|
511
494
|
if (this.urlMenu && this.token) {
|
|
512
495
|
var helper = new angularJwt.JwtHelperService();
|
|
513
496
|
var decodedToken = helper.decodeToken(this.token);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wm-menu.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","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"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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 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 { 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 private intervaloPeticionesMs = 60000;\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, private wmMenuAlertaPanicoService: WmMenuAlertaPanicoService) { }\r\n\r\n ngOnInit(): void {\r\n \r\n this.wmMenuAlertaPanicoService.iniciarProceso(this.intervaloPeticionesMs, () => this.wmMenuAlertaPanicoService.revisarAlertasPendientes(this.urlObtenerAlertasPanico, this.token), this.urlObtenerParametro, this.token, this.rutaAudio);\r\n\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 { 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"],"names":["HttpHeaders","HttpParams","map","catchError","throwError","HttpClient","MatIconRegistry","DomSanitizer","Injectable","JwtHelperService","Input","Component","NgModule","BrowserModule","MatToolbarModule","MatSidenavModule","MatListModule","MatButtonModule","MatIconModule","MatMenuModule","MatRippleModule","HttpClientModule","JwtModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wm-menu.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","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"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","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"],"names":["HttpHeaders","HttpParams","map","catchError","throwError","HttpClient","MatIconRegistry","DomSanitizer","Injectable","JwtHelperService","Input","Component","NgModule","BrowserModule","MatToolbarModule","MatSidenavModule","MatListModule","MatButtonModule","MatIconModule","MatMenuModule","MatRippleModule","HttpClientModule","JwtModule"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common/http"),require("rxjs/operators"),require("rxjs"),require("@angular/platform-browser"),require("@angular/material/icon"),require("@auth0/angular-jwt"),require("@angular/material/toolbar"),require("@angular/material/sidenav"),require("@angular/material/list"),require("@angular/material/button"),require("@angular/material/menu"),require("@angular/material/core")):"function"==typeof define&&define.amd?define("wm-menu",["exports","@angular/core","@angular/common/http","rxjs/operators","rxjs","@angular/platform-browser","@angular/material/icon","@auth0/angular-jwt","@angular/material/toolbar","@angular/material/sidenav","@angular/material/list","@angular/material/button","@angular/material/menu","@angular/material/core"],e):e((n=n||self)["wm-menu"]={},n.ng.core,n.ng.common.http,n.rxjs.operators,n.rxjs,n.ng.platformBrowser,n.ng.material.icon,n.angularJwt,n.ng.material.toolbar,n.ng.material.sidenav,n.ng.material.list,n.ng.material.button,n.ng.material.menu,n.ng.material.core)}(this,(function(n,e,i,t,o,r,a,l,
|
|
1
|
+
!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common/http"),require("rxjs/operators"),require("rxjs"),require("@angular/platform-browser"),require("@angular/material/icon"),require("@auth0/angular-jwt"),require("@angular/material/toolbar"),require("@angular/material/sidenav"),require("@angular/material/list"),require("@angular/material/button"),require("@angular/material/menu"),require("@angular/material/core")):"function"==typeof define&&define.amd?define("wm-menu",["exports","@angular/core","@angular/common/http","rxjs/operators","rxjs","@angular/platform-browser","@angular/material/icon","@auth0/angular-jwt","@angular/material/toolbar","@angular/material/sidenav","@angular/material/list","@angular/material/button","@angular/material/menu","@angular/material/core"],e):e((n=n||self)["wm-menu"]={},n.ng.core,n.ng.common.http,n.rxjs.operators,n.rxjs,n.ng.platformBrowser,n.ng.material.icon,n.angularJwt,n.ng.material.toolbar,n.ng.material.sidenav,n.ng.material.list,n.ng.material.button,n.ng.material.menu,n.ng.material.core)}(this,(function(n,e,i,t,o,r,a,u,l,c,s,m,d,p){"use strict";
|
|
2
2
|
/*! *****************************************************************************
|
|
3
3
|
Copyright (c) Microsoft Corporation.
|
|
4
4
|
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */function g(n,e,i,t){var o,r=arguments.length,a=r<3?e:null===t?t=Object.getOwnPropertyDescriptor(e,i):t;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(n,e,i,t);else for(var l=n.length-1;l>=0;l--)(o=n[l])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a}var f=function(){this.hijos=[]},h=function(){function n(n,e,i){this.http=n,this.iconRegistry=e,this.sanitizer=i}return n.prototype.menuApiObtener=function(n,e,r,a){void 0===a&&(a="");var l=new i.HttpHeaders({Authorization:"Bearer "+r}),u=new i.HttpParams;return a.length>0&&(u=u.append("codLogica",a)),u=(u=u.append("ctrlActivo","true")).append("conPadres","true"),null!=e&&(u=u.append("idUsuario",e.toString())),this.http.get(n,{headers:l,params:u}).pipe(t.map((function(n){return n})),t.catchError((function(n){return o.throwError(n.error)})))},n.prototype.mapearMenu=function(n){for(var e in n=n.sort((function(n,e){return n.Posicion>e.Posicion?"1":"-1"}))){var i=n[e];if(i.Icono.startsWith("http")){var t="wm-icon-menu-"+e;this.iconRegistry.addSvgIcon(t,this.sanitizer.bypassSecurityTrustResourceUrl(i.Icono)),n[e].Icono=t}}return this.obtenerMenu(n)},n.prototype.obtenerMenu=function(n,e){var i=[];for(var t in n)(n[t].IdMenuPadre==e||!e&&null==n[t].IdMenuPadre)&&i.push({titulo:n[t].IdiomaRecurso,url:n[t].Url,icono:n[t].Icono,descripcion:n[t].Descripcion,hijos:this.obtenerMenu(n,n[t].IdMenu)});return i},n.prototype.menuIdiomasObtener=function(n,e,r){new i.HttpHeaders({Authorization:"Bearer "+r});return this.http.get(n).pipe(t.map((function(n){return n})),t.catchError((function(n){return o.throwError(n.error)})))},n.prototype.almacenamientoApiObtener=function(n,e,r){var a=new i.HttpHeaders({Authorization:"Bearer "+r}),l=new i.HttpParams;return null!=e&&(l=l.append("idUsuario",e.toString())),this.http.get(n,{headers:a,params:l}).pipe(t.map((function(n){return n})),t.catchError((function(n){return o.throwError(n.error)})))},n.ctorParameters=function(){return[{type:i.HttpClient},{type:a.MatIconRegistry},{type:r.DomSanitizer}]},n.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new n(e.ɵɵinject(i.HttpClient),e.ɵɵinject(a.MatIconRegistry),e.ɵɵinject(r.DomSanitizer))},token:n,providedIn:"root"}),n=g([e.Injectable({providedIn:"root"})],n)}(),v=function(){function n(n){this.wmMenuServicioService=n,this.alternateTitle="Alerta de Pánico Recibida",this.audio=null,this.isPlaying=!1,this.IdsAlertasPanicoActivas=new Set,this.soundTimeout=null,this.isRunning=!1,console.log("WmMenuAlertaPanicoService inicializado.")}return n.prototype.iniciarProceso=function(n,e,i,t,o){var r=this;console.log("iniciarProceso llamado con parámetros:",{intervalMs:n,urlObtenerParametro:i,token:t,rutaAudio:o}),this.rutaAudio=o;["drag","click"].forEach((function(o){console.log("Evento "+o+" registrado para iniciar proceso."),document.addEventListener(o,(function(){console.log("iniciarConInteraccion ejecutado."),r.wmMenuServicioService.menuApiObtener(i,null,t,"ReporteAlertasPanico").subscribe((function(i){if(console.log("Respuesta obtenida de menuApiObtener:",i),i&&i.length>0&&1==i[0].Valor){if(r.isRunning)return void console.log("Proceso ya está corriendo.");var t=localStorage.getItem("ALERTAS_PANICO_ACTIVAS_WM");r.IdsAlertasPanicoActivas=t?new Set(JSON.parse(t)):new Set,console.log("IdsAlertasPanicoActivas inicializado:",r.IdsAlertasPanicoActivas);var o=function(){console.log("ejecutarProceso iniciado."),r.isRunning=!0,e(),setTimeout((function(){r.isRunning=!1,o()}),n)};o()}}))}),{once:!0})}))},n.prototype.stopProcess=function(){console.log("stopProcess ejecutado."),this.isRunning=!1,this.subscription&&this.subscription.unsubscribe()},n.prototype.ngOnDestroy=function(){console.log("ngOnDestroy ejecutado."),this.stopSound(),this.stopFlashingTitle()},n.prototype.playSound=function(){var n=this;console.log("playSound llamado."),this.isPlaying||(this.isPlaying=!0,this.audio||(this.audio=new Audio(this.rutaAudio)),console.log("Audio cargado: ",this.audio),this.audio.loop=!0,this.audio.play().then((function(){console.log("Sonido reproduciéndose."),n.soundTimeout=setTimeout((function(){n.stopSound()}),1e4)})).catch((function(n){console.error("Error al reproducir el sonido:",n)})))},n.prototype.stopSound=function(){console.log("stopSound llamado."),this.audio&&(this.audio.pause(),this.audio.currentTime=0),this.isPlaying=!1,this.soundTimeout&&(clearTimeout(this.soundTimeout),this.soundTimeout=null)},n.prototype.startFlashingTitle=function(){var n=this;console.log("startFlashingTitle llamado.");var e=!1;this.originalTitle||(this.originalTitle=document.title),this.intervalId||(this.intervalId=setInterval((function(){document.title=e?n.alternateTitle:n.originalTitle,e=!e}),1e3))},n.prototype.stopFlashingTitle=function(){console.log("stopFlashingTitle llamado."),this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null,document.title=this.originalTitle)},n.prototype.revisarAlertasPendientes=function(n,e){var i=this;console.log("revisarAlertasPendientes llamado con parámetros:",{urlObtenerAlertasPanico:n,token:e});var t=(new l.JwtHelperService).decodeToken(e);this.wmMenuServicioService.menuApiObtener(n,t.id_usuario,e).subscribe((function(n){if(console.log("Respuesta obtenida de revisarAlertasPendientes:",n),n&&n.length>0){var e=n.map((function(n){return n.IdAlertaPanico}));console.log("IDs de alertas obtenidas:",e),i.IdsAlertasPanicoActivas.forEach((function(n){e.includes(n)||i.IdsAlertasPanicoActivas.delete(n)}));var t=n.filter((function(n){return!i.IdsAlertasPanicoActivas.has(n.IdAlertaPanico)}));t.forEach((function(n){return i.IdsAlertasPanicoActivas.add(n.IdAlertaPanico)})),i.IdsAlertasPanicoActivas.size>0&&i.startFlashingTitle(),t.length>0&&i.playSound()}else i.IdsAlertasPanicoActivas.clear(),i.stopFlashingTitle();localStorage.setItem("ALERTAS_PANICO_ACTIVAS_WM",JSON.stringify(Array.from(i.IdsAlertasPanicoActivas)))}))},n.ctorParameters=function(){return[{type:h}]},n.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new n(e.ɵɵinject(h))},token:n,providedIn:"root"}),n=g([e.Injectable({providedIn:"root"})],n)}(),b=function(){function n(n,e){this.wmMenuServicioService=n,this.wmMenuAlertaPanicoService=e,this.intervaloPeticionesMs=6e4,this.menuSecundarioSel=new f,this.menuLateralAbierto=!1,this.menuIdioma=[]}return n.prototype.ngOnInit=function(){var n=this;if(this.wmMenuAlertaPanicoService.iniciarProceso(this.intervaloPeticionesMs,(function(){return n.wmMenuAlertaPanicoService.revisarAlertasPendientes(n.urlObtenerAlertasPanico,n.token)}),this.urlObtenerParametro,this.token,this.rutaAudio),this.cargarMenuCuenta(),this.urlMenu&&this.token){var e=(new l.JwtHelperService).decodeToken(this.token);this.wmMenuServicioService.menuApiObtener(this.urlMenu,e.id_usuario,this.token).subscribe((function(e){n.menuPrincipal=n.wmMenuServicioService.mapearMenu(e)}))}if(this.urlIdiomas&&this.token){e=(new l.JwtHelperService).decodeToken(this.token);this.wmMenuServicioService.menuIdiomasObtener(this.urlIdiomas,e.id_usuario,this.token).subscribe((function(e){n.menuIdioma=e,n.cargarMenuCuenta()}))}if(this.urlBaseAlmacenamiento&&this.token){e=(new l.JwtHelperService).decodeToken(this.token);this.wmMenuServicioService.almacenamientoApiObtener(this.urlBaseAlmacenamiento,e.id_usuario,this.token).subscribe((function(e){var i=e[0]&&e[0].Utilizado?e[0].Utilizado:0,t=e[0]&&e[0].Total?e[0].Total:0;n.porcentajeUtilizado=Math.round(i/t*100)}))}},n.prototype.clickMenuPrincipal=function(n){this.menuPrincipal[n].hijos&&this.menuPrincipal[n].hijos.length&&(this.menuPrincipalSel==this.menuPrincipal[n]?this.menuPrincipalSel=null:this.menuPrincipalSel=this.menuPrincipal[n])},n.prototype.clickMenuSecundario=function(n){this.menuSecundarioSel=this.menuSecundario[n],this.menuPrincipalSel=null},n.prototype.cargarMenuCuenta=function(){var n;if(this.urlCuentaSeguridad&&this.token){var e=(new l.JwtHelperService).decodeToken(this.token);this.menuSecundario=[{titulo:e.unique_name,icono:"account_circle",hijos:[{titulo:e.unique_name,url:"",icono:"person"},{titulo:this.menuIdioma&&this.menuIdioma.CambiarContrasenna?this.menuIdioma.CambiarContrasenna:"Cambiar contraseña",url:this.urlCuentaSeguridad+"CambioContrasena",icono:"vpn_key"},"1"==this.activar2fa?{titulo:this.menuIdioma&&this.menuIdioma.Configurar2fa?this.menuIdioma.Configurar2fa:"Configurar 2FA",url:this.urlCuentaSeguridad+"Habilitacion2FA",icono:"verified_user"}:null,null!=this.urlguiasOnline&&""!==this.urlguiasOnline&&0!=(null===(n=this.urlguiasOnline)||void 0===n?void 0:n.length)?{titulo:this.menuIdioma&&this.menuIdioma.guiasOnline?this.menuIdioma.guiasOnline:"Guias Online",url:this.urlguiasOnline,icono:"menu_book"}:null,{titulo:this.menuIdioma&&this.menuIdioma.CerrarSesion?this.menuIdioma.CerrarSesion:"Cerrar sesión",url:this.urlCuentaSeguridad+"CerrarSesion",icono:"exit_to_app"}].filter((function(n){return null!=n}))}]}},n.ctorParameters=function(){return[{type:h},{type:v}]},g([e.Input()],n.prototype,"logo",void 0),g([e.Input()],n.prototype,"colorFondo",void 0),g([e.Input()],n.prototype,"colorTexto",void 0),g([e.Input()],n.prototype,"menuPrincipal",void 0),g([e.Input()],n.prototype,"menuSecundario",void 0),g([e.Input()],n.prototype,"urlMenu",void 0),g([e.Input()],n.prototype,"token",void 0),g([e.Input()],n.prototype,"urlCuentaSeguridad",void 0),g([e.Input()],n.prototype,"activar2fa",void 0),g([e.Input()],n.prototype,"urlguiasOnline",void 0),g([e.Input()],n.prototype,"urlObtenerAlertasPanico",void 0),g([e.Input()],n.prototype,"urlObtenerParametro",void 0),g([e.Input()],n.prototype,"rutaAudio",void 0),g([e.Input()],n.prototype,"nombreCliente",void 0),g([e.Input()],n.prototype,"nombreUsuario",void 0),g([e.Input()],n.prototype,"versionWeb",void 0),g([e.Input()],n.prototype,"urlBaseAlmacenamiento",void 0),g([e.Input()],n.prototype,"urlIdiomas",void 0),n=g([e.Component({selector:"wm-menu",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>',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}"]})],n)}(),I=function(){function n(){}return n=g([e.NgModule({declarations:[b],imports:[r.BrowserModule,u.MatToolbarModule,s.MatSidenavModule,c.MatListModule,m.MatButtonModule,a.MatIconModule,d.MatMenuModule,p.MatRippleModule,i.HttpClientModule,l.JwtModule],exports:[b]})],n)}();n.WmMenuAlertaPanicoService=v,n.WmMenuComponent=b,n.WmMenuModule=I,n.WmMenuServicioService=h,Object.defineProperty(n,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */function f(n,e,i,t){var o,r=arguments.length,a=r<3?e:null===t?t=Object.getOwnPropertyDescriptor(e,i):t;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(n,e,i,t);else for(var u=n.length-1;u>=0;u--)(o=n[u])&&(a=(r<3?o(a):r>3?o(e,i,a):o(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a}var h=function(){this.hijos=[]},g=function(){function n(n,e,i){this.http=n,this.iconRegistry=e,this.sanitizer=i}return n.prototype.menuApiObtener=function(n,e,r,a){void 0===a&&(a="");var u=new i.HttpHeaders({Authorization:"Bearer "+r}),l=new i.HttpParams;return a.length>0&&(l=l.append("codLogica",a)),l=(l=l.append("ctrlActivo","true")).append("conPadres","true"),null!=e&&(l=l.append("idUsuario",e.toString())),this.http.get(n,{headers:u,params:l}).pipe(t.map((function(n){return n})),t.catchError((function(n){return o.throwError(n.error)})))},n.prototype.mapearMenu=function(n){for(var e in n=n.sort((function(n,e){return n.Posicion>e.Posicion?"1":"-1"}))){var i=n[e];if(i.Icono.startsWith("http")){var t="wm-icon-menu-"+e;this.iconRegistry.addSvgIcon(t,this.sanitizer.bypassSecurityTrustResourceUrl(i.Icono)),n[e].Icono=t}}return this.obtenerMenu(n)},n.prototype.obtenerMenu=function(n,e){var i=[];for(var t in n)(n[t].IdMenuPadre==e||!e&&null==n[t].IdMenuPadre)&&i.push({titulo:n[t].IdiomaRecurso,url:n[t].Url,icono:n[t].Icono,descripcion:n[t].Descripcion,hijos:this.obtenerMenu(n,n[t].IdMenu)});return i},n.prototype.menuIdiomasObtener=function(n,e,r){new i.HttpHeaders({Authorization:"Bearer "+r});return this.http.get(n).pipe(t.map((function(n){return n})),t.catchError((function(n){return o.throwError(n.error)})))},n.prototype.almacenamientoApiObtener=function(n,e,r){var a=new i.HttpHeaders({Authorization:"Bearer "+r}),u=new i.HttpParams;return null!=e&&(u=u.append("idUsuario",e.toString())),this.http.get(n,{headers:a,params:u}).pipe(t.map((function(n){return n})),t.catchError((function(n){return o.throwError(n.error)})))},n.ctorParameters=function(){return[{type:i.HttpClient},{type:a.MatIconRegistry},{type:r.DomSanitizer}]},n.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new n(e.ɵɵinject(i.HttpClient),e.ɵɵinject(a.MatIconRegistry),e.ɵɵinject(r.DomSanitizer))},token:n,providedIn:"root"}),n=f([e.Injectable({providedIn:"root"})],n)}(),v=function(){function n(n){this.wmMenuServicioService=n,this.alternateTitle="Alerta de Pánico Recibida",this.audio=null,this.isPlaying=!1,this.IdsAlertasPanicoActivas=new Set,this.soundTimeout=null,this.isRunning=!1}return n.prototype.iniciarProceso=function(n,e,i,t,o){var r=this;this.rutaAudio=o;["drag","click"].forEach((function(o){document.addEventListener(o,(function(){r.wmMenuServicioService.menuApiObtener(i,null,t,"ReporteAlertasPanico").subscribe((function(i){if(i&&i.length>0&&1==i[0].Valor){if(r.isRunning)return;var t=localStorage.getItem("ALERTAS_PANICO_ACTIVAS_WM");r.IdsAlertasPanicoActivas=t?new Set(JSON.parse(t)):new Set;var o=function(){r.isRunning=!0,e(),setTimeout((function(){r.isRunning=!1,o()}),n)};o()}}))}),{once:!0})}))},n.prototype.stopProcess=function(){this.isRunning=!1,this.subscription&&this.subscription.unsubscribe()},n.prototype.ngOnDestroy=function(){this.stopSound(),this.stopFlashingTitle()},n.prototype.playSound=function(){var n=this;this.isPlaying||(this.isPlaying=!0,this.audio||(this.audio=new Audio(this.rutaAudio)),this.audio.loop=!0,this.audio.play().then((function(){n.soundTimeout=setTimeout((function(){n.stopSound()}),1e4)})).catch((function(n){console.log("Error al reproducir el sonido:",n)})))},n.prototype.stopSound=function(){this.audio&&(this.audio.pause(),this.audio.currentTime=0),this.isPlaying=!1,this.soundTimeout&&(clearTimeout(this.soundTimeout),this.soundTimeout=null)},n.prototype.startFlashingTitle=function(){var n=this,e=!1;this.originalTitle||(this.originalTitle=document.title),this.intervalId||(this.intervalId=setInterval((function(){document.title=e?n.alternateTitle:n.originalTitle,e=!e}),1e3))},n.prototype.stopFlashingTitle=function(){this.intervalId&&(clearInterval(this.intervalId),this.intervalId=null,document.title=this.originalTitle)},n.prototype.revisarAlertasPendientes=function(n,e){var i=this,t=(new u.JwtHelperService).decodeToken(e);this.wmMenuServicioService.menuApiObtener(n,t.id_usuario,e).subscribe((function(n){if(n&&n.length>0){var e=n.map((function(n){return n.IdAlertaPanico}));i.IdsAlertasPanicoActivas.forEach((function(n){e.includes(n)||i.IdsAlertasPanicoActivas.delete(n)}));var t=n.filter((function(n){return!i.IdsAlertasPanicoActivas.has(n.IdAlertaPanico)}));t.forEach((function(n){return i.IdsAlertasPanicoActivas.add(n.IdAlertaPanico)})),i.IdsAlertasPanicoActivas.size>0&&i.startFlashingTitle(),t.length>0&&i.playSound()}else i.IdsAlertasPanicoActivas.clear(),i.stopFlashingTitle();localStorage.setItem("ALERTAS_PANICO_ACTIVAS_WM",JSON.stringify(Array.from(i.IdsAlertasPanicoActivas)))}))},n.ctorParameters=function(){return[{type:g}]},n.ɵprov=e.ɵɵdefineInjectable({factory:function(){return new n(e.ɵɵinject(g))},token:n,providedIn:"root"}),n=f([e.Injectable({providedIn:"root"})],n)}(),b=function(){function n(n,e){this.wmMenuServicioService=n,this.alertaPanicoService=e,this.menuSecundarioSel=new h,this.menuLateralAbierto=!1,this.menuIdioma=[],this.intervaloPeticionesMs=6e4}return n.prototype.ngOnInit=function(){var n=this;if(this.cargarMenuCuenta(),this.alertaPanicoService.iniciarProceso(this.intervaloPeticionesMs,(function(){return n.alertaPanicoService.revisarAlertasPendientes(n.urlObtenerAlertasPanico,n.token)}),this.urlObtenerParametro,this.token,this.rutaAudio),this.urlMenu&&this.token){var e=(new u.JwtHelperService).decodeToken(this.token);this.wmMenuServicioService.menuApiObtener(this.urlMenu,e.id_usuario,this.token).subscribe((function(e){n.menuPrincipal=n.wmMenuServicioService.mapearMenu(e)}))}if(this.urlIdiomas&&this.token){e=(new u.JwtHelperService).decodeToken(this.token);this.wmMenuServicioService.menuIdiomasObtener(this.urlIdiomas,e.id_usuario,this.token).subscribe((function(e){n.menuIdioma=e,n.cargarMenuCuenta()}))}if(this.urlBaseAlmacenamiento&&this.token){e=(new u.JwtHelperService).decodeToken(this.token);this.wmMenuServicioService.almacenamientoApiObtener(this.urlBaseAlmacenamiento,e.id_usuario,this.token).subscribe((function(e){var i=e[0]&&e[0].Utilizado?e[0].Utilizado:0,t=e[0]&&e[0].Total?e[0].Total:0;n.porcentajeUtilizado=Math.round(i/t*100)}))}},n.prototype.clickMenuPrincipal=function(n){this.menuPrincipal[n].hijos&&this.menuPrincipal[n].hijos.length&&(this.menuPrincipalSel==this.menuPrincipal[n]?this.menuPrincipalSel=null:this.menuPrincipalSel=this.menuPrincipal[n])},n.prototype.clickMenuSecundario=function(n){this.menuSecundarioSel=this.menuSecundario[n],this.menuPrincipalSel=null},n.prototype.cargarMenuCuenta=function(){var n;if(this.urlCuentaSeguridad&&this.token){var e=(new u.JwtHelperService).decodeToken(this.token);this.menuSecundario=[{titulo:e.unique_name,icono:"account_circle",hijos:[{titulo:e.unique_name,url:"",icono:"person"},{titulo:this.menuIdioma&&this.menuIdioma.CambiarContrasenna?this.menuIdioma.CambiarContrasenna:"Cambiar contraseña",url:this.urlCuentaSeguridad+"CambioContrasena",icono:"vpn_key"},"1"==this.activar2fa?{titulo:this.menuIdioma&&this.menuIdioma.Configurar2fa?this.menuIdioma.Configurar2fa:"Configurar 2FA",url:this.urlCuentaSeguridad+"Habilitacion2FA",icono:"verified_user"}:null,null!=this.urlguiasOnline&&""!==this.urlguiasOnline&&0!=(null===(n=this.urlguiasOnline)||void 0===n?void 0:n.length)?{titulo:this.menuIdioma&&this.menuIdioma.guiasOnline?this.menuIdioma.guiasOnline:"Guias Online",url:this.urlguiasOnline,icono:"menu_book"}:null,{titulo:this.menuIdioma&&this.menuIdioma.CerrarSesion?this.menuIdioma.CerrarSesion:"Cerrar sesión",url:this.urlCuentaSeguridad+"CerrarSesion",icono:"exit_to_app"}].filter((function(n){return null!=n}))}]}},n.ctorParameters=function(){return[{type:g},{type:v}]},f([e.Input()],n.prototype,"logo",void 0),f([e.Input()],n.prototype,"colorFondo",void 0),f([e.Input()],n.prototype,"colorTexto",void 0),f([e.Input()],n.prototype,"menuPrincipal",void 0),f([e.Input()],n.prototype,"menuSecundario",void 0),f([e.Input()],n.prototype,"urlMenu",void 0),f([e.Input()],n.prototype,"token",void 0),f([e.Input()],n.prototype,"urlCuentaSeguridad",void 0),f([e.Input()],n.prototype,"activar2fa",void 0),f([e.Input()],n.prototype,"urlguiasOnline",void 0),f([e.Input()],n.prototype,"urlObtenerAlertasPanico",void 0),f([e.Input()],n.prototype,"urlObtenerParametro",void 0),f([e.Input()],n.prototype,"rutaAudio",void 0),f([e.Input()],n.prototype,"nombreCliente",void 0),f([e.Input()],n.prototype,"nombreUsuario",void 0),f([e.Input()],n.prototype,"versionWeb",void 0),f([e.Input()],n.prototype,"urlBaseAlmacenamiento",void 0),f([e.Input()],n.prototype,"urlIdiomas",void 0),n=f([e.Component({selector:"wm-menu",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>',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}"]})],n)}(),I=function(){function n(){}return n=f([e.NgModule({declarations:[b],imports:[r.BrowserModule,l.MatToolbarModule,c.MatSidenavModule,s.MatListModule,m.MatButtonModule,a.MatIconModule,d.MatMenuModule,p.MatRippleModule,i.HttpClientModule,u.JwtModule],exports:[b]})],n)}();n.WmMenuAlertaPanicoService=v,n.WmMenuComponent=b,n.WmMenuModule=I,n.WmMenuServicioService=g,Object.defineProperty(n,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=wm-menu.umd.min.js.map
|