general-library-union 2.3.3 → 2.3.5

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.
@@ -22,6 +22,17 @@ export class ErrorIntecertorService {
22
22
  */
23
23
  showError(errorJson) {
24
24
  const error = JSON.parse(errorJson);
25
+ console.log('entra showError');
26
+ console.log(error);
27
+ if (error.codigo == 'UNI-DB-002' || error.codigo == 'UNI-DB-003'
28
+ || error.mensaje.includes('Se produjo un error de red') || error.mensaje.includes('El servicio no está disponible')) {
29
+ this.storageService.setItem('mensaje_notfound', error.mensaje);
30
+ this.storageService.setItem('url_regresar', window.location.href);
31
+ console.log(window.location.origin + '/' + this.utilsService.obtenerBase() + '/not-found');
32
+ window.location.href = window.location.origin + '/' + this.utilsService.obtenerBase() + '/not-found';
33
+ //this.route.navigate([this.utilsService.obtenerBase()+'/not-found']);
34
+ return;
35
+ }
25
36
  if (error.tipo === 'INF') {
26
37
  this.showInfo(error.mensaje, error.codigo);
27
38
  }
@@ -29,16 +40,7 @@ export class ErrorIntecertorService {
29
40
  this.showWarning(error.mensaje, error.codigo, error.causa, error.accion, error.traza);
30
41
  }
31
42
  else if (error.tipo === 'ERR') {
32
- if (error.codigo == 'UNI-DB-002' || error.codigo == 'UNI-DB-003') {
33
- this.storageService.setItem('mensaje_notfound', error.mensaje);
34
- this.storageService.setItem('url_regresar', window.location.href);
35
- console.log(window.location.origin + '/' + this.utilsService.obtenerBase() + '/not-found');
36
- window.location.href = window.location.origin + '/' + this.utilsService.obtenerBase() + '/not-found';
37
- //this.route.navigate([this.utilsService.obtenerBase()+'/not-found']);
38
- }
39
- else {
40
- this.showErrorDetails(error.mensaje, error.codigo, error.traza, error.causa);
41
- }
43
+ this.showErrorDetails(error.mensaje, error.codigo, error.traza, error.causa);
42
44
  }
43
45
  }
44
46
  /**
@@ -145,4 +147,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
145
147
  providedIn: 'root'
146
148
  }]
147
149
  }], ctorParameters: () => [{ type: i1.UtilsService }, { type: i2.Router }, { type: i3.AuthService }, { type: i4.StorageService }] });
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvZXJyb3ItaW50ZXJjZXB0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBVS9CLE1BQU0sT0FBTyxzQkFBc0I7SUFFYjtJQUNBO0lBQ0E7SUFDQTtJQUhwQixZQUFvQixZQUEwQixFQUMxQixLQUFhLEVBQ2IsV0FBd0IsRUFDeEIsY0FBOEI7UUFIOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUM5QyxDQUFDO0lBRUo7OztNQUdFO0lBQ0gsU0FBUyxDQUFDLFNBQWlCO1FBQ3pCLE1BQU0sS0FBSyxHQUF1QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXhELElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdDLENBQUM7YUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUN4RixDQUFDO2FBQU0sSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLEtB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dGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XG5pbXBvcnQgeyBFcnJvclJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi9tb2RlbG9zL2Vycm9yLXJlc3BvbnNlLm1vZGVsJztcbmltcG9ydCB7IFV0aWxzU2VydmljZSB9IGZyb20gJy4vdXRpbHMuc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuL2F1dGguc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRXJyb3JJbnRlY2VydG9yU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1dGlsc1NlcnZpY2U6IFV0aWxzU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByb3V0ZTogUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogU3RvcmFnZVNlcnZpY2UsXG4gICkgeyB9XG5cbiAgIC8qKlxuICAgKiBNdWVzdHJhIHVuIG1lbnNhamUgZGUgZXJyb3Igc2Vnw7puIGVsIHRpcG8gZGUgZXJyb3IgcHJvcG9yY2lvbmFkby5cbiAgICogQHBhcmFtIGVycm9ySnNvbiBFbCBvYmpldG8gSlNPTiBxdWUgcmVwcmVzZW50YSBlbCBlcnJvci5cbiAgICovXG4gIHNob3dFcnJvcihlcnJvckpzb246IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGVycm9yOiBFcnJvclJlc3BvbnNlTW9kZWwgPSBKU09OLnBhcnNlKGVycm9ySnNvbik7XG5cbiAgICBpZiAoZXJyb3IudGlwbyA9PT0gJ0lORicpIHtcbiAgICAgIHRoaXMuc2hvd0luZm8oZXJyb3IubWVuc2FqZSwgZXJyb3IuY29kaWdvKTtcbiAgICB9IGVsc2UgaWYgKGVycm9yLnRpcG8gPT09ICdXQVInKSB7XG4gICAgICB0aGlzLnNob3dXYXJuaW5nKGVycm9yLm1lbnNhamUsIGVycm9yLmNvZGlnbywgZXJyb3IuY2F1c2EsIGVycm9yLmFjY2lvbiwgZXJyb3IudHJhemEpO1xuICAgIH0gZWxzZSBpZiAoZXJyb3IudGlwbyA9PT0gJ0VSUicpIHtcbiAgICAgIGlmIChlcnJvci5jb2RpZ28gPT0gJ1VOSS1EQi0wMDInIHx8IGVycm9yLmNvZGlnbyA9PSAnVU5JLURCLTAwMycpIHtcbiAgICAgICAgdGhpcy5zdG9yYWdlU2VydmljZS5zZXRJdGVtKCdtZW5zYWplX25vdGZvdW5kJywgZXJyb3IubWVuc2FqZSk7XG4gICAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgndXJsX3JlZ3Jlc2FyJywgd2luZG93LmxvY2F0aW9uLmhyZWYpO1xuICAgICAgICBjb25zb2xlLmxvZyh3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgJy8nK3RoaXMudXRpbHNTZXJ2aWNlLm9idGVuZXJCYXNlKCkgKyAnL25vdC1mb3VuZCcpXG4gICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gd2luZG93LmxvY2F0aW9uLm9yaWdpbiArICcvJyArIHRoaXMudXRpbHNTZXJ2aWNlLm9idGVuZXJCYXNlKCkgKyAnL25vdC1mb3VuZCdcbiAgICAgICAgLy90aGlzLnJvdXRlLm5hdmlnYXRlKFt0aGlzLnV0aWxzU2VydmljZS5vYnRlbmVyQmFzZSgpKycvbm90LWZvdW5kJ10pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zaG93RXJyb3JEZXRhaWxzKGVycm9yLm1lbnNhamUsIGVycm9yLmNvZGlnbywgZXJyb3IudHJhemEsIGVycm9yLmNhdXNhKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTXVlc3RyYSB1biBtZW5zYWplIGRlIGluZm9ybWFjacOzbiBjb24gZWwgY8OzZGlnby5cbiAgICogQHBhcmFtIG1lbnNhamUgRWwgbWVuc2FqZSBhIG1vc3RyYXIuXG4gICAqIEBwYXJhbSBjb2RpZ28gRWwgY8OzZGlnbyBhc29jaWFkbyBhbCBtZW5zYWplLlxuICAgKi9cbiAgcHJpdmF0ZSBzaG93SW5mbyhtZW5zYWplOiBzdHJpbmcsIGNvZGlnbzogc3RyaW5nKTogdm9pZCB7XG4gICAgU3dhbC5maXJlKHtcbiAgICAgIGJhY2tncm91bmQ6ICcjZjdiZmJmJyxcbiAgICAgIHBvc2l0aW9uOiAndG9wLWVuZCcsXG4gICAgICBodG1sOiAnPGRpdiBzdHlsZT1cInRleHQtYWxpZ246IGxlZnQ7XCI+JyArXG4gICAgICAgICAgICAgICc8cCBzdHlsZT1cInRleHQtYWxpZ246IGxlZnQ7XCI+PGI+Q8OzZGlnbzo8L2I+ICcgKyBjb2RpZ28gKyAnPC9wPicgK1xuICAgICAgICAgICAgICAnPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBsZWZ0OyBmb250LXNpemU6MTJweFwiPicgKyBtZW5zYWplICsgJzwvcD4nICtcbiAgICAgICAgICAgICc8L2Rpdj4nLFxuICAgICAgc2hvd0NvbmZpcm1CdXR0b246IGZhbHNlLFxuICAgICAgdGltZXI6IDU1MDAsXG4gICAgICBjb2xvcjogJyNmZjAwMDAnXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTXVlc3RyYSB1bmEgYWR2ZXJ0ZW5jaWEgY29uIGRldGFsbGVzIGFkaWNpb25hbGVzIGNvbW8gY2F1c2EsIGFjY2nDs24geSB0cmF6YS5cbiAgICogQHBhcmFtIG1lbnNhamUgRWwgbWVuc2FqZSBhIG1vc3RyYXIuXG4gICAqIEBwYXJhbSBjb2RpZ28gRWwgY8OzZGlnbyBhc29jaWFkbyBhbCBtZW5zYWplLlxuICAgKiBAcGFyYW0gY2F1c2EgTGEgY2F1c2EgZGVsIGVycm9yLlxuICAgKiBAcGFyYW0gYWNjaW9uIExhIGFjY2nDs24gcmVjb21lbmRhZGEuXG4gICAqIEBwYXJhbSB0cmF6YSBMYSB0cmF6YSBkZWwgZXJyb3IuXG4gICAqL1xuICBwcml2YXRlIHNob3dXYXJuaW5nKG1lbnNhamU6IHN0cmluZywgY29kaWdvOiBzdHJpbmcsIGNhdXNhOiBzdHJpbmcsIGFjY2lvbjogc3RyaW5nLCB0cmF6YTogc3RyaW5nKTogdm9pZCB7XG4gICAgbGV0IGNvbnRlbmlkb0h0bWwgPSBgPHAgY2xhc3M9XCJtc2pFcnJvclwiPiR7bWVuc2FqZX08L3A+YFxuICAgIGNvbnRlbmlkb0h0bWwgPSBjb250ZW5pZG9IdG1sICsgKHRoaXMudXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNvZGlnbykgPyBgPHAgY2xhc3M9XCJjYXVFcnJvclwiPjxiPkPDs2RpZ286PC9iPiAke2NvZGlnb308L3A+YCA6ICcgJyk7XG4gICAgY29udGVuaWRvSHRtbCA9IGNvbnRlbmlkb0h0bWwgKyAodGhpcy51dGlsc1NlcnZpY2UudmFsaWRhckNhbXBvT2JsaWdhdG9yaW8oY2F1c2EpID8gYDxwIGNsYXNzPVwiY2F1RXJyb3JcIj48Yj5DYXVzYTo8L2I+ICR7Y2F1c2F9PC9wPmAgOiAnICcpO1xuICAgIGNvbnRlbmlkb0h0bWwgPSBjb250ZW5pZG9IdG1sICsgKHRoaXMudXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGFjY2lvbikgPyBgPHAgY2xhc3M9XCJjYXVFcnJvclwiPjxiPkFjY2nDs24gUmVjb21lbmRhZGE6PC9iPiAke2FjY2lvbn08L3A+YCA6ICcgJyk7XG4gICAgbGV0IGNvbnRlbmlkb1BsdXNIdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamUuc2xpY2UoMCwgMTAwKX08L3A+PGJ1dHRvbiBpZD1cInZlck1hc0J1dHRvblwiPlZlciBtw6FzPC9idXR0b24+IDxidXR0b24gaWQ9XCJPa1wiPk9LPC9idXR0b24+YDtcblxuICAgIFN3YWwuZmlyZSh7XG4gICAgICB0aXRsZTogJzxzcGFuIHN0eWxlPVwiY29sb3I6IHZhcigtLWNvbG9yLTcwMCk7XCI+JyArICdBZHZlcnRlbmNpYScgKyAnPC9zcGFuPicsXG4gICAgICBodG1sOiBjb250ZW5pZG9IdG1sLFxuICAgICAgaWNvbjogJ3dhcm5pbmcnLFxuICAgICAgc2hvd0NhbmNlbEJ1dHRvbjogZmFsc2UsXG4gICAgICBzaG93Q2xvc2VCdXR0b246IHRydWUsXG4gICAgICBzaG93Q29uZmlybUJ1dHRvbjogdHJ1ZSxcbiAgICAgIGRpZE9wZW46ICgpID0+IHtcbiAgICAgICAgICBjb25zdCBPa0J1dHRvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdPaycpO1xuICAgICAgICAgIE9rQnV0dG9uLmNsYXNzTGlzdC5hZGQoJ3N3YWwyLXN0eWxlZCcsICdzd2FsMi1jYW5jZWwnLCAnYnRuLW9rJyk7XG4gICAgICAgICAgT2tCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgICBTd2FsLmNsb3NlKCk7XG4gICAgICAgICAgfSk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIE11ZXN0cmEgdW4gbWVuc2FqZSBkZSBlcnJvciBjb24gZGV0YWxsZXMgYWRpY2lvbmFsZXMgY29tbyBlbCBjw7NkaWdvIGRlIGVycm9yIHkgbGEgdHJhemEuXG4gICAqIEBwYXJhbSBtZW5zYWplIEVsIG1lbnNhamUgYSBtb3N0cmFyLlxuICAgKiBAcGFyYW0gZXJyb3JDb2RlIEVsIGPDs2RpZ28gZGUgZXJyb3IgYXNvY2lhZG8gYWwgbWVuc2FqZS5cbiAgICogQHBhcmFtIHRyYXphIExhIHRyYXphIGRlbCBlcnJvci5cbiAgICovXG4gIHByaXZhdGUgc2hvd0Vycm9yRGV0YWlscyhtZW5zYWplOiBzdHJpbmcsIGNvZGlnbzogc3RyaW5nLCB0cmF6YTogc3RyaW5nLCBjYXVzYT8gOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgIGxldCBjb250ZW5pZG9IdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamV9PC9wPjxwIGNsYXNzPVwiY29kRXJyb3JcIj48Yj5Dw7NkaWdvOjwvYj4gJHtjb2RpZ299PC9wPjxwIGNsYXNzPVwidHJhRXJyb3JcIj48Yj5UcmF6YTo8L2I+ICR7dHJhemF9PC9wPjxwIGNsYXNzPVwiY2F1RXJyb3JcIj5gO1xuICAgICAgaWYgKGNhdXNhIT0gbnVsbCAmJiBjYXVzYSAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgY29udGVuaWRvSHRtbCA9IGA8cCBjbGFzcz1cIm1zakVycm9yXCI+JHttZW5zYWplfTwvcD48cCBjbGFzcz1cImNvZEVycm9yXCI+PGI+Q8OzZGlnbzo8L2I+ICR7Y29kaWdvfTwvcD48cCBjbGFzcz1cInRyYUVycm9yXCI+PGI+VHJhemE6PC9iPiAke3RyYXphfTwvcD48cCBjbGFzcz1cImNhdUVycm9yXCI+PGI+Q2F1c2E6PC9iPiAke2NhdXNhfTwvcD5gO1xuICAgICAgfVxuICAgICAgbGV0IGNvbnRlbmlkb1BsdXNIdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamUuc2xpY2UoMCwgMTAwKX08L3A+PGJ1dHRvbiBpZD1cInZlck1hc0J1dHRvblwiPlZlciBtw6FzPC9idXR0b24+IDxidXR0b24gY2xhc3M9XCJidG4tb2tcIiBpZD1cIk9rXCI+T0s8L2J1dHRvbj5gO1xuXG4gICAgICBTd2FsLmZpcmUoe1xuICAgICAgICB0aXRsZTogJzxzcGFuIHN0eWxlPVwiY29sb3I6IHZhcigtLWNvbG9yLTcwMCk7XCI+JyArICdFcnJvcicgKyAnPC9zcGFuPicsXG4gICAgICAgIGh0bWw6IChtZW5zYWplLmxlbmd0aCArIHRyYXphLmxlbmd0aCkgPiAxMDAgPyBjb250ZW5pZG9QbHVzSHRtbCA6IGNvbnRlbmlkb0h0bWwsXG4gICAgICAgIGljb246ICdlcnJvcicsXG4gICAgICAgIHNob3dDYW5jZWxCdXR0b246IGZhbHNlLFxuICAgICAgICBzaG93Q2xvc2VCdXR0b246IHRydWUsXG4gICAgICAgIHNob3dDb25maXJtQnV0dG9uOiBmYWxzZSxcbiAgICAgICAgY3VzdG9tQ2xhc3M6ICdteS1zd2FsJyxcbiAgICAgICAgZGlkT3BlbjogKCkgPT4ge1xuICAgICAgICAgIGlmICgobWVuc2FqZS5sZW5ndGggKyB0cmF6YS5sZW5ndGgpID4gMTAwKSB7XG4gICAgICAgICAgICAvLyBBZ3JlZ2FyIGVzdGlsb3MgYWwgYm90w7NuIFwiVmVyIG3DoXNcIlxuICAgICAgICAgICAgY29uc3QgdmVyTWFzQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Zlck1hc0J1dHRvbicpO1xuICAgICAgICAgICAgdmVyTWFzQnV0dG9uLmNsYXNzTGlzdC5hZGQoJ3N3YWwyLXN0eWxlZCcsICdzd2FsMi1jYW5jZWwnLCAnYnRuLXZlcm1hcycgKTtcblxuICAgICAgICAgICAgY29uc3QgT2tCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnT2snKTtcbiAgICAgICAgICAgIE9rQnV0dG9uLmNsYXNzTGlzdC5hZGQoJ3N3YWwyLXN0eWxlZCcsICdzd2FsMi1jYW5jZWwnICwgJ2J0bi1vaycpO1xuXG4gICAgICAgICAgICAvLyBBZ3JlZ2FyIHVuIGV2ZW50byBhbCBib3TDs24gXCJWZXIgbcOhc1wiIHBhcmEgbW9zdHJhciB0b2RvIGVsIGNvbnRlbmlkbyBjdWFuZG8gc2UgaGFjZSBjbGljXG4gICAgICAgICAgICB2ZXJNYXNCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgICAgIFN3YWwudXBkYXRlKHtcbiAgICAgICAgICAgICAgICBodG1sOiBjb250ZW5pZG9IdG1sLFxuICAgICAgICAgICAgICAgIHNob3dDb25maXJtQnV0dG9uOiB0cnVlLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBPa0J1dHRvbi5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsICgpID0+IHtcbiAgICAgICAgICAgICAgU3dhbC5jbG9zZSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGVsc2V7XG4gICAgICAgICAgICBTd2FsLnVwZGF0ZSh7XG4gICAgICAgICAgICAgIGh0bWw6IGNvbnRlbmlkb0h0bWwsXG4gICAgICAgICAgICAgIHNob3dDb25maXJtQnV0dG9uOiB0cnVlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3ItaW50ZXJjZXB0b3Iuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9zZXJ2aWNpb3MvZXJyb3ItaW50ZXJjZXB0b3Iuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBVS9CLE1BQU0sT0FBTyxzQkFBc0I7SUFFYjtJQUNBO0lBQ0E7SUFDQTtJQUhwQixZQUFvQixZQUEwQixFQUMxQixLQUFhLEVBQ2IsV0FBd0IsRUFDeEIsY0FBOEI7UUFIOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUM5QyxDQUFDO0lBRUo7OztNQUdFO0lBQ0gsU0FBUyxDQUFDLFNBQWlCO1FBQ3pCLE1BQU0sS0FBSyxHQUF1QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3hELE9BQU8sQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUMsQ0FBQTtRQUM5QixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ2xCLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxZQUFZLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxZQUFZO2VBQzNELEtBQUssQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLDRCQUE0QixDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsZ0NBQWdDLENBQUMsRUFBRSxDQUFDO1lBQ3RILElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUMvRCxJQUFJLENBQUMsY0FB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Q0FBQztnQkFDTCxDQUFDO1lBQ0gsQ0FBQztTQUNGLENBQUMsQ0FBQztJQUNQLENBQUM7dUdBdklVLHNCQUFzQjsyR0FBdEIsc0JBQXNCLGNBRnJCLE1BQU07OzJGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgU3dhbCBmcm9tICdzd2VldGFsZXJ0Mic7XG5pbXBvcnQgeyBFcnJvclJlc3BvbnNlTW9kZWwgfSBmcm9tICcuLi9tb2RlbG9zL2Vycm9yLXJlc3BvbnNlLm1vZGVsJztcbmltcG9ydCB7IFV0aWxzU2VydmljZSB9IGZyb20gJy4vdXRpbHMuc2VydmljZSc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuL2F1dGguc2VydmljZSc7XG5pbXBvcnQgeyBTdG9yYWdlU2VydmljZSB9IGZyb20gJy4vc3RvcmFnZS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRXJyb3JJbnRlY2VydG9yU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1dGlsc1NlcnZpY2U6IFV0aWxzU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSByb3V0ZTogUm91dGVyLFxuICAgICAgICAgICAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBzdG9yYWdlU2VydmljZTogU3RvcmFnZVNlcnZpY2UsXG4gICkgeyB9XG5cbiAgIC8qKlxuICAgKiBNdWVzdHJhIHVuIG1lbnNhamUgZGUgZXJyb3Igc2Vnw7puIGVsIHRpcG8gZGUgZXJyb3IgcHJvcG9yY2lvbmFkby5cbiAgICogQHBhcmFtIGVycm9ySnNvbiBFbCBvYmpldG8gSlNPTiBxdWUgcmVwcmVzZW50YSBlbCBlcnJvci5cbiAgICovXG4gIHNob3dFcnJvcihlcnJvckpzb246IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IGVycm9yOiBFcnJvclJlc3BvbnNlTW9kZWwgPSBKU09OLnBhcnNlKGVycm9ySnNvbik7XG4gICAgY29uc29sZS5sb2coJ2VudHJhIHNob3dFcnJvcicpXG4gICAgY29uc29sZS5sb2coZXJyb3IpXG4gICAgaWYgKGVycm9yLmNvZGlnbyA9PSAnVU5JLURCLTAwMicgfHwgZXJyb3IuY29kaWdvID09ICdVTkktREItMDAzJyBcbiAgICAgIHx8IGVycm9yLm1lbnNhamUuaW5jbHVkZXMoJ1NlIHByb2R1am8gdW4gZXJyb3IgZGUgcmVkJykgfHwgZXJyb3IubWVuc2FqZS5pbmNsdWRlcygnRWwgc2VydmljaW8gbm8gZXN0w6EgZGlzcG9uaWJsZScpKSB7XG4gICAgICB0aGlzLnN0b3JhZ2VTZXJ2aWNlLnNldEl0ZW0oJ21lbnNhamVfbm90Zm91bmQnLCBlcnJvci5tZW5zYWplKTtcbiAgICAgIHRoaXMuc3RvcmFnZVNlcnZpY2Uuc2V0SXRlbSgndXJsX3JlZ3Jlc2FyJywgd2luZG93LmxvY2F0aW9uLmhyZWYpO1xuICAgICAgY29uc29sZS5sb2cod2luZG93LmxvY2F0aW9uLm9yaWdpbiArICcvJyt0aGlzLnV0aWxzU2VydmljZS5vYnRlbmVyQmFzZSgpICsgJy9ub3QtZm91bmQnKVxuICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgJy8nICsgdGhpcy51dGlsc1NlcnZpY2Uub2J0ZW5lckJhc2UoKSArICcvbm90LWZvdW5kJ1xuICAgICAgLy90aGlzLnJvdXRlLm5hdmlnYXRlKFt0aGlzLnV0aWxzU2VydmljZS5vYnRlbmVyQmFzZSgpKycvbm90LWZvdW5kJ10pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoZXJyb3IudGlwbyA9PT0gJ0lORicpIHtcbiAgICAgIHRoaXMuc2hvd0luZm8oZXJyb3IubWVuc2FqZSwgZXJyb3IuY29kaWdvKTtcbiAgICB9IGVsc2UgaWYgKGVycm9yLnRpcG8gPT09ICdXQVInKSB7XG4gICAgICB0aGlzLnNob3dXYXJuaW5nKGVycm9yLm1lbnNhamUsIGVycm9yLmNvZGlnbywgZXJyb3IuY2F1c2EsIGVycm9yLmFjY2lvbiwgZXJyb3IudHJhemEpO1xuICAgIH0gZWxzZSBpZiAoZXJyb3IudGlwbyA9PT0gJ0VSUicpIHtcbiAgICAgIHRoaXMuc2hvd0Vycm9yRGV0YWlscyhlcnJvci5tZW5zYWplLCBlcnJvci5jb2RpZ28sIGVycm9yLnRyYXphLCBlcnJvci5jYXVzYSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE11ZXN0cmEgdW4gbWVuc2FqZSBkZSBpbmZvcm1hY2nDs24gY29uIGVsIGPDs2RpZ28uXG4gICAqIEBwYXJhbSBtZW5zYWplIEVsIG1lbnNhamUgYSBtb3N0cmFyLlxuICAgKiBAcGFyYW0gY29kaWdvIEVsIGPDs2RpZ28gYXNvY2lhZG8gYWwgbWVuc2FqZS5cbiAgICovXG4gIHByaXZhdGUgc2hvd0luZm8obWVuc2FqZTogc3RyaW5nLCBjb2RpZ286IHN0cmluZyk6IHZvaWQge1xuICAgIFN3YWwuZmlyZSh7XG4gICAgICBiYWNrZ3JvdW5kOiAnI2Y3YmZiZicsXG4gICAgICBwb3NpdGlvbjogJ3RvcC1lbmQnLFxuICAgICAgaHRtbDogJzxkaXYgc3R5bGU9XCJ0ZXh0LWFsaWduOiBsZWZ0O1wiPicgK1xuICAgICAgICAgICAgICAnPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBsZWZ0O1wiPjxiPkPDs2RpZ286PC9iPiAnICsgY29kaWdvICsgJzwvcD4nICtcbiAgICAgICAgICAgICAgJzxwIHN0eWxlPVwidGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOjEycHhcIj4nICsgbWVuc2FqZSArICc8L3A+JyArXG4gICAgICAgICAgICAnPC9kaXY+JyxcbiAgICAgIHNob3dDb25maXJtQnV0dG9uOiBmYWxzZSxcbiAgICAgIHRpbWVyOiA1NTAwLFxuICAgICAgY29sb3I6ICcjZmYwMDAwJ1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIE11ZXN0cmEgdW5hIGFkdmVydGVuY2lhIGNvbiBkZXRhbGxlcyBhZGljaW9uYWxlcyBjb21vIGNhdXNhLCBhY2Npw7NuIHkgdHJhemEuXG4gICAqIEBwYXJhbSBtZW5zYWplIEVsIG1lbnNhamUgYSBtb3N0cmFyLlxuICAgKiBAcGFyYW0gY29kaWdvIEVsIGPDs2RpZ28gYXNvY2lhZG8gYWwgbWVuc2FqZS5cbiAgICogQHBhcmFtIGNhdXNhIExhIGNhdXNhIGRlbCBlcnJvci5cbiAgICogQHBhcmFtIGFjY2lvbiBMYSBhY2Npw7NuIHJlY29tZW5kYWRhLlxuICAgKiBAcGFyYW0gdHJhemEgTGEgdHJhemEgZGVsIGVycm9yLlxuICAgKi9cbiAgcHJpdmF0ZSBzaG93V2FybmluZyhtZW5zYWplOiBzdHJpbmcsIGNvZGlnbzogc3RyaW5nLCBjYXVzYTogc3RyaW5nLCBhY2Npb246IHN0cmluZywgdHJhemE6IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCBjb250ZW5pZG9IdG1sID0gYDxwIGNsYXNzPVwibXNqRXJyb3JcIj4ke21lbnNhamV9PC9wPmBcbiAgICBjb250ZW5pZG9IdG1sID0gY29udGVuaWRvSHRtbCArICh0aGlzLnV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3Jpbyhjb2RpZ28pID8gYDxwIGNsYXNzPVwiY2F1RXJyb3JcIj48Yj5Dw7NkaWdvOjwvYj4gJHtjb2RpZ299PC9wPmAgOiAnICcpO1xuICAgIGNvbnRlbmlkb0h0bWwgPSBjb250ZW5pZG9IdG1sICsgKHRoaXMudXRpbHNTZXJ2aWNlLnZhbGlkYXJDYW1wb09ibGlnYXRvcmlvKGNhdXNhKSA/IGA8cCBjbGFzcz1cImNhdUVycm9yXCI+PGI+Q2F1c2E6PC9iPiAke2NhdXNhfTwvcD5gIDogJyAnKTtcbiAgICBjb250ZW5pZG9IdG1sID0gY29udGVuaWRvSHRtbCArICh0aGlzLnV0aWxzU2VydmljZS52YWxpZGFyQ2FtcG9PYmxpZ2F0b3JpbyhhY2Npb24pID8gYDxwIGNsYXNzPVwiY2F1RXJyb3JcIj48Yj5BY2Npw7NuIFJlY29tZW5kYWRhOjwvYj4gJHthY2Npb259PC9wPmAgOiAnICcpO1xuICAgIGxldCBjb250ZW5pZG9QbHVzSHRtbCA9IGA8cCBjbGFzcz1cIm1zakVycm9yXCI+JHttZW5zYWplLnNsaWNlKDAsIDEwMCl9PC9wPjxidXR0b24gaWQ9XCJ2ZXJNYXNCdXR0b25cIj5WZXIgbcOhczwvYnV0dG9uPiA8YnV0dG9uIGlkPVwiT2tcIj5PSzwvYnV0dG9uPmA7XG5cbiAgICBTd2FsLmZpcmUoe1xuICAgICAgdGl0bGU6ICc8c3BhbiBzdHlsZT1cImNvbG9yOiB2YXIoLS1jb2xvci03MDApO1wiPicgKyAnQWR2ZXJ0ZW5jaWEnICsgJzwvc3Bhbj4nLFxuICAgICAgaHRtbDogY29udGVuaWRvSHRtbCxcbiAgICAgIGljb246ICd3YXJuaW5nJyxcbiAgICAgIHNob3dDYW5jZWxCdXR0b246IGZhbHNlLFxuICAgICAgc2hvd0Nsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgc2hvd0NvbmZpcm1CdXR0b246IHRydWUsXG4gICAgICBkaWRPcGVuOiAoKSA9PiB7XG4gICAgICAgICAgY29uc3QgT2tCdXR0b24gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnT2snKTtcbiAgICAgICAgICBPa0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdzd2FsMi1zdHlsZWQnLCAnc3dhbDItY2FuY2VsJywgJ2J0bi1vaycpO1xuICAgICAgICAgIE9rQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgICAgICAgU3dhbC5jbG9zZSgpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNdWVzdHJhIHVuIG1lbnNhamUgZGUgZXJyb3IgY29uIGRldGFsbGVzIGFkaWNpb25hbGVzIGNvbW8gZWwgY8OzZGlnbyBkZSBlcnJvciB5IGxhIHRyYXphLlxuICAgKiBAcGFyYW0gbWVuc2FqZSBFbCBtZW5zYWplIGEgbW9zdHJhci5cbiAgICogQHBhcmFtIGVycm9yQ29kZSBFbCBjw7NkaWdvIGRlIGVycm9yIGFzb2NpYWRvIGFsIG1lbnNhamUuXG4gICAqIEBwYXJhbSB0cmF6YSBMYSB0cmF6YSBkZWwgZXJyb3IuXG4gICAqL1xuICBwcml2YXRlIHNob3dFcnJvckRldGFpbHMobWVuc2FqZTogc3RyaW5nLCBjb2RpZ286IHN0cmluZywgdHJhemE6IHN0cmluZywgY2F1c2E/IDogc3RyaW5nKTogdm9pZCB7XG4gICAgICBsZXQgY29udGVuaWRvSHRtbCA9IGA8cCBjbGFzcz1cIm1zakVycm9yXCI+JHttZW5zYWplfTwvcD48cCBjbGFzcz1cImNvZEVycm9yXCI+PGI+Q8OzZGlnbzo8L2I+ICR7Y29kaWdvfTwvcD48cCBjbGFzcz1cInRyYUVycm9yXCI+PGI+VHJhemE6PC9iPiAke3RyYXphfTwvcD48cCBjbGFzcz1cImNhdUVycm9yXCI+YDtcbiAgICAgIGlmIChjYXVzYSE9IG51bGwgJiYgY2F1c2EgIT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIGNvbnRlbmlkb0h0bWwgPSBgPHAgY2xhc3M9XCJtc2pFcnJvclwiPiR7bWVuc2FqZX08L3A+PHAgY2xhc3M9XCJjb2RFcnJvclwiPjxiPkPDs2RpZ286PC9iPiAke2NvZGlnb308L3A+PHAgY2xhc3M9XCJ0cmFFcnJvclwiPjxiPlRyYXphOjwvYj4gJHt0cmF6YX08L3A+PHAgY2xhc3M9XCJjYXVFcnJvclwiPjxiPkNhdXNhOjwvYj4gJHtjYXVzYX08L3A+YDtcbiAgICAgIH1cbiAgICAgIGxldCBjb250ZW5pZG9QbHVzSHRtbCA9IGA8cCBjbGFzcz1cIm1zakVycm9yXCI+JHttZW5zYWplLnNsaWNlKDAsIDEwMCl9PC9wPjxidXR0b24gaWQ9XCJ2ZXJNYXNCdXR0b25cIj5WZXIgbcOhczwvYnV0dG9uPiA8YnV0dG9uIGNsYXNzPVwiYnRuLW9rXCIgaWQ9XCJPa1wiPk9LPC9idXR0b24+YDtcblxuICAgICAgU3dhbC5maXJlKHtcbiAgICAgICAgdGl0bGU6ICc8c3BhbiBzdHlsZT1cImNvbG9yOiB2YXIoLS1jb2xvci03MDApO1wiPicgKyAnRXJyb3InICsgJzwvc3Bhbj4nLFxuICAgICAgICBodG1sOiAobWVuc2FqZS5sZW5ndGggKyB0cmF6YS5sZW5ndGgpID4gMTAwID8gY29udGVuaWRvUGx1c0h0bWwgOiBjb250ZW5pZG9IdG1sLFxuICAgICAgICBpY29uOiAnZXJyb3InLFxuICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiBmYWxzZSxcbiAgICAgICAgc2hvd0Nsb3NlQnV0dG9uOiB0cnVlLFxuICAgICAgICBzaG93Q29uZmlybUJ1dHRvbjogZmFsc2UsXG4gICAgICAgIGN1c3RvbUNsYXNzOiAnbXktc3dhbCcsXG4gICAgICAgIGRpZE9wZW46ICgpID0+IHtcbiAgICAgICAgICBpZiAoKG1lbnNhamUubGVuZ3RoICsgdHJhemEubGVuZ3RoKSA+IDEwMCkge1xuICAgICAgICAgICAgLy8gQWdyZWdhciBlc3RpbG9zIGFsIGJvdMOzbiBcIlZlciBtw6FzXCJcbiAgICAgICAgICAgIGNvbnN0IHZlck1hc0J1dHRvbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd2ZXJNYXNCdXR0b24nKTtcbiAgICAgICAgICAgIHZlck1hc0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdzd2FsMi1zdHlsZWQnLCAnc3dhbDItY2FuY2VsJywgJ2J0bi12ZXJtYXMnICk7XG5cbiAgICAgICAgICAgIGNvbnN0IE9rQnV0dG9uID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ09rJyk7XG4gICAgICAgICAgICBPa0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdzd2FsMi1zdHlsZWQnLCAnc3dhbDItY2FuY2VsJyAsICdidG4tb2snKTtcblxuICAgICAgICAgICAgLy8gQWdyZWdhciB1biBldmVudG8gYWwgYm90w7NuIFwiVmVyIG3DoXNcIiBwYXJhIG1vc3RyYXIgdG9kbyBlbCBjb250ZW5pZG8gY3VhbmRvIHNlIGhhY2UgY2xpY1xuICAgICAgICAgICAgdmVyTWFzQnV0dG9uLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4ge1xuICAgICAgICAgICAgICBTd2FsLnVwZGF0ZSh7XG4gICAgICAgICAgICAgICAgaHRtbDogY29udGVuaWRvSHRtbCxcbiAgICAgICAgICAgICAgICBzaG93Q29uZmlybUJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgT2tCdXR0b24uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgICAgIFN3YWwuY2xvc2UoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBlbHNle1xuICAgICAgICAgICAgU3dhbC51cGRhdGUoe1xuICAgICAgICAgICAgICBodG1sOiBjb250ZW5pZG9IdG1sLFxuICAgICAgICAgICAgICBzaG93Q29uZmlybUJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICB9XG59XG4iXX0=