info-library 2.14.56-beta.1 → 2.14.57-beta.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.
@@ -1,15 +1,16 @@
1
1
  import { ElementRef, OnChanges } from '@angular/core';
2
2
  import { DomSanitizer } from '@angular/platform-browser';
3
3
  import { HtmlSanitizerConfig } from '../model/html-sanitizer-config.model';
4
+ import { InfoPlatformModel } from '../model';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class InfoSafeHtmlDirective implements OnChanges {
6
7
  private elementRef;
7
8
  private sanitizer;
8
- private config;
9
+ private platform;
9
10
  safeHtml: string;
10
11
  readonly defaultConfig: HtmlSanitizerConfig;
11
12
  private readonly domPurifyConfig;
12
- constructor(elementRef: ElementRef, sanitizer: DomSanitizer, config: HtmlSanitizerConfig);
13
+ constructor(elementRef: ElementRef, sanitizer: DomSanitizer, platform: InfoPlatformModel);
13
14
  ngOnChanges(): void;
14
15
  static ɵfac: i0.ɵɵFactoryDeclaration<InfoSafeHtmlDirective, never>;
15
16
  static ɵdir: i0.ɵɵDirectiveDeclaration<InfoSafeHtmlDirective, "[safeHtml]", never, { "safeHtml": "safeHtml"; }, {}, never, never, false>;
@@ -21,7 +21,7 @@ function InfoTimelineComponent_div_4_h2_3_Template(rf, ctx) { if (rf & 1) {
21
21
  i0.ɵɵadvance(1);
22
22
  i0.ɵɵtextInterpolate(item_r2.Title);
23
23
  } }
24
- function InfoTimelineComponent_div_4_h3_4_Template(rf, ctx) { if (rf & 1) {
24
+ function InfoTimelineComponent_div_4_h3_6_Template(rf, ctx) { if (rf & 1) {
25
25
  i0.ɵɵelementStart(0, "h3");
26
26
  i0.ɵɵtext(1);
27
27
  i0.ɵɵelementEnd();
@@ -36,9 +36,9 @@ function InfoTimelineComponent_div_4_Template(rf, ctx) { if (rf & 1) {
36
36
  i0.ɵɵelement(1, "div", 8);
37
37
  i0.ɵɵelementStart(2, "div", 9);
38
38
  i0.ɵɵtemplate(3, InfoTimelineComponent_div_4_h2_3_Template, 2, 1, "h2", 10);
39
- i0.ɵɵtemplate(4, InfoTimelineComponent_div_4_h3_4_Template, 2, 2, "h3", 10);
40
- i0.ɵɵelement(5, "p", 11);
41
- i0.ɵɵpipe(6, "translate");
39
+ i0.ɵɵelement(4, "p", 11);
40
+ i0.ɵɵpipe(5, "translate");
41
+ i0.ɵɵtemplate(6, InfoTimelineComponent_div_4_h3_6_Template, 2, 2, "h3", 10);
42
42
  i0.ɵɵelementEnd()();
43
43
  } if (rf & 2) {
44
44
  const item_r2 = ctx.$implicit;
@@ -47,9 +47,9 @@ function InfoTimelineComponent_div_4_Template(rf, ctx) { if (rf & 1) {
47
47
  i0.ɵɵadvance(2);
48
48
  i0.ɵɵproperty("ngIf", item_r2.Title);
49
49
  i0.ɵɵadvance(1);
50
+ i0.ɵɵproperty("safeHtml", i0.ɵɵpipeBind1(5, 4, item_r2.Content));
51
+ i0.ɵɵadvance(2);
50
52
  i0.ɵɵproperty("ngIf", item_r2.Date);
51
- i0.ɵɵadvance(1);
52
- i0.ɵɵproperty("safeHtml", i0.ɵɵpipeBind1(6, 4, item_r2.Content));
53
53
  } }
54
54
  export class InfoTimelineComponent {
55
55
  constructor() {
@@ -85,13 +85,13 @@ export class InfoTimelineComponent {
85
85
  i0.ɵɵproperty("ngIf", ctx.label != "");
86
86
  i0.ɵɵadvance(2);
87
87
  i0.ɵɵproperty("ngForOf", ctx.data);
88
- } }, dependencies: [i1.NgForOf, i1.NgIf, i1.NgStyle, i2.InfoSafeHtmlDirective, i3.InfoTranslatePipe], styles: ["body[_ngcontent-%COMP%]{--ux-cor-hover: #F5F5F5;--ux-cor-hover-2: #eee;--ux-cor-hover-3: #fafafa;--ux-cor-hover-4: #e5e3ed;--ux-cor-hover-5: #f9f9f9;--ux-cor-bg: #adadad;--ux-cor-P: #fff;--ux-cor-A: #eeeef2;--ux-cor-X: #f5f5f5;--ux-cor-S: #666;--ux-cor-O: #ddd;--ux-cor-F: #222;--ux-cor-D: #ccdbb4;--ux-cor-linha: #CCCEDB;--ux-cor-btn-pri: #eeeef2;--ux-cor-btn-wrn: #BA5005;--ux-cor-btn-dis: #6a7282}[_nghost-%COMP%]{display:block;position:relative;margin:20px 0 10px;font-size:.9em}[_nghost-%COMP%] .line[_ngcontent-%COMP%]{border-left:2px solid #eee;height:100%;left:6px;margin-left:-1px;position:absolute;top:0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{display:flex;padding:.7857143rem 0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%] .label-text[_ngcontent-%COMP%]{border-radius:0;color:#fff;display:inline-block;min-width:6.2857144rem;padding:.39285715rem .7857143rem;position:relative;text-align:center}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%]{display:flex;flex-direction:column}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{margin:0;padding-left:50px;position:relative}@media only screen and (max-width: 543px){[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding-left:32px}}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{background:#fff;border-radius:50%;display:block;height:12px;left:0;position:absolute;top:calc(1.17857145rem + 1px);width:12px}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%]{font-size:.875rem;margin-bottom:.7857143rem}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]{margin-bottom:5px;background:#eee;border-radius:0;display:inline-block;padding:12px;position:relative;width:auto;min-width:180px;box-shadow:0 0 5px #f5f5f5}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:after, [_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{border:10px solid transparent;content:\"\";display:block;height:0;position:absolute;top:14px;width:0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{border-right-color:#eee;right:100%}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:after{display:none;left:100%;border-left-color:#eee}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] .item-title[_ngcontent-%COMP%]{margin-top:0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-weight:700;font-size:.9em;margin:0;display:block}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:5px 0!important}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-size:.8em;text-align:left;color:#666;display:block;margin:0;padding-top:5px}.show-date[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{top:calc(1.17857145rem + 1px)}.align-right[_nghost-%COMP%] .line[_ngcontent-%COMP%]{left:auto;margin:0 -1px 0 auto;right:6px}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{justify-content:flex-end}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%]{align-items:flex-end}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0 50px 0 0}@media only screen and (max-width: 543px){.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0 32px 0 0}}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{left:auto;right:0}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%]{text-align:right}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{display:none}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:after{display:block}.align-center[_nghost-%COMP%] .line[_ngcontent-%COMP%]{left:50%}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{justify-content:center}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%]{align-items:center}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0;text-align:center}@media only screen and (max-width: 543px){.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0}}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{left:50%;margin:-26px 0 0 -6px;top:0}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%]{margin-bottom:33px;text-align:center}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{background:#eee;border:1px solid #eee;border-radius:0;display:inline-block;padding:.39285715rem .7857143rem}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{border-color:transparent transparent #ddd transparent;left:50%;margin:-20px 0 0 -10px;top:0}.align-center.show-date[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{margin-top:40px}@media only screen and (min-width: 768px){.align-between[_nghost-%COMP%] .line[_ngcontent-%COMP%]{left:50%}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{justify-content:center}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{width:50%}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(even){align-self:flex-end}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(even) .item-point[_ngcontent-%COMP%]{left:0;margin-left:-6px}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd){padding:0 50px 0 0;text-align:right}}@media only screen and (min-width: 768px) and (max-width: 543px){.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd){padding:0 32px 0 0}}@media only screen and (min-width: 768px){.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-point[_ngcontent-%COMP%]{left:100%;margin-left:-6px}}@media only screen and (min-width: 768px){.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-content[_ngcontent-%COMP%]{text-align:left}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-content[_ngcontent-%COMP%]:before{display:none}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-content[_ngcontent-%COMP%]:after{display:block}}"] });
88
+ } }, dependencies: [i1.NgForOf, i1.NgIf, i1.NgStyle, i2.InfoSafeHtmlDirective, i3.InfoTranslatePipe], styles: ["body[_ngcontent-%COMP%]{--ux-cor-hover: #F5F5F5;--ux-cor-hover-2: #eee;--ux-cor-hover-3: #fafafa;--ux-cor-hover-4: #e5e3ed;--ux-cor-hover-5: #f9f9f9;--ux-cor-bg: #adadad;--ux-cor-P: #fff;--ux-cor-A: #eeeef2;--ux-cor-X: #f5f5f5;--ux-cor-S: #666;--ux-cor-O: #ddd;--ux-cor-F: #222;--ux-cor-D: #ccdbb4;--ux-cor-linha: #CCCEDB;--ux-cor-btn-pri: #eeeef2;--ux-cor-btn-wrn: #BA5005;--ux-cor-btn-dis: #6a7282}[_nghost-%COMP%]{display:block;position:relative;margin:20px 0 10px;font-size:.9em}[_nghost-%COMP%] .line[_ngcontent-%COMP%]{border-left:2px solid #eee;height:100%;left:6px;margin-left:-1px;position:absolute;top:0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{display:flex;padding:.7857143rem 0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%] .label-text[_ngcontent-%COMP%]{border-radius:0;color:#fff;display:inline-block;min-width:6.2857144rem;padding:.39285715rem .7857143rem;position:relative;text-align:center}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%]{display:flex;flex-direction:column}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{margin:0;padding-left:50px;position:relative}@media only screen and (max-width: 543px){[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding-left:32px}}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{background:#fff;border-radius:50%;display:block;height:12px;left:0;position:absolute;top:calc(1.17857145rem + 1px);width:12px}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%]{font-size:.875rem;margin-bottom:.7857143rem}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]{margin-bottom:5px;background:#eee;border-radius:0;display:inline-block;padding:12px;position:relative;width:auto;min-width:180px;box-shadow:0 0 5px #f5f5f5}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:after, [_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{border:10px solid transparent;content:\"\";display:block;height:0;position:absolute;top:14px;width:0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{border-right-color:#eee;right:100%}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:after{display:none;left:100%;border-left-color:#eee}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] .item-title[_ngcontent-%COMP%]{margin-top:0}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{font-weight:700;font-size:.9em;margin:0;display:block}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:5px 0!important}[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{font-size:.7em;text-align:right;color:#666;display:block;margin:0}.show-date[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{top:calc(1.17857145rem + 1px)}.align-right[_nghost-%COMP%] .line[_ngcontent-%COMP%]{left:auto;margin:0 -1px 0 auto;right:6px}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{justify-content:flex-end}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%]{align-items:flex-end}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0 50px 0 0}@media only screen and (max-width: 543px){.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0 32px 0 0}}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{left:auto;right:0}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%]{text-align:right}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{display:none}.align-right[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:after{display:block}.align-center[_nghost-%COMP%] .line[_ngcontent-%COMP%]{left:50%}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{justify-content:center}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%]{align-items:center}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0;text-align:center}@media only screen and (max-width: 543px){.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{padding:0}}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{left:50%;margin:-26px 0 0 -6px;top:0}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%]{margin-bottom:33px;text-align:center}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-date[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{background:#eee;border:1px solid #eee;border-radius:0;display:inline-block;padding:.39285715rem .7857143rem}.align-center[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-content[_ngcontent-%COMP%]:before{border-color:transparent transparent #ddd transparent;left:50%;margin:-20px 0 0 -10px;top:0}.align-center.show-date[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%] .item-point[_ngcontent-%COMP%]{margin-top:40px}@media only screen and (min-width: 768px){.align-between[_nghost-%COMP%] .line[_ngcontent-%COMP%]{left:50%}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-label[_ngcontent-%COMP%]{justify-content:center}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]{width:50%}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(even){align-self:flex-end}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(even) .item-point[_ngcontent-%COMP%]{left:0;margin-left:-6px}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd){padding:0 50px 0 0;text-align:right}}@media only screen and (min-width: 768px) and (max-width: 543px){.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd){padding:0 32px 0 0}}@media only screen and (min-width: 768px){.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-point[_ngcontent-%COMP%]{left:100%;margin-left:-6px}}@media only screen and (min-width: 768px){.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-content[_ngcontent-%COMP%]{text-align:left}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-content[_ngcontent-%COMP%]:before{display:none}.align-between[_nghost-%COMP%] .timeline-box[_ngcontent-%COMP%] .box-items[_ngcontent-%COMP%] .item[_ngcontent-%COMP%]:nth-child(odd) .item-content[_ngcontent-%COMP%]:after{display:block}}"] });
89
89
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(InfoTimelineComponent, [{
90
90
  type: Component,
91
91
  args: [{ selector: 'info-timeline', host: {
92
92
  '[class.timeline]': 'true',
93
93
  '[class.show-date]': 'true'
94
- }, template: "<span class=\"line\"></span>\r\n\r\n<div class=\"timeline-box\">\r\n <div class=\"box-label\" *ngIf=\"label != ''\">\r\n <div class=\"label-text\">{{label}}</div>\r\n </div>\r\n\r\n <div class=\"box-items\">\r\n <div class=\"item\" *ngFor=\"let item of data\">\r\n <div class=\"item-point\" [ngStyle]=\"{ 'border-color': item.PointColor }\"></div>\r\n <div class=\"item-content\">\r\n <h2 *ngIf=\"item.Title\">{{item.Title}}</h2>\r\n <h3 *ngIf=\"item.Date\">{{ item.Date }} \u00E0s {{ item.Hour }}</h3>\r\n <p [safeHtml]=\"item.Content | translate\"></p>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["body{--ux-cor-hover: #F5F5F5;--ux-cor-hover-2: #eee;--ux-cor-hover-3: #fafafa;--ux-cor-hover-4: #e5e3ed;--ux-cor-hover-5: #f9f9f9;--ux-cor-bg: #adadad;--ux-cor-P: #fff;--ux-cor-A: #eeeef2;--ux-cor-X: #f5f5f5;--ux-cor-S: #666;--ux-cor-O: #ddd;--ux-cor-F: #222;--ux-cor-D: #ccdbb4;--ux-cor-linha: #CCCEDB;--ux-cor-btn-pri: #eeeef2;--ux-cor-btn-wrn: #BA5005;--ux-cor-btn-dis: #6a7282}:host{display:block;position:relative;margin:20px 0 10px;font-size:.9em}:host .line{border-left:2px solid #eee;height:100%;left:6px;margin-left:-1px;position:absolute;top:0}:host .timeline-box .box-label{display:flex;padding:.7857143rem 0}:host .timeline-box .box-label .label-text{border-radius:0;color:#fff;display:inline-block;min-width:6.2857144rem;padding:.39285715rem .7857143rem;position:relative;text-align:center}:host .timeline-box .box-items{display:flex;flex-direction:column}:host .timeline-box .box-items .item{margin:0;padding-left:50px;position:relative}@media only screen and (max-width: 543px){:host .timeline-box .box-items .item{padding-left:32px}}:host .timeline-box .box-items .item .item-point{background:#fff;border-radius:50%;display:block;height:12px;left:0;position:absolute;top:calc(1.17857145rem + 1px);width:12px}:host .timeline-box .box-items .item .item-date{font-size:.875rem;margin-bottom:.7857143rem}:host .timeline-box .box-items .item .item-content{margin-bottom:5px;background:#eee;border-radius:0;display:inline-block;padding:12px;position:relative;width:auto;min-width:180px;box-shadow:0 0 5px #f5f5f5}:host .timeline-box .box-items .item .item-content:after,:host .timeline-box .box-items .item .item-content:before{border:10px solid transparent;content:\"\";display:block;height:0;position:absolute;top:14px;width:0}:host .timeline-box .box-items .item .item-content:before{border-right-color:#eee;right:100%}:host .timeline-box .box-items .item .item-content:after{display:none;left:100%;border-left-color:#eee}:host .timeline-box .box-items .item .item-content .item-title{margin-top:0}:host .timeline-box .box-items .item .item-content h2{font-weight:700;font-size:.9em;margin:0;display:block}:host .timeline-box .box-items .item .item-content p{margin:5px 0!important}:host .timeline-box .box-items .item .item-content h3{font-size:.8em;text-align:left;color:#666;display:block;margin:0;padding-top:5px}:host.show-date .timeline-box .box-items .item .item-point{top:calc(1.17857145rem + 1px)}:host.align-right .line{left:auto;margin:0 -1px 0 auto;right:6px}:host.align-right .timeline-box .box-label{justify-content:flex-end}:host.align-right .timeline-box .box-items{align-items:flex-end}:host.align-right .timeline-box .box-items .item{padding:0 50px 0 0}@media only screen and (max-width: 543px){:host.align-right .timeline-box .box-items .item{padding:0 32px 0 0}}:host.align-right .timeline-box .box-items .item .item-point{left:auto;right:0}:host.align-right .timeline-box .box-items .item .item-date{text-align:right}:host.align-right .timeline-box .box-items .item .item-content:before{display:none}:host.align-right .timeline-box .box-items .item .item-content:after{display:block}:host.align-center .line{left:50%}:host.align-center .timeline-box .box-label{justify-content:center}:host.align-center .timeline-box .box-items{align-items:center}:host.align-center .timeline-box .box-items .item{padding:0;text-align:center}@media only screen and (max-width: 543px){:host.align-center .timeline-box .box-items .item{padding:0}}:host.align-center .timeline-box .box-items .item .item-point{left:50%;margin:-26px 0 0 -6px;top:0}:host.align-center .timeline-box .box-items .item .item-date{margin-bottom:33px;text-align:center}:host.align-center .timeline-box .box-items .item .item-date span{background:#eee;border:1px solid #eee;border-radius:0;display:inline-block;padding:.39285715rem .7857143rem}:host.align-center .timeline-box .box-items .item .item-content:before{border-color:transparent transparent #ddd transparent;left:50%;margin:-20px 0 0 -10px;top:0}:host.align-center.show-date .timeline-box .box-items .item .item-point{margin-top:40px}@media only screen and (min-width: 768px){:host.align-between .line{left:50%}:host.align-between .timeline-box .box-label{justify-content:center}:host.align-between .timeline-box .box-items .item{width:50%}:host.align-between .timeline-box .box-items .item:nth-child(even){align-self:flex-end}:host.align-between .timeline-box .box-items .item:nth-child(even) .item-point{left:0;margin-left:-6px}:host.align-between .timeline-box .box-items .item:nth-child(odd){padding:0 50px 0 0;text-align:right}}@media only screen and (min-width: 768px) and (max-width: 543px){:host.align-between .timeline-box .box-items .item:nth-child(odd){padding:0 32px 0 0}}@media only screen and (min-width: 768px){:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-point{left:100%;margin-left:-6px}}@media only screen and (min-width: 768px){:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-content{text-align:left}:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-content:before{display:none}:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-content:after{display:block}}\n"] }]
94
+ }, template: "<span class=\"line\"></span>\r\n\r\n<div class=\"timeline-box\">\r\n <div class=\"box-label\" *ngIf=\"label != ''\">\r\n <div class=\"label-text\">{{label}}</div>\r\n </div>\r\n\r\n <div class=\"box-items\">\r\n <div class=\"item\" *ngFor=\"let item of data\">\r\n <div class=\"item-point\" [ngStyle]=\"{ 'border-color': item.PointColor }\"></div>\r\n <div class=\"item-content\">\r\n <h2 *ngIf=\"item.Title\">{{item.Title}}</h2>\r\n <p [safeHtml]=\"item.Content | translate\"></p>\r\n <h3 *ngIf=\"item.Date\">{{ item.Date }} \u00E0s {{ item.Hour }}</h3>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: ["body{--ux-cor-hover: #F5F5F5;--ux-cor-hover-2: #eee;--ux-cor-hover-3: #fafafa;--ux-cor-hover-4: #e5e3ed;--ux-cor-hover-5: #f9f9f9;--ux-cor-bg: #adadad;--ux-cor-P: #fff;--ux-cor-A: #eeeef2;--ux-cor-X: #f5f5f5;--ux-cor-S: #666;--ux-cor-O: #ddd;--ux-cor-F: #222;--ux-cor-D: #ccdbb4;--ux-cor-linha: #CCCEDB;--ux-cor-btn-pri: #eeeef2;--ux-cor-btn-wrn: #BA5005;--ux-cor-btn-dis: #6a7282}:host{display:block;position:relative;margin:20px 0 10px;font-size:.9em}:host .line{border-left:2px solid #eee;height:100%;left:6px;margin-left:-1px;position:absolute;top:0}:host .timeline-box .box-label{display:flex;padding:.7857143rem 0}:host .timeline-box .box-label .label-text{border-radius:0;color:#fff;display:inline-block;min-width:6.2857144rem;padding:.39285715rem .7857143rem;position:relative;text-align:center}:host .timeline-box .box-items{display:flex;flex-direction:column}:host .timeline-box .box-items .item{margin:0;padding-left:50px;position:relative}@media only screen and (max-width: 543px){:host .timeline-box .box-items .item{padding-left:32px}}:host .timeline-box .box-items .item .item-point{background:#fff;border-radius:50%;display:block;height:12px;left:0;position:absolute;top:calc(1.17857145rem + 1px);width:12px}:host .timeline-box .box-items .item .item-date{font-size:.875rem;margin-bottom:.7857143rem}:host .timeline-box .box-items .item .item-content{margin-bottom:5px;background:#eee;border-radius:0;display:inline-block;padding:12px;position:relative;width:auto;min-width:180px;box-shadow:0 0 5px #f5f5f5}:host .timeline-box .box-items .item .item-content:after,:host .timeline-box .box-items .item .item-content:before{border:10px solid transparent;content:\"\";display:block;height:0;position:absolute;top:14px;width:0}:host .timeline-box .box-items .item .item-content:before{border-right-color:#eee;right:100%}:host .timeline-box .box-items .item .item-content:after{display:none;left:100%;border-left-color:#eee}:host .timeline-box .box-items .item .item-content .item-title{margin-top:0}:host .timeline-box .box-items .item .item-content h2{font-weight:700;font-size:.9em;margin:0;display:block}:host .timeline-box .box-items .item .item-content p{margin:5px 0!important}:host .timeline-box .box-items .item .item-content h3{font-size:.7em;text-align:right;color:#666;display:block;margin:0}:host.show-date .timeline-box .box-items .item .item-point{top:calc(1.17857145rem + 1px)}:host.align-right .line{left:auto;margin:0 -1px 0 auto;right:6px}:host.align-right .timeline-box .box-label{justify-content:flex-end}:host.align-right .timeline-box .box-items{align-items:flex-end}:host.align-right .timeline-box .box-items .item{padding:0 50px 0 0}@media only screen and (max-width: 543px){:host.align-right .timeline-box .box-items .item{padding:0 32px 0 0}}:host.align-right .timeline-box .box-items .item .item-point{left:auto;right:0}:host.align-right .timeline-box .box-items .item .item-date{text-align:right}:host.align-right .timeline-box .box-items .item .item-content:before{display:none}:host.align-right .timeline-box .box-items .item .item-content:after{display:block}:host.align-center .line{left:50%}:host.align-center .timeline-box .box-label{justify-content:center}:host.align-center .timeline-box .box-items{align-items:center}:host.align-center .timeline-box .box-items .item{padding:0;text-align:center}@media only screen and (max-width: 543px){:host.align-center .timeline-box .box-items .item{padding:0}}:host.align-center .timeline-box .box-items .item .item-point{left:50%;margin:-26px 0 0 -6px;top:0}:host.align-center .timeline-box .box-items .item .item-date{margin-bottom:33px;text-align:center}:host.align-center .timeline-box .box-items .item .item-date span{background:#eee;border:1px solid #eee;border-radius:0;display:inline-block;padding:.39285715rem .7857143rem}:host.align-center .timeline-box .box-items .item .item-content:before{border-color:transparent transparent #ddd transparent;left:50%;margin:-20px 0 0 -10px;top:0}:host.align-center.show-date .timeline-box .box-items .item .item-point{margin-top:40px}@media only screen and (min-width: 768px){:host.align-between .line{left:50%}:host.align-between .timeline-box .box-label{justify-content:center}:host.align-between .timeline-box .box-items .item{width:50%}:host.align-between .timeline-box .box-items .item:nth-child(even){align-self:flex-end}:host.align-between .timeline-box .box-items .item:nth-child(even) .item-point{left:0;margin-left:-6px}:host.align-between .timeline-box .box-items .item:nth-child(odd){padding:0 50px 0 0;text-align:right}}@media only screen and (min-width: 768px) and (max-width: 543px){:host.align-between .timeline-box .box-items .item:nth-child(odd){padding:0 32px 0 0}}@media only screen and (min-width: 768px){:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-point{left:100%;margin-left:-6px}}@media only screen and (min-width: 768px){:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-content{text-align:left}:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-content:before{display:none}:host.align-between .timeline-box .box-items .item:nth-child(odd) .item-content:after{display:block}}\n"] }]
95
95
  }], function () { return []; }, { showdate: [{
96
96
  type: Input
97
97
  }], align: [{
@@ -115,4 +115,4 @@ export class InfoTimelineComponent {
115
115
  type: HostBinding,
116
116
  args: ['class.align-between']
117
117
  }] }); })();
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9jb250cm9scy90aW1lbGluZS90aW1lbGluZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbmZvLWxpYnJhcnkvc3JjL2NvbnRyb2xzL3RpbWVsaW5lL3RpbWVsaW5lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0lDR2xFLDhCQUEyQyxhQUFBO0lBQ2YsWUFBUztJQUFBLGlCQUFNLEVBQUE7OztJQUFmLGVBQVM7SUFBVCxrQ0FBUzs7O0lBT3pCLDBCQUF1QjtJQUFBLFlBQWM7SUFBQSxpQkFBSzs7O0lBQW5CLGVBQWM7SUFBZCxtQ0FBYzs7O0lBQ3JDLDBCQUFzQjtJQUFBLFlBQWtDO0lBQUEsaUJBQUs7OztJQUF2QyxlQUFrQztJQUFsQyxzRUFBa0M7Ozs7SUFKaEUsOEJBQTRDO0lBQ3hDLHlCQUE4RTtJQUM5RSw4QkFBMEI7SUFDdEIsMkVBQTBDO0lBQzFDLDJFQUE2RDtJQUM3RCx3QkFBNkM7O0lBQ2pELGlCQUFNLEVBQUE7OztJQUxrQixlQUErQztJQUEvQyx3RUFBK0M7SUFFOUQsZUFBZ0I7SUFBaEIsb0NBQWdCO0lBQ2hCLGVBQWU7SUFBZixtQ0FBZTtJQUNqQixlQUFxQztJQUFyQyxnRUFBcUM7O0FERnhELE1BQU0sT0FBTyxxQkFBcUI7SUFZOUI7UUFYUyxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLFVBQUssR0FBVyxTQUFTLENBQUM7UUFDMUIsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLFNBQUksR0FBVSxFQUFFLENBQUM7UUFFTyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBQ3pCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzlCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDMUIsaUJBQVksR0FBWSxLQUFLLENBQUM7SUFFbEQsQ0FBQztJQUVqQixRQUFRO1FBQ0osSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7NkdBbkJRLHFCQUFxQjt1R0FBckIscUJBQXFCOzs7UUNYbEMsMEJBQTBCO1FBRTFCLDhCQUEwQjtRQUN0QixzRUFFTTtRQUVOLDhCQUF1QjtRQUNuQixzRUFPTTtRQUNWLGlCQUFNLEVBQUE7O1FBYmtCLGVBQWlCO1FBQWpCLHNDQUFpQjtRQUtGLGVBQU87UUFBUCxrQ0FBTzs7dUZER3JDLHFCQUFxQjtjQVRqQyxTQUFTOzJCQUNJLGVBQWUsUUFHbkI7b0JBQ0Ysa0JBQWtCLEVBQUUsTUFBTTtvQkFDMUIsbUJBQW1CLEVBQUUsTUFBTTtpQkFDOUI7c0NBR1EsUUFBUTtrQkFBaEIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLElBQUk7a0JBQVosS0FBSztZQUUyQixTQUFTO2tCQUF6QyxXQUFXO21CQUFDLGtCQUFrQjtZQUNJLFdBQVc7a0JBQTdDLFdBQVc7bUJBQUMsb0JBQW9CO1lBQ0MsVUFBVTtrQkFBM0MsV0FBVzttQkFBQyxtQkFBbUI7WUFDSSxZQUFZO2tCQUEvQyxXQUFXO21CQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdpbmZvLXRpbWVsaW5lJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi90aW1lbGluZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90aW1lbGluZS5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgaG9zdDoge1xyXG4gICAgICAgICdbY2xhc3MudGltZWxpbmVdJzogJ3RydWUnLFxyXG4gICAgICAgICdbY2xhc3Muc2hvdy1kYXRlXSc6ICd0cnVlJ1xyXG4gICAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mb1RpbWVsaW5lQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIHNob3dkYXRlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIGFsaWduOiBzdHJpbmcgPSAnYmV0d2Vlbic7XHJcbiAgICBASW5wdXQoKSBzdHlsZTogYW55ID0gJyc7XHJcbiAgICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJyc7XHJcbiAgICBASW5wdXQoKSBkYXRhOiBhbnlbXSA9IFtdO1xyXG5cclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWxpZ24tbGVmdCcpIGFsaWduTGVmdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbGlnbi1jZW50ZXInKSBhbGlnbkNlbnRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbGlnbi1yaWdodCcpIGFsaWduUmlnaHQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWxpZ24tYmV0d2VlbicpIGFsaWduQmV0d2VlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5hbGlnbkxlZnQgPSAodGhpcy5hbGlnbiA9PT0gJ2xlZnQnKTtcclxuICAgICAgICB0aGlzLmFsaWduQ2VudGVyID0gKHRoaXMuYWxpZ24gPT09ICdjZW50ZXInKTtcclxuICAgICAgICB0aGlzLmFsaWduUmlnaHQgPSAodGhpcy5hbGlnbiA9PT0gJ3JpZ2h0Jyk7XHJcbiAgICAgICAgdGhpcy5hbGlnbkJldHdlZW4gPSAodGhpcy5hbGlnbiA9PT0gJ2JldHdlZW4nKTtcclxuICAgIH1cclxufSIsIjxzcGFuIGNsYXNzPVwibGluZVwiPjwvc3Bhbj5cclxuXHJcbjxkaXYgY2xhc3M9XCJ0aW1lbGluZS1ib3hcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJib3gtbGFiZWxcIiAqbmdJZj1cImxhYmVsICE9ICcnXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXRleHRcIj57e2xhYmVsfX08L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJib3gtaXRlbXNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW0tcG9pbnRcIiBbbmdTdHlsZV09XCJ7ICdib3JkZXItY29sb3InOiBpdGVtLlBvaW50Q29sb3IgfVwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgKm5nSWY9XCJpdGVtLlRpdGxlXCI+e3tpdGVtLlRpdGxlfX08L2gyPlxyXG4gICAgICAgICAgICAgICAgPGgzICpuZ0lmPVwiaXRlbS5EYXRlXCI+e3sgaXRlbS5EYXRlIH19IMOgcyB7eyBpdGVtLkhvdXIgfX08L2gzPlxyXG4gICAgICAgICAgICAgICAgPHAgW3NhZmVIdG1sXT1cIml0ZW0uQ29udGVudCB8IHRyYW5zbGF0ZVwiPjwvcD5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZWxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9jb250cm9scy90aW1lbGluZS90aW1lbGluZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbmZvLWxpYnJhcnkvc3JjL2NvbnRyb2xzL3RpbWVsaW5lL3RpbWVsaW5lLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0lDR2xFLDhCQUEyQyxhQUFBO0lBQ2YsWUFBUztJQUFBLGlCQUFNLEVBQUE7OztJQUFmLGVBQVM7SUFBVCxrQ0FBUzs7O0lBT3pCLDBCQUF1QjtJQUFBLFlBQWM7SUFBQSxpQkFBSzs7O0lBQW5CLGVBQWM7SUFBZCxtQ0FBYzs7O0lBRXJDLDBCQUFzQjtJQUFBLFlBQWtDO0lBQUEsaUJBQUs7OztJQUF2QyxlQUFrQztJQUFsQyxzRUFBa0M7Ozs7SUFMaEUsOEJBQTRDO0lBQ3hDLHlCQUE4RTtJQUM5RSw4QkFBMEI7SUFDdEIsMkVBQTBDO0lBQzFDLHdCQUE2Qzs7SUFDN0MsMkVBQTZEO0lBQ2pFLGlCQUFNLEVBQUE7OztJQUxrQixlQUErQztJQUEvQyx3RUFBK0M7SUFFOUQsZUFBZ0I7SUFBaEIsb0NBQWdCO0lBQ2xCLGVBQXFDO0lBQXJDLGdFQUFxQztJQUNuQyxlQUFlO0lBQWYsbUNBQWU7O0FERnBDLE1BQU0sT0FBTyxxQkFBcUI7SUFZOUI7UUFYUyxhQUFRLEdBQVksSUFBSSxDQUFDO1FBQ3pCLFVBQUssR0FBVyxTQUFTLENBQUM7UUFDMUIsVUFBSyxHQUFRLEVBQUUsQ0FBQztRQUNoQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLFNBQUksR0FBVSxFQUFFLENBQUM7UUFFTyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBQ3pCLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzlCLGVBQVUsR0FBWSxLQUFLLENBQUM7UUFDMUIsaUJBQVksR0FBWSxLQUFLLENBQUM7SUFFbEQsQ0FBQztJQUVqQixRQUFRO1FBQ0osSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssTUFBTSxDQUFDLENBQUM7UUFDekMsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUM7UUFDN0MsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssT0FBTyxDQUFDLENBQUM7UUFDM0MsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7NkdBbkJRLHFCQUFxQjt1R0FBckIscUJBQXFCOzs7UUNYbEMsMEJBQTBCO1FBRTFCLDhCQUEwQjtRQUN0QixzRUFFTTtRQUVOLDhCQUF1QjtRQUNuQixzRUFPTTtRQUNWLGlCQUFNLEVBQUE7O1FBYmtCLGVBQWlCO1FBQWpCLHNDQUFpQjtRQUtGLGVBQU87UUFBUCxrQ0FBTzs7dUZER3JDLHFCQUFxQjtjQVRqQyxTQUFTOzJCQUNJLGVBQWUsUUFHbkI7b0JBQ0Ysa0JBQWtCLEVBQUUsTUFBTTtvQkFDMUIsbUJBQW1CLEVBQUUsTUFBTTtpQkFDOUI7c0NBR1EsUUFBUTtrQkFBaEIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLElBQUk7a0JBQVosS0FBSztZQUUyQixTQUFTO2tCQUF6QyxXQUFXO21CQUFDLGtCQUFrQjtZQUNJLFdBQVc7a0JBQTdDLFdBQVc7bUJBQUMsb0JBQW9CO1lBQ0MsVUFBVTtrQkFBM0MsV0FBVzttQkFBQyxtQkFBbUI7WUFDSSxZQUFZO2tCQUEvQyxXQUFXO21CQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdpbmZvLXRpbWVsaW5lJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi90aW1lbGluZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90aW1lbGluZS5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgaG9zdDoge1xyXG4gICAgICAgICdbY2xhc3MudGltZWxpbmVdJzogJ3RydWUnLFxyXG4gICAgICAgICdbY2xhc3Muc2hvdy1kYXRlXSc6ICd0cnVlJ1xyXG4gICAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mb1RpbWVsaW5lQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBJbnB1dCgpIHNob3dkYXRlOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIGFsaWduOiBzdHJpbmcgPSAnYmV0d2Vlbic7XHJcbiAgICBASW5wdXQoKSBzdHlsZTogYW55ID0gJyc7XHJcbiAgICBASW5wdXQoKSBsYWJlbDogc3RyaW5nID0gJyc7XHJcbiAgICBASW5wdXQoKSBkYXRhOiBhbnlbXSA9IFtdO1xyXG5cclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWxpZ24tbGVmdCcpIGFsaWduTGVmdDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbGlnbi1jZW50ZXInKSBhbGlnbkNlbnRlcjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5hbGlnbi1yaWdodCcpIGFsaWduUmlnaHQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWxpZ24tYmV0d2VlbicpIGFsaWduQmV0d2VlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5hbGlnbkxlZnQgPSAodGhpcy5hbGlnbiA9PT0gJ2xlZnQnKTtcclxuICAgICAgICB0aGlzLmFsaWduQ2VudGVyID0gKHRoaXMuYWxpZ24gPT09ICdjZW50ZXInKTtcclxuICAgICAgICB0aGlzLmFsaWduUmlnaHQgPSAodGhpcy5hbGlnbiA9PT0gJ3JpZ2h0Jyk7XHJcbiAgICAgICAgdGhpcy5hbGlnbkJldHdlZW4gPSAodGhpcy5hbGlnbiA9PT0gJ2JldHdlZW4nKTtcclxuICAgIH1cclxufSIsIjxzcGFuIGNsYXNzPVwibGluZVwiPjwvc3Bhbj5cclxuXHJcbjxkaXYgY2xhc3M9XCJ0aW1lbGluZS1ib3hcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJib3gtbGFiZWxcIiAqbmdJZj1cImxhYmVsICE9ICcnXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXRleHRcIj57e2xhYmVsfX08L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJib3gtaXRlbXNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW0tcG9pbnRcIiBbbmdTdHlsZV09XCJ7ICdib3JkZXItY29sb3InOiBpdGVtLlBvaW50Q29sb3IgfVwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXRlbS1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8aDIgKm5nSWY9XCJpdGVtLlRpdGxlXCI+e3tpdGVtLlRpdGxlfX08L2gyPlxyXG4gICAgICAgICAgICAgICAgPHAgW3NhZmVIdG1sXT1cIml0ZW0uQ29udGVudCB8IHRyYW5zbGF0ZVwiPjwvcD5cclxuICAgICAgICAgICAgICAgIDxoMyAqbmdJZj1cIml0ZW0uRGF0ZVwiPnt7IGl0ZW0uRGF0ZSB9fSDDoHMge3sgaXRlbS5Ib3VyIH19PC9oMz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
@@ -1,21 +1,22 @@
1
- import { Directive, ElementRef, Inject, Input, SecurityContext } from '@angular/core';
1
+ import { Directive, ElementRef, Input, SecurityContext } from '@angular/core';
2
2
  import { DomSanitizer } from '@angular/platform-browser';
3
3
  import DOMPurify from 'dompurify';
4
- import { HTML_SANITIZER_CONFIG } from '../global-config';
5
4
  import { HtmlSanitizerConfig } from '../model/html-sanitizer-config.model';
5
+ import { InfoPlatformModel, } from '../model';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@angular/platform-browser";
8
- import * as i2 from "../model/html-sanitizer-config.model";
8
+ import * as i2 from "../model";
9
9
  export class InfoSafeHtmlDirective {
10
- constructor(elementRef, sanitizer, config) {
10
+ constructor(elementRef, sanitizer, platform) {
11
11
  this.elementRef = elementRef;
12
12
  this.sanitizer = sanitizer;
13
- this.config = config;
13
+ this.platform = platform;
14
14
  this.safeHtml = '';
15
15
  this.defaultConfig = new HtmlSanitizerConfig();
16
16
  this.domPurifyConfig = {
17
- FORBID_TAGS: this.config?.forbiddenTags ?? this.defaultConfig.forbiddenTags,
18
- FORBID_ATTR: this.config?.forbiddenAttributes ?? this.defaultConfig.forbiddenAttributes
17
+ ALLOWED_TAGS: this.platform.Config.allowedTags,
18
+ FORBID_TAGS: this.defaultConfig.forbiddenTags,
19
+ FORBID_ATTR: this.defaultConfig.forbiddenAttributes
19
20
  };
20
21
  }
21
22
  ngOnChanges() {
@@ -26,17 +27,14 @@ export class InfoSafeHtmlDirective {
26
27
  this.elementRef.nativeElement.innerHTML = finalHtml;
27
28
  }
28
29
  }
29
- /** @nocollapse */ InfoSafeHtmlDirective.ɵfac = function InfoSafeHtmlDirective_Factory(t) { return new (t || InfoSafeHtmlDirective)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.DomSanitizer), i0.ɵɵdirectiveInject(HTML_SANITIZER_CONFIG)); };
30
+ /** @nocollapse */ InfoSafeHtmlDirective.ɵfac = function InfoSafeHtmlDirective_Factory(t) { return new (t || InfoSafeHtmlDirective)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1.DomSanitizer), i0.ɵɵdirectiveInject(i2.InfoPlatformModel)); };
30
31
  /** @nocollapse */ InfoSafeHtmlDirective.ɵdir = /** @pureOrBreakMyCode */ i0.ɵɵdefineDirective({ type: InfoSafeHtmlDirective, selectors: [["", "safeHtml", ""]], inputs: { safeHtml: "safeHtml" }, features: [i0.ɵɵNgOnChangesFeature] });
31
32
  (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(InfoSafeHtmlDirective, [{
32
33
  type: Directive,
33
34
  args: [{
34
35
  selector: '[safeHtml]'
35
36
  }]
36
- }], function () { return [{ type: i0.ElementRef }, { type: i1.DomSanitizer }, { type: i2.HtmlSanitizerConfig, decorators: [{
37
- type: Inject,
38
- args: [HTML_SANITIZER_CONFIG]
39
- }] }]; }, { safeHtml: [{
37
+ }], function () { return [{ type: i0.ElementRef }, { type: i1.DomSanitizer }, { type: i2.InfoPlatformModel }]; }, { safeHtml: [{
40
38
  type: Input
41
39
  }] }); })();
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZWh0bWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9kaXJlY3RpdmVzL3NhZmVodG1sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFhLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekQsT0FBTyxTQUFTLE1BQU0sV0FBVyxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7O0FBSzNFLE1BQU0sT0FBTyxxQkFBcUI7SUFVaEMsWUFBb0IsVUFBc0IsRUFDaEMsU0FBdUIsRUFDUSxNQUEyQjtRQUZoRCxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ2hDLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFDUSxXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQVYzRCxhQUFRLEdBQVcsRUFBRSxDQUFDO1FBRXRCLGtCQUFhLEdBQUcsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1FBQ2xDLG9CQUFlLEdBQXFCO1lBQ25ELFdBQVcsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLGFBQWEsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWE7WUFDM0UsV0FBVyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsbUJBQW1CLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUI7U0FDdkYsQ0FBQztJQUlvRSxDQUFDO0lBRXhFLFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRTNCLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUUsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUUsSUFBSSxFQUFFLENBQUM7UUFDbEYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUN0RCxDQUFDOzs2R0FwQlUscUJBQXFCLG1HQVl0QixxQkFBcUI7dUdBWnBCLHFCQUFxQjt1RkFBckIscUJBQXFCO2NBSGpDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTthQUN2Qjs7c0JBYUksTUFBTTt1QkFBQyxxQkFBcUI7d0JBVnRCLFFBQVE7a0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgU2VjdXJpdHlDb250ZXh0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERvbVNhbml0aXplciB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xyXG5pbXBvcnQgRE9NUHVyaWZ5IGZyb20gJ2RvbXB1cmlmeSc7XHJcbmltcG9ydCB7IEhUTUxfU0FOSVRJWkVSX0NPTkZJRyB9IGZyb20gJy4uL2dsb2JhbC1jb25maWcnO1xyXG5pbXBvcnQgeyBIdG1sU2FuaXRpemVyQ29uZmlnIH0gZnJvbSAnLi4vbW9kZWwvaHRtbC1zYW5pdGl6ZXItY29uZmlnLm1vZGVsJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NhZmVIdG1sXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIEluZm9TYWZlSHRtbERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XHJcblxyXG4gIEBJbnB1dCgpIHNhZmVIdG1sOiBzdHJpbmcgPSAnJztcclxuICBcclxuICByZWFkb25seSBkZWZhdWx0Q29uZmlnID0gbmV3IEh0bWxTYW5pdGl6ZXJDb25maWcoKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRvbVB1cmlmeUNvbmZpZzogRE9NUHVyaWZ5LkNvbmZpZyA9IHtcclxuICAgIEZPUkJJRF9UQUdTOiB0aGlzLmNvbmZpZz8uZm9yYmlkZGVuVGFncyA/PyB0aGlzLmRlZmF1bHRDb25maWcuZm9yYmlkZGVuVGFncyxcclxuICAgIEZPUkJJRF9BVFRSOiB0aGlzLmNvbmZpZz8uZm9yYmlkZGVuQXR0cmlidXRlcyA/PyB0aGlzLmRlZmF1bHRDb25maWcuZm9yYmlkZGVuQXR0cmlidXRlc1xyXG4gICB9O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIHNhbml0aXplcjogRG9tU2FuaXRpemVyLFxyXG4gICAgQEluamVjdChIVE1MX1NBTklUSVpFUl9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBIdG1sU2FuaXRpemVyQ29uZmlnKSB7fVxyXG5cclxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5zYWZlSHRtbCkgcmV0dXJuO1xyXG5cclxuICAgIGNvbnN0IHNhbml0aXplZCA9IERPTVB1cmlmeS5zYW5pdGl6ZSh0aGlzLnNhZmVIdG1sLCB0aGlzLmRvbVB1cmlmeUNvbmZpZyk7ICAgICBcclxuICAgIGNvbnN0IGZpbmFsSHRtbCA9IHRoaXMuc2FuaXRpemVyLnNhbml0aXplKFNlY3VyaXR5Q29udGV4dC5IVE1MLCBzYW5pdGl6ZWQgKSB8fCAnJztcclxuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IGZpbmFsSHRtbDtcclxuICB9XHJcbn1cclxuXHJcbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZWh0bWwuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9kaXJlY3RpdmVzL3NhZmVodG1sLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBVSxLQUFLLEVBQWEsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLFNBQVMsTUFBTSxXQUFXLENBQUM7QUFDbEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGlCQUFpQixHQUFJLE1BQU0sVUFBVSxDQUFDOzs7O0FBSy9DLE1BQU0sT0FBTyxxQkFBcUI7SUFXaEMsWUFBb0IsVUFBc0IsRUFDaEMsU0FBdUIsRUFDdkIsUUFBMkI7UUFGakIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBQ3ZCLGFBQVEsR0FBUixRQUFRLENBQW1CO1FBWDVCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFFdEIsa0JBQWEsR0FBRyxJQUFJLG1CQUFtQixFQUFFLENBQUM7UUFDbEMsb0JBQWUsR0FBcUI7WUFDbkQsWUFBWSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLFdBQVc7WUFDOUMsV0FBVyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYTtZQUM3QyxXQUFXLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxtQkFBbUI7U0FDbkQsQ0FBQztJQUlxQyxDQUFDO0lBRXpDLFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBRTNCLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDMUUsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxTQUFTLENBQUUsSUFBSSxFQUFFLENBQUM7UUFDbEYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUN0RCxDQUFDOzs2R0FyQlUscUJBQXFCO3VHQUFyQixxQkFBcUI7dUZBQXJCLHFCQUFxQjtjQUhqQyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7YUFDdkI7d0hBR1UsUUFBUTtrQkFBaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0LCBJbnB1dCwgT25DaGFuZ2VzLCBTZWN1cml0eUNvbnRleHQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcbmltcG9ydCBET01QdXJpZnkgZnJvbSAnZG9tcHVyaWZ5JztcclxuaW1wb3J0IHsgSHRtbFNhbml0aXplckNvbmZpZyB9IGZyb20gJy4uL21vZGVsL2h0bWwtc2FuaXRpemVyLWNvbmZpZy5tb2RlbCc7XHJcbmltcG9ydCB7IEluZm9QbGF0Zm9ybU1vZGVsLCAgfSBmcm9tICcuLi9tb2RlbCc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tzYWZlSHRtbF0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmZvU2FmZUh0bWxEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG5cclxuICBASW5wdXQoKSBzYWZlSHRtbDogc3RyaW5nID0gJyc7XHJcbiAgXHJcbiAgcmVhZG9ubHkgZGVmYXVsdENvbmZpZyA9IG5ldyBIdG1sU2FuaXRpemVyQ29uZmlnKCk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkb21QdXJpZnlDb25maWc6IERPTVB1cmlmeS5Db25maWcgPSB7XHJcbiAgICBBTExPV0VEX1RBR1M6IHRoaXMucGxhdGZvcm0uQ29uZmlnLmFsbG93ZWRUYWdzLFxyXG4gICAgRk9SQklEX1RBR1M6IHRoaXMuZGVmYXVsdENvbmZpZy5mb3JiaWRkZW5UYWdzLFxyXG4gICAgRk9SQklEX0FUVFI6IHRoaXMuZGVmYXVsdENvbmZpZy5mb3JiaWRkZW5BdHRyaWJ1dGVzXHJcbiAgIH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIsXHJcbiAgICBwcml2YXRlIHBsYXRmb3JtOiBJbmZvUGxhdGZvcm1Nb2RlbCkge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuc2FmZUh0bWwpIHJldHVybjtcclxuXHJcbiAgICBjb25zdCBzYW5pdGl6ZWQgPSBET01QdXJpZnkuc2FuaXRpemUodGhpcy5zYWZlSHRtbCwgdGhpcy5kb21QdXJpZnlDb25maWcpOyAgICAgXHJcbiAgICBjb25zdCBmaW5hbEh0bWwgPSB0aGlzLnNhbml0aXplci5zYW5pdGl6ZShTZWN1cml0eUNvbnRleHQuSFRNTCwgc2FuaXRpemVkICkgfHwgJyc7XHJcbiAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSBmaW5hbEh0bWw7XHJcbiAgfVxyXG59XHJcblxyXG4iXX0=
@@ -1,5 +1,4 @@
1
1
  import { InjectionToken } from "@angular/core";
2
2
  export const DICTIONARIES_CONFIG = new InjectionToken('DICTIONARIES_CONFIG');
3
3
  export const APICONTROLLER_CONFIG = new InjectionToken('APICONTROLLER_CONFIG');
4
- export const HTML_SANITIZER_CONFIG = new InjectionToken('HTML_SANITIZER_CONFIG');
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2luZm8tbGlicmFyeS9zcmMvZ2xvYmFsLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUFNLHFCQUFxQixDQUFDLENBQUM7QUFDbEYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBQU0sc0JBQXNCLENBQUMsQ0FBQztBQUNwRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBSSxJQUFJLGNBQWMsQ0FBc0IsdUJBQXVCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSHRtbFNhbml0aXplckNvbmZpZyB9IGZyb20gXCIuL21vZGVsL2h0bWwtc2FuaXRpemVyLWNvbmZpZy5tb2RlbFwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IERJQ1RJT05BUklFU19DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PignRElDVElPTkFSSUVTX0NPTkZJRycpO1xyXG5leHBvcnQgY29uc3QgQVBJQ09OVFJPTExFUl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PignQVBJQ09OVFJPTExFUl9DT05GSUcnKTtcclxuZXhwb3J0IGNvbnN0IEhUTUxfU0FOSVRJWkVSX0NPTkZJRyAgPSBuZXcgSW5qZWN0aW9uVG9rZW48SHRtbFNhbml0aXplckNvbmZpZz4oJ0hUTUxfU0FOSVRJWkVSX0NPTkZJRycpOyJdfQ==
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2luZm8tbGlicmFyeS9zcmMvZ2xvYmFsLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLElBQUksY0FBYyxDQUFNLHFCQUFxQixDQUFDLENBQUM7QUFDbEYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxjQUFjLENBQU0sc0JBQXNCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSHRtbFNhbml0aXplckNvbmZpZyB9IGZyb20gXCIuL21vZGVsL2h0bWwtc2FuaXRpemVyLWNvbmZpZy5tb2RlbFwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IERJQ1RJT05BUklFU19DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PignRElDVElPTkFSSUVTX0NPTkZJRycpO1xyXG5leHBvcnQgY29uc3QgQVBJQ09OVFJPTExFUl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48YW55PignQVBJQ09OVFJPTExFUl9DT05GSUcnKTtcclxuIl19
@@ -11,6 +11,7 @@ export class InfoAppConfigModel {
11
11
  this.enabledPrime = false;
12
12
  this.title = '';
13
13
  this.headers = [];
14
+ this.allowedTags = [];
14
15
  }
15
16
  }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2luZm8tbGlicmFyeS9zcmMvbW9kZWwvYXBwLWNvbmZpZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sa0JBQWtCO0lBQS9CO1FBQ0ksZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ3ZCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBQzNCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixPQUFFLEdBQVcsQ0FBQyxDQUFDO1FBQ2YsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBQzlCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsWUFBTyxHQUFRLEVBQUUsQ0FBQztJQUN0QixDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgSW5mb0FwcENvbmZpZ01vZGVsIHtcclxuICAgIHByb2R1Y3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHdlYmFwaVVybDogc3RyaW5nID0gJyc7XHJcbiAgICBwcm9jZXNzaW5nVXJsOiBzdHJpbmcgPSAnJztcclxuICAgIHRoZW1lOiBzdHJpbmcgPSAnJztcclxuICAgIGRpY3Rpb25hcnk6IHN0cmluZyA9ICcnO1xyXG4gICAgdXg6IE51bWJlciA9IDI7XHJcbiAgICBzdHlsZTogc3RyaW5nID0gJyc7XHJcbiAgICB0b3BNZW51OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBlbmFibGVkUHJpbWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHRpdGxlOiBzdHJpbmcgPSAnJztcclxuICAgIGhlYWRlcnM6IGFueSA9IFtdO1xyXG59Il19
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWNvbmZpZy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2luZm8tbGlicmFyeS9zcmMvbW9kZWwvYXBwLWNvbmZpZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sa0JBQWtCO0lBQS9CO1FBQ0ksZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixjQUFTLEdBQVcsRUFBRSxDQUFDO1FBQ3ZCLGtCQUFhLEdBQVcsRUFBRSxDQUFDO1FBQzNCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixPQUFFLEdBQVcsQ0FBQyxDQUFDO1FBQ2YsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixZQUFPLEdBQVksS0FBSyxDQUFDO1FBQ3pCLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBQzlCLFVBQUssR0FBVyxFQUFFLENBQUM7UUFDbkIsWUFBTyxHQUFRLEVBQUUsQ0FBQztRQUNsQixnQkFBVyxHQUFhLEVBQUUsQ0FBQztJQUMvQixDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgSW5mb0FwcENvbmZpZ01vZGVsIHtcclxuICAgIHByb2R1Y3Rpb246IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHdlYmFwaVVybDogc3RyaW5nID0gJyc7XHJcbiAgICBwcm9jZXNzaW5nVXJsOiBzdHJpbmcgPSAnJztcclxuICAgIHRoZW1lOiBzdHJpbmcgPSAnJztcclxuICAgIGRpY3Rpb25hcnk6IHN0cmluZyA9ICcnO1xyXG4gICAgdXg6IE51bWJlciA9IDI7XHJcbiAgICBzdHlsZTogc3RyaW5nID0gJyc7XHJcbiAgICB0b3BNZW51OiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBlbmFibGVkUHJpbWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIHRpdGxlOiBzdHJpbmcgPSAnJztcclxuICAgIGhlYWRlcnM6IGFueSA9IFtdO1xyXG4gICAgYWxsb3dlZFRhZ3M6IHN0cmluZ1tdID0gW107XHJcbn0iXX0=
@@ -1,9 +1,9 @@
1
1
  export class HtmlSanitizerConfig {
2
2
  constructor() {
3
- //allowedTags: string[] = ['small', 'b', 'strong', 'i', 'em', 'u', 'br', 'p', 'span', 'ul', 'ol', 'li'];
3
+ this.allowedTags = ['small', 'b', 'i', 'a', 'span', 'br'];
4
4
  //allowedAttributes: string[] = [ 'class' ];
5
5
  this.forbiddenTags = ['img', 'iframe', 'script', 'svg', 'object', 'embed', 'video', 'audio', 'source', 'style'];
6
6
  this.forbiddenAttributes = ['src', 'srcset', 'onerror', 'onclick', 'onload'];
7
7
  }
8
8
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1zYW5pdGl6ZXItY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9tb2RlbC9odG1sLXNhbml0aXplci1jb25maWcubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLG1CQUFtQjtJQUFoQztRQUNJLHdHQUF3RztRQUN4Ryw0Q0FBNEM7UUFDNUMsa0JBQWEsR0FBYSxDQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBRSxDQUFDO1FBQ3ZILHdCQUFtQixHQUFhLENBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBRSxDQUFDO0lBQ3hGLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBIdG1sU2FuaXRpemVyQ29uZmlnIHtcclxuICAgIC8vYWxsb3dlZFRhZ3M6IHN0cmluZ1tdID0gWydzbWFsbCcsICdiJywgJ3N0cm9uZycsICdpJywgJ2VtJywgJ3UnLCAnYnInLCAncCcsICdzcGFuJywgJ3VsJywgJ29sJywgJ2xpJ107XHJcbiAgICAvL2FsbG93ZWRBdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFsgJ2NsYXNzJyBdO1xyXG4gICAgZm9yYmlkZGVuVGFnczogc3RyaW5nW10gPSBbICdpbWcnLCAnaWZyYW1lJywgJ3NjcmlwdCcsICdzdmcnLCAnb2JqZWN0JywgJ2VtYmVkJywgJ3ZpZGVvJywgJ2F1ZGlvJywgJ3NvdXJjZScsICdzdHlsZScgXTtcclxuICAgIGZvcmJpZGRlbkF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gWyAnc3JjJywgJ3NyY3NldCcsICdvbmVycm9yJywgJ29uY2xpY2snLCAnb25sb2FkJyBdO1xyXG59Il19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHRtbC1zYW5pdGl6ZXItY29uZmlnLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9tb2RlbC9odG1sLXNhbml0aXplci1jb25maWcubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxPQUFPLG1CQUFtQjtJQUFoQztRQUNJLGdCQUFXLEdBQWEsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQy9ELDRDQUE0QztRQUM1QyxrQkFBYSxHQUFhLENBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFFLENBQUM7UUFDdkgsd0JBQW1CLEdBQWEsQ0FBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxDQUFFLENBQUM7SUFDeEYsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEh0bWxTYW5pdGl6ZXJDb25maWcge1xyXG4gICAgYWxsb3dlZFRhZ3M6IHN0cmluZ1tdID0gWydzbWFsbCcsICdiJywgJ2knLCAnYScsICdzcGFuJywgJ2JyJ107XHJcbiAgICAvL2FsbG93ZWRBdHRyaWJ1dGVzOiBzdHJpbmdbXSA9IFsgJ2NsYXNzJyBdO1xyXG4gICAgZm9yYmlkZGVuVGFnczogc3RyaW5nW10gPSBbICdpbWcnLCAnaWZyYW1lJywgJ3NjcmlwdCcsICdzdmcnLCAnb2JqZWN0JywgJ2VtYmVkJywgJ3ZpZGVvJywgJ2F1ZGlvJywgJ3NvdXJjZScsICdzdHlsZScgXTtcclxuICAgIGZvcmJpZGRlbkF0dHJpYnV0ZXM6IHN0cmluZ1tdID0gWyAnc3JjJywgJ3NyY3NldCcsICdvbmVycm9yJywgJ29uY2xpY2snLCAnb25sb2FkJyBdO1xyXG59Il19
@@ -1,4 +1,4 @@
1
- export { APICONTROLLER_CONFIG, DICTIONARIES_CONFIG, HTML_SANITIZER_CONFIG } from './global-config';
1
+ export { APICONTROLLER_CONFIG, DICTIONARIES_CONFIG } from './global-config';
2
2
  export * from './directives';
3
3
  export * from './model';
4
4
  export * from './enum';
@@ -35,4 +35,4 @@ export { InfoLoadingComponent } from './layouts/loading/loading.component';
35
35
  export { InfoModalComponent } from './layouts/modal/modal.component';
36
36
  export { InfoPagebarComponent } from './layouts/pagebar/pagebar.component';
37
37
  export { InfoLibraryModule } from './info-library.module';
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2luZm8tbGlicmFyeS9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVuRyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFdBQVcsQ0FBQztBQUUxQixXQUFXO0FBQ1gsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDMUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDN0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFdEUsVUFBVTtBQUNWLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEFQSUNPTlRST0xMRVJfQ09ORklHLCBESUNUSU9OQVJJRVNfQ09ORklHLCBIVE1MX1NBTklUSVpFUl9DT05GSUcgfSBmcm9tICcuL2dsb2JhbC1jb25maWcnO1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9kaXJlY3RpdmVzJztcclxuZXhwb3J0ICogZnJvbSAnLi9tb2RlbCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vZW51bSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vcGlwZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZSc7XHJcblxyXG4vLyBDb250cm9sc1xyXG5leHBvcnQgeyBJbmZvQWxlcnRDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9BdXRvQ29tcGxldGVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0JpZ0NoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9iaWctY2hlY2tib3gvYmlnLWNoZWNrYm94LmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9DYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9jYXJkL2NhcmQuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb01lbnVDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9jYXJkLW1lbnUvY2FyZC1tZW51LmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9DaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0RhdGVDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2RhdGUvZGF0ZS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvRGF0ZU1vbnRoQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9kYXRlLW1vbnRoL2RhdGUtbW9udGguY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0dyaWRDb21wb25lbnQsIEluZm9HcmlkTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2dyaWQvZ3JpZC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvSW5wdXRDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2lucHV0L2lucHV0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9JbnB1dExpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2lucHV0LWxpc3QvaW5wdXQtbGlzdC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvTGlzdENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9saXN0LWNoZWNrYm94L2xpc3QtY2hlY2tib3guY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb01lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL21lc3NhZ2UvbWVzc2FnZS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvUGFnaW5hdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9wYWdpbmF0b3IvcGFnaW5hdG9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9TZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb1RpbWVsaW5lQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy90aW1lbGluZS90aW1lbGluZS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9lZGl0b3IvZWRpdG9yLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9NdWx0aVNlbGVjdENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvbXVsdGktc2VsZWN0L211bHRpLXNlbGVjdC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvQ2hpcHNDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2NoaXBzL2NoaXBzLmNvbXBvbmVudCc7XHJcblxyXG4vLyBMYXlvdXRzXHJcbmV4cG9ydCB7IEluZm9NYWluQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL21haW4vbWFpbi5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvU2lkZWJhckNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9zaWRlYmFyL3NpZGViYXIuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb1RvcGJhckNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy90b3BiYXIvdG9wYmFyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9Ub3BNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL3RvcG1lbnUvdG9wbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvRGlhbG9nQ29tcG9uZW50LCBJbmZvRGlhbG9nTW9kYWwgfSBmcm9tICcuL2xheW91dHMvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0xvYWRpbmdDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvbG9hZGluZy9sb2FkaW5nLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9Nb2RhbENvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9tb2RhbC9tb2RhbC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvUGFnZWJhckNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9wYWdlYmFyL3BhZ2ViYXIuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCB7IEluZm9MaWJyYXJ5TW9kdWxlIH0gZnJvbSAnLi9pbmZvLWxpYnJhcnkubW9kdWxlJzsiXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2luZm8tbGlicmFyeS9zcmMvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1RSxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFdBQVcsQ0FBQztBQUUxQixXQUFXO0FBQ1gsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDMUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDM0YsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDN0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFdEUsVUFBVTtBQUNWLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN6RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEFQSUNPTlRST0xMRVJfQ09ORklHLCBESUNUSU9OQVJJRVNfQ09ORklHIH0gZnJvbSAnLi9nbG9iYWwtY29uZmlnJztcclxuXHJcbmV4cG9ydCAqIGZyb20gJy4vZGlyZWN0aXZlcyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2VudW0nO1xyXG5leHBvcnQgKiBmcm9tICcuL3BpcGUnO1xyXG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2UnO1xyXG5cclxuLy8gQ29udHJvbHNcclxuZXhwb3J0IHsgSW5mb0FsZXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9hbGVydC9hbGVydC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvQXV0b0NvbXBsZXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9CaWdDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvYmlnLWNoZWNrYm94L2JpZy1jaGVja2JveC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvQ2FyZENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvY2FyZC9jYXJkLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9NZW51Q2FyZENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvY2FyZC1tZW51L2NhcmQtbWVudS5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9EYXRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9kYXRlL2RhdGUuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0RhdGVNb250aENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvZGF0ZS1tb250aC9kYXRlLW1vbnRoLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9HcmlkQ29tcG9uZW50LCBJbmZvR3JpZE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9ncmlkL2dyaWQuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0lucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9pbnB1dC9pbnB1dC5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvSW5wdXRMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9pbnB1dC1saXN0L2lucHV0LWxpc3QuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0xpc3RDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvbGlzdC1jaGVja2JveC9saXN0LWNoZWNrYm94LmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9NZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9tZXNzYWdlL21lc3NhZ2UuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb1BhZ2luYXRvckNvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvcGFnaW5hdG9yL3BhZ2luYXRvci5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9UaW1lbGluZUNvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvdGltZWxpbmUvdGltZWxpbmUuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0VkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vY29udHJvbHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvTXVsdGlTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL2NvbnRyb2xzL211bHRpLXNlbGVjdC9tdWx0aS1zZWxlY3QuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0NoaXBzQ29tcG9uZW50IH0gZnJvbSAnLi9jb250cm9scy9jaGlwcy9jaGlwcy5jb21wb25lbnQnO1xyXG5cclxuLy8gTGF5b3V0c1xyXG5leHBvcnQgeyBJbmZvTWFpbkNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9tYWluL21haW4uY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb1NpZGViYXJDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvc2lkZWJhci9zaWRlYmFyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9Ub3BiYXJDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvdG9wYmFyL3RvcGJhci5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvVG9wTWVudUNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy90b3BtZW51L3RvcG1lbnUuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0RpYWxvZ0NvbXBvbmVudCwgSW5mb0RpYWxvZ01vZGFsIH0gZnJvbSAnLi9sYXlvdXRzL2RpYWxvZy9kaWFsb2cuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb0ZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vbGF5b3V0cy9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmV4cG9ydCB7IEluZm9Mb2FkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9sYXlvdXRzL2xvYWRpbmcvbG9hZGluZy5jb21wb25lbnQnO1xyXG5leHBvcnQgeyBJbmZvTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvbW9kYWwvbW9kYWwuY29tcG9uZW50JztcclxuZXhwb3J0IHsgSW5mb1BhZ2ViYXJDb21wb25lbnQgfSBmcm9tICcuL2xheW91dHMvcGFnZWJhci9wYWdlYmFyLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgeyBJbmZvTGlicmFyeU1vZHVsZSB9IGZyb20gJy4vaW5mby1saWJyYXJ5Lm1vZHVsZSc7Il19
@@ -48,12 +48,12 @@ export class InfoDataService {
48
48
  }
49
49
  getNoToken(controller, method, param) {
50
50
  return this._http
51
- .get(this.getAPIUrl(controller) + this.getMethod(method || '') + (param == null ? '' : ('?' + encodeURIComponent(this._utilities.jsonToEncrypt(param.replace(/null/g, '').replace(/undefined/g, ''))))), { headers: this.getHeaderDefault(), responseType: 'text' })
51
+ .get(this.getAPIUrl(controller) + this.getMethod(method || '') + (param == null ? '' : ('?' + encodeURIComponent(this._utilities.encryptQueryString(param.replace(/null/g, '').replace(/undefined/g, ''))))), { headers: this.getHeaderDefault(), responseType: 'text' })
52
52
  .pipe(map(r => new InfoDataAccessModel(this._utilities.decryptToJson(r))), catchError((e) => this.errorHandling(e)));
53
53
  }
54
54
  get(controller, method, param) {
55
55
  return this._http
56
- .get(this.getAPIUrl(controller) + this.getMethod(method || '') + (param == null ? '' : ('?' + encodeURIComponent(this._utilities.jsonToEncrypt(param.replace(/null/g, '').replace(/undefined/g, ''))))), { headers: this.getHeaderToken(), responseType: 'text' })
56
+ .get(this.getAPIUrl(controller) + this.getMethod(method || '') + (param == null ? '' : ('?' + encodeURIComponent(this._utilities.encryptQueryString(param.replace(/null/g, '').replace(/undefined/g, ''))))), { headers: this.getHeaderToken(), responseType: 'text' })
57
57
  .pipe(map(r => new InfoDataAccessModel(this._utilities.decryptToJson(r))), catchError((e) => this.errorHandling(e)));
58
58
  }
59
59
  getById(controller, id) {
@@ -75,7 +75,7 @@ export class InfoDataService {
75
75
  if (id == undefined || id == null)
76
76
  alert('Id não informado');
77
77
  return this._http
78
- .delete(this.getAPIUrl(controller) + this.getMethod(method || '') + "?" + encodeURIComponent(this._utilities.jsonToEncrypt("id=" + id.toString())), { headers: this.getHeaderToken(), responseType: 'text' })
78
+ .delete(this.getAPIUrl(controller) + this.getMethod(method || '') + "?" + encodeURIComponent(this._utilities.encryptQueryString("id=" + id.toString())), { headers: this.getHeaderToken(), responseType: 'text' })
79
79
  .pipe(map(r => new InfoDataAccessModel(this._utilities.decryptToJson(r))), catchError((e) => this.errorHandling(e)));
80
80
  }
81
81
  deleteByModel(controller, model, method) {
@@ -92,7 +92,7 @@ export class InfoDataService {
92
92
  for (let index = 0; index < model.length; index++)
93
93
  formData.append(model[index].name, model[index]);
94
94
  return this._http
95
- .request('POST', this.getAPIUrl(controller) + this.getMethod(method || '') + (param == null ? '' : ('?' + encodeURIComponent(this._utilities.jsonToEncrypt(param)))), { headers: this.getHeaderToken(), body: formData, responseType: 'text' })
95
+ .request('POST', this.getAPIUrl(controller) + this.getMethod(method || '') + (param == null ? '' : ('?' + encodeURIComponent(this._utilities.encryptQueryString(param)))), { headers: this.getHeaderToken(), body: formData, responseType: 'text' })
96
96
  .pipe(map(r => new InfoDataAccessModel(this._utilities.decryptToJson(r))), catchError((e) => this.errorHandling(e)));
97
97
  }
98
98
  errorHandling(e, redirect = true) {
@@ -106,7 +106,7 @@ export class InfoDataService {
106
106
  getMethod(method) {
107
107
  if (method == null || method.trim() == '' || method.indexOf('?') < 0)
108
108
  return method ?? '';
109
- return method.substring(0, method.indexOf('?')) + '?' + encodeURIComponent(this._utilities.jsonToEncrypt(method.substring(method.indexOf('?') + 1).replace(/null/g, '').replace(/undefined/g, '')));
109
+ return method.substring(0, method.indexOf('?')) + '?' + encodeURIComponent(this._utilities.encryptQueryString(method.substring(method.indexOf('?') + 1).replace(/null/g, '').replace(/undefined/g, '')));
110
110
  }
111
111
  }
112
112
  /** @nocollapse */ InfoDataService.ɵfac = function InfoDataService_Factory(t) { return new (t || InfoDataService)(i0.ɵɵinject(APICONTROLLER_CONFIG), i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.Router), i0.ɵɵinject(i3.InfoPlatformModel), i0.ɵɵinject(i4.Utilities)); };
@@ -120,4 +120,4 @@ export class InfoDataService {
120
120
  type: Inject,
121
121
  args: [APICONTROLLER_CONFIG]
122
122
  }] }, { type: i1.HttpClient }, { type: i2.Router }, { type: i3.InfoPlatformModel }, { type: i4.Utilities }]; }, null); })();
123
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQXFCLE1BQU0sc0JBQXNCLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQWMsRUFBRSxFQUFtQixNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7OztBQUsvQyxNQUFNLE9BQU8sZUFBZTtJQUl4QixZQUFrRCxjQUFtQixFQUNqRCxLQUFpQixFQUNqQixPQUFlLEVBQ2YsV0FBOEIsRUFDOUIsVUFBcUI7UUFKUyxtQkFBYyxHQUFkLGNBQWMsQ0FBSztRQUNqRCxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFDOUIsZUFBVSxHQUFWLFVBQVUsQ0FBVztJQUFJLENBQUM7SUFFdkMsUUFBUTtRQUNYLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMs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QU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN4TSxDQUFDOztpR0FwS1EsZUFBZSxjQUlKLG9CQUFvQjtvR0FKL0IsZUFBZSxXQUFmLGVBQWUsbUJBRlosTUFBTTt1RkFFVCxlQUFlO2NBSDNCLFVBQVU7ZUFBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQjs7c0JBS2dCLE1BQU07dUJBQUMsb0JBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5mb0RhdGFBY2Nlc3NNb2RlbCB9IGZyb20gJy4uL21vZGVsL2RhdGEtYWNjZXNzLm1vZGVsJztcclxuaW1wb3J0IHsgbWFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgT2JzZXJ2YWJsZUlucHV0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEFQSUNPTlRST0xMRVJfQ09ORklHIH0gZnJvbSAnLi4vZ2xvYmFsLWNvbmZpZyc7XHJcbmltcG9ydCB7IEluZm9QbGF0Zm9ybU1vZGVsIH0gZnJvbSAnLi4vbW9kZWwvcGxhdGZvcm0ubW9kZWwnO1xyXG5pbXBvcnQgeyBVdGlsaXRpZXMgfSBmcm9tICcuLi91dGlscy91dGlsaXRpZXMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmZvRGF0YVNlcnZpY2Uge1xyXG5cclxuICAgIHByaXZhdGUgdG9rZW46IHN0cmluZztcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KEFQSUNPTlRST0xMRVJfQ09ORklHKSBwcml2YXRlIF9hcGlDb250cm9sbGVyOiBhbnksIFxyXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfaHR0cDogSHR0cENsaWVudCwgXHJcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlciwgXHJcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9wbGF0YWZvcm1hOiBJbmZvUGxhdGZvcm1Nb2RlbCwgXHJcbiAgICAgICAgICAgICAgICBwcml2YXRlIF91dGlsaXRpZXM6IFV0aWxpdGllcykgeyB9XHJcblxyXG4gICAgcHVibGljIGdldFRva2VuKCk6IHN0cmluZyB7XHJcbiAgICAgICAgdGhpcy50b2tlbiA9IHRoaXMuX3V0aWxpdGllcy5nZXRMb2NhbFN0b3JhZ2UodGhpcy5fcGxhdGFmb3JtYS5Ub2tlbktleSk7XHJcbiAgICAgICAgXHJcbiAgICAgICAgaWYgKHRoaXMudG9rZW4gPT0gbnVsbCkge1xyXG4gICAgICAgICAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGVCeVVybCgnJyk7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuXHJcbiAgICAgICAgfSBlbHNlIHJldHVybiAnQmVhcmVyICcgKyB0aGlzLnRva2VuO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRIZWFkZXJEZWZhdWx0KCk6IEh0dHBIZWFkZXJzIHtcclxuICAgICAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xyXG4gICAgICAgIGlmICh0aGlzLl9wbGF0YWZvcm1hLkNvbmZpZy5oZWFkZXJzICE9IG51bGwpXHJcbiAgICAgICAgICAgIHRoaXMuX3BsYXRhZm9ybWEuQ29uZmlnLmhlYWRlcnMuZm9yRWFjaChpdGVtID0+IGhlYWRlcnMgPSBoZWFkZXJzLnNldChpdGVtLmtleSwgaXRlbS52YWx1ZSkpOyAgIFxyXG4gICAgICAgIHJldHVybiBoZWFkZXJzO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRIZWFkZXJUb2tlbigpOiBIdHRwSGVhZGVycyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0SGVhZGVyRGVmYXVsdCgpLnNldCgnQXV0aG9yaXphdGlvbicsIHRoaXMuZ2V0VG9rZW4oKSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEFQSVVybChjb250cm9sbGVyOiBhbnkpIHtcclxuICAgICAgICBsZXQgYXBpID0gJyc7XHJcblxyXG5cdFx0aWYgKHR5cGVvZihjb250cm9sbGVyKSA9PSAnbnVtYmVyJylcclxuXHRcdFx0YXBpID0gIHRoaXMuX2FwaUNvbnRyb2xsZXJbY29udHJvbGxlcl0udG9TdHJpbmcoKTtcclxuXHJcbiAgICAgICAgZWxzZSBhcGkgPSBjb250cm9sbGVyID09IG51bGwgPyAnJyA6IGNvbnRyb2xsZXIudG9TdHJpbmcoKTtcclxuICAgICAgICBcclxuXHRcdHJldHVybiB0aGlzLl9wbGF0YWZvcm1hLkNvbmZpZy53ZWJhcGlVcmwgKyAoYXBpLnJlcGxhY2UoJ18nLCAnLycpICsgJy8nKS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXROb1Rva2VuKGNvbnRyb2xsZXI6IGFueSk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgZ2V0Tm9Ub2tlbihjb250cm9sbGVyOiBhbnksIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgZ2V0Tm9Ub2tlbihjb250cm9sbGVyOiBhbnksIG1ldGhvZD86IHN0cmluZywgcGFyYW0/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+O1xyXG4gICAgcHVibGljIGdldE5vVG9rZW4oY29udHJvbGxlcjogYW55LCBtZXRob2Q/OiBzdHJpbmcsIHBhcmFtPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5nZXQodGhpcy5nZXRBUElVcmwoY29udHJvbGxlcikgKyB0aGlzLmdldE1ldGhvZChtZXRob2QgfHwgJycpICsgKHBhcmFtID09IG51bGwgPyAnJyA6ICgnPycgKyBlbmNvZGVVUklDb21wb25lbnQodGhpcy5fdXRpbGl0aWVzLmpzb25Ub0VuY3J5cHQocGFyYW0ucmVwbGFjZSgvbnVsbC9nLCAnJykucmVwbGFjZSgvdW5kZWZpbmVkL2csICcnKSkpKSksIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJEZWZhdWx0KCksIHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldChjb250cm9sbGVyOiBhbnkpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+O1xyXG4gICAgcHVibGljIGdldChjb250cm9sbGVyOiBhbnksIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgZ2V0KGNvbnRyb2xsZXI6IGFueSwgbWV0aG9kPzogc3RyaW5nLCBwYXJhbT86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgZ2V0KGNvbnRyb2xsZXI6IGFueSwgbWV0aG9kPzogc3RyaW5nLCBwYXJhbT86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4ge1xyXG4gICAgICAgIFxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5nZXQodGhpcy5nZXRBUElVcmwoY29udHJvbGxlcikgKyB0aGlzLmdldE1ldGhvZChtZXRob2QgfHwgJycpICsgKHBhcmFtID09IG51bGwgPyAnJyA6ICgnPycgKyBlbmNvZGVVUklDb21wb25lbnQodGhpcy5fdXRpbGl0aWVzLmpzb25Ub0VuY3J5cHQocGFyYW0ucmVwbGFjZSgvbnVsbC9nLCAnJykucmVwbGFjZSgvdW5kZWZpbmVkL2csICcnKSkpKSksIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJUb2tlbigpLCByZXNwb25zZVR5cGU6ICd0ZXh0JyB9KVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcChyID0+IG5ldyBJbmZvRGF0YUFjY2Vzc01vZGVsKHRoaXMuX3V0aWxpdGllcy5kZWNyeXB0VG9Kc29uKHIpKSksXHJcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gdGhpcy5lcnJvckhhbmRsaW5nKGUpKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRCeUlkKGNvbnRyb2xsZXI6IGFueSwgaWQ6IG51bWJlcik6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4ge1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cFxyXG4gICAgICAgICAgICAuZ2V0KHRoaXMuZ2V0QVBJVXJsKGNvbnRyb2xsZXIpICsgaWQudG9TdHJpbmcoKSwgeyBoZWFkZXJzOiB0aGlzLmdldEhlYWRlclRva2VuKCksIHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHBvc3ROb1Rva2VuKGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgcG9zdE5vVG9rZW4oY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55LCBtZXRob2Q/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+O1xyXG4gICAgcHVibGljIHBvc3ROb1Rva2VuKGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSwgbWV0aG9kPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0QVBJVXJsKGNvbnRyb2xsZXIpICsgdGhpcy5nZXRNZXRob2QobWV0aG9kIHx8ICcnKSwgdGhpcy5fdXRpbGl0aWVzLmpzb25Ub0VuY3J5cHQobW9kZWwpLCB7IGhlYWRlcnM6IHRoaXMuZ2V0SGVhZGVyRGVmYXVsdCgpLCByZXNwb25zZVR5cGU6ICd0ZXh0JyB9KVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcChyID0+IG5ldyBJbmZvRGF0YUFjY2Vzc01vZGVsKHRoaXMuX3V0aWxpdGllcy5kZWNyeXB0VG9Kc29uKHIpKSksXHJcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gdGhpcy5lcnJvckhhbmRsaW5nKGUpKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBwb3N0KGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgcG9zdChjb250cm9sbGVyOiBhbnksIG1vZGVsOiBhbnksIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgcG9zdChjb250cm9sbGVyOiBhbnksIG1vZGVsOiBhbnksIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4ge1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cFxyXG4gICAgICAgICAgICAucG9zdCh0aGlzLmdldEFQSVVybChjb250cm9sbGVyKSArIHRoaXMuZ2V0TWV0aG9kKG1ldGhvZCB8fCAnJyksIHRoaXMuX3V0aWxpdGllcy5qc29uVG9FbmNyeXB0KG1vZGVsKSwgeyBoZWFkZXJzOiB0aGlzLmdldEhlYWRlclRva2VuKCksIHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSwgZmFsc2UpKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBkZWxldGUoY29udHJvbGxlcjogYW55LCBpZDogYW55KTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPlxyXG4gICAgcHVibGljIGRlbGV0ZShjb250cm9sbGVyOiBhbnksIGlkOiBhbnksIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgZGVsZXRlKGNvbnRyb2xsZXI6IGFueSwgaWQ6IGFueSwgbWV0aG9kPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcblxyXG4gICAgICAgIGlmIChpZCA9PSB1bmRlZmluZWQgfHwgaWQgPT0gbnVsbClcclxuICAgICAgICAgICAgYWxlcnQoJ0lkIG7Do28gaW5mb3JtYWRvJyk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5kZWxldGUodGhpcy5nZXRBUElVcmwoY29udHJvbGxlcikgKyB0aGlzLmdldE1ldGhvZChtZXRob2QgfHwgJycpICsgXCI/XCIgKyBlbmNvZGVVUklDb21wb25lbnQodGhpcy5fdXRpbGl0aWVzLmpzb25Ub0VuY3J5cHQoXCJpZD1cIiArIGlkLnRvU3RyaW5nKCkpKSwgeyBoZWFkZXJzOiB0aGlzLmdldEhlYWRlclRva2VuKCksIHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRlbGV0ZUJ5TW9kZWwoY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55KTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPlxyXG4gICAgcHVibGljIGRlbGV0ZUJ5TW9kZWwoY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55LCBtZXRob2Q/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+O1xyXG4gICAgcHVibGljIGRlbGV0ZUJ5TW9kZWwoY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55LCBtZXRob2Q/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+IHtcclxuXHJcbiAgICAgICAgbGV0IGh0dHBPcHRpb25zID0ge1xyXG4gICAgICAgICAgICBoZWFkZXJzOiB0aGlzLmdldEhlYWRlclRva2VuKCksXHJcbiAgICAgICAgICAgIGJvZHk6IHRoaXMuX3V0aWxpdGllcy5qc29uVG9FbmNyeXB0KG1vZGVsKSwgXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cFxyXG4gICAgICAgICAgICAuZGVsZXRlKHRoaXMuZ2V0QVBJVXJsKGNvbnRyb2xsZXIpICsgdGhpcy5nZXRNZXRob2QobWV0aG9kIHx8ICcnKSwgaHR0cE9wdGlvbnMpXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHJlcXVlc3QoY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55W10sIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD5cclxuICAgIHB1YmxpYyByZXF1ZXN0KGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueVtdLCBtZXRob2Q/OiBzdHJpbmcsIHBhcmFtPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPjtcclxuICAgIHB1YmxpYyByZXF1ZXN0KGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueVtdLCBtZXRob2Q/OiBzdHJpbmcsIHBhcmFtPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcblxyXG4gICAgICAgIGxldCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xyXG4gICAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBtb2RlbC5sZW5ndGg7IGluZGV4KyspXHJcbiAgICAgICAgICAgIGZvcm1EYXRhLmFwcGVuZChtb2RlbFtpbmRleF0ubmFtZSwgbW9kZWxbaW5kZXhdKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgICAgICAgLnJlcXVlc3QoJ1BPU1QnLCB0aGlzLmdldEFQSVVybChjb250cm9sbGVyKSArIHRoaXMuZ2V0TWV0aG9kKG1ldGhvZCB8fCAnJykgKyAocGFyYW0gPT0gbnVsbCA/ICcnIDogKCc/JyArIGVuY29kZVVSSUNvbXBvbmVudCh0aGlzLl91dGlsaXRpZXMuanNvblRvRW5jcnlwdChwYXJhbSkpKSksIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJUb2tlbigpLCBib2R5OiBmb3JtRGF0YSwgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAociA9PiBuZXcgSW5mb0RhdGFBY2Nlc3NNb2RlbCh0aGlzLl91dGlsaXRpZXMuZGVjcnlwdFRvSnNvbihyKSkpLFxyXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHRoaXMuZXJyb3JIYW5kbGluZyhlKSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGVycm9ySGFuZGxpbmcoZTogSHR0cEVycm9yUmVzcG9uc2UsIHJlZGlyZWN0OiBib29sZWFuID0gdHJ1ZSk6IE9ic2VydmFibGVJbnB1dDxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcbiAgICAgICAgaWYgKGUuc3RhdHVzID09IDQwMSkgXHJcbiAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhyZWYgPSAnLyMvbG9naW4nO1xyXG4gICAgICAgIGVsc2UgaWYgKHJlZGlyZWN0KSBcclxuICAgICAgICAgICAgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9ICcvIy81MDAnO1xyXG5cclxuICAgICAgICBsZXQgbWVzc2FnZXM6IHN0cmluZ1tdID0gbmV3IEFycmF5KGUubWVzc2FnZSk7XHJcbiAgICAgICAgcmV0dXJuIG9mKG5ldyBJbmZvRGF0YUFjY2Vzc01vZGVsKG51bGwsIGZhbHNlLCBtZXNzYWdlcykpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0TWV0aG9kKG1ldGhvZDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAobWV0aG9kID09IG51bGwgfHwgbWV0aG9kLnRyaW0oKSA9PSAnJyB8fCBtZXRob2QuaW5kZXhPZignPycpIDwgMCkgcmV0dXJuIG1ldGhvZCA/PyAnJztcclxuICAgICAgICBcclxuICAgICAgICByZXR1cm4gbWV0aG9kLnN1YnN0cmluZygwLCBtZXRob2QuaW5kZXhPZignPycpKSArICc/JyArIGVuY29kZVVSSUNvbXBvbmVudCh0aGlzLl91dGlsaXRpZXMuanNvblRvRW5jcnlwdChtZXRob2Quc3Vic3RyaW5nKG1ldGhvZC5pbmRleE9mKCc/JykgKyAxKS5yZXBsYWNlKC9udWxsL2csICcnKS5yZXBsYWNlKC91bmRlZmluZWQvZywgJycpKSk7XHJcbiAgICB9XHJcbn0iXX0=
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy9zZXJ2aWNlL2RhdGEuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQXFCLE1BQU0sc0JBQXNCLENBQUM7QUFDbEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDakUsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQWMsRUFBRSxFQUFtQixNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7OztBQUsvQyxNQUFNLE9BQU8sZUFBZTtJQUl4QixZQUFrRCxjQUFtQixFQUNqRCxLQUFpQixFQUNqQixPQUFlLEVBQ2YsV0FBOEIsRUFDOUIsVUFBcUI7UUFKUyxtQkFBYyxHQUFkLGNBQWMsQ0FBSztRQUNqRCxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFDZixnQkFBVyxHQUFYLFdBQVcsQ0FBbUI7UUFDOUIsZUFBVSxHQUFWLFVBQVUsQ0FBVztJQUFJLENBQUM7SUFFdkMsUUFBUTtRQUNYLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMs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QU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDN00sQ0FBQzs7aUdBcEtRLGVBQWUsY0FJSixvQkFBb0I7b0dBSi9CLGVBQWUsV0FBZixlQUFlLG1CQUZaLE1BQU07dUZBRVQsZUFBZTtjQUgzQixVQUFVO2VBQUM7Z0JBQ1IsVUFBVSxFQUFFLE1BQU07YUFDckI7O3NCQUtnQixNQUFNO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluZm9EYXRhQWNjZXNzTW9kZWwgfSBmcm9tICcuLi9tb2RlbC9kYXRhLWFjY2Vzcy5tb2RlbCc7XHJcbmltcG9ydCB7IG1hcCwgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIE9ic2VydmFibGVJbnB1dCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBUElDT05UUk9MTEVSX0NPTkZJRyB9IGZyb20gJy4uL2dsb2JhbC1jb25maWcnO1xyXG5pbXBvcnQgeyBJbmZvUGxhdGZvcm1Nb2RlbCB9IGZyb20gJy4uL21vZGVsL3BsYXRmb3JtLm1vZGVsJztcclxuaW1wb3J0IHsgVXRpbGl0aWVzIH0gZnJvbSAnLi4vdXRpbHMvdXRpbGl0aWVzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mb0RhdGFTZXJ2aWNlIHtcclxuXHJcbiAgICBwcml2YXRlIHRva2VuOiBzdHJpbmc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoQEluamVjdChBUElDT05UUk9MTEVSX0NPTkZJRykgcHJpdmF0ZSBfYXBpQ29udHJvbGxlcjogYW55LCBcclxuICAgICAgICAgICAgICAgIHByaXZhdGUgX2h0dHA6IEh0dHBDbGllbnQsIFxyXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfcm91dGVyOiBSb3V0ZXIsIFxyXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfcGxhdGFmb3JtYTogSW5mb1BsYXRmb3JtTW9kZWwsIFxyXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfdXRpbGl0aWVzOiBVdGlsaXRpZXMpIHsgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRUb2tlbigpOiBzdHJpbmcge1xyXG4gICAgICAgIHRoaXMudG9rZW4gPSB0aGlzLl91dGlsaXRpZXMuZ2V0TG9jYWxTdG9yYWdlKHRoaXMuX3BsYXRhZm9ybWEuVG9rZW5LZXkpO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGlmICh0aGlzLnRva2VuID09IG51bGwpIHtcclxuICAgICAgICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlQnlVcmwoJycpO1xyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcblxyXG4gICAgICAgIH0gZWxzZSByZXR1cm4gJ0JlYXJlciAnICsgdGhpcy50b2tlbjtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SGVhZGVyRGVmYXVsdCgpOiBIdHRwSGVhZGVycyB7XHJcbiAgICAgICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKTtcclxuICAgICAgICBpZiAodGhpcy5fcGxhdGFmb3JtYS5Db25maWcuaGVhZGVycyAhPSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLl9wbGF0YWZvcm1hLkNvbmZpZy5oZWFkZXJzLmZvckVhY2goaXRlbSA9PiBoZWFkZXJzID0gaGVhZGVycy5zZXQoaXRlbS5rZXksIGl0ZW0udmFsdWUpKTsgICBcclxuICAgICAgICByZXR1cm4gaGVhZGVycztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SGVhZGVyVG9rZW4oKTogSHR0cEhlYWRlcnMge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmdldEhlYWRlckRlZmF1bHQoKS5zZXQoJ0F1dGhvcml6YXRpb24nLCB0aGlzLmdldFRva2VuKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXRBUElVcmwoY29udHJvbGxlcjogYW55KSB7XHJcbiAgICAgICAgbGV0IGFwaSA9ICcnO1xyXG5cclxuXHRcdGlmICh0eXBlb2YoY29udHJvbGxlcikgPT0gJ251bWJlcicpXHJcblx0XHRcdGFwaSA9ICB0aGlzLl9hcGlDb250cm9sbGVyW2NvbnRyb2xsZXJdLnRvU3RyaW5nKCk7XHJcblxyXG4gICAgICAgIGVsc2UgYXBpID0gY29udHJvbGxlciA9PSBudWxsID8gJycgOiBjb250cm9sbGVyLnRvU3RyaW5nKCk7XHJcbiAgICAgICAgXHJcblx0XHRyZXR1cm4gdGhpcy5fcGxhdGFmb3JtYS5Db25maWcud2ViYXBpVXJsICsgKGFwaS5yZXBsYWNlKCdfJywgJy8nKSArICcvJykudG9Mb3dlckNhc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0Tm9Ub2tlbihjb250cm9sbGVyOiBhbnkpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+O1xyXG4gICAgcHVibGljIGdldE5vVG9rZW4oY29udHJvbGxlcjogYW55LCBtZXRob2Q/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+O1xyXG4gICAgcHVibGljIGdldE5vVG9rZW4oY29udHJvbGxlcjogYW55LCBtZXRob2Q/OiBzdHJpbmcsIHBhcmFtPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPjtcclxuICAgIHB1YmxpYyBnZXROb1Rva2VuKGNvbnRyb2xsZXI6IGFueSwgbWV0aG9kPzogc3RyaW5nLCBwYXJhbT86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4ge1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5faHR0cFxyXG4gICAgICAgICAgICAuZ2V0KHRoaXMuZ2V0QVBJVXJsKGNvbnRyb2xsZXIpICsgdGhpcy5nZXRNZXRob2QobWV0aG9kIHx8ICcnKSArIChwYXJhbSA9PSBudWxsID8gJycgOiAoJz8nICsgZW5jb2RlVVJJQ29tcG9uZW50KHRoaXMuX3V0aWxpdGllcy5lbmNyeXB0UXVlcnlTdHJpbmcocGFyYW0ucmVwbGFjZSgvbnVsbC9nLCAnJykucmVwbGFjZSgvdW5kZWZpbmVkL2csICcnKSkpKSksIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJEZWZhdWx0KCksIHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldChjb250cm9sbGVyOiBhbnkpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+O1xyXG4gICAgcHVibGljIGdldChjb250cm9sbGVyOiBhbnksIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgZ2V0KGNvbnRyb2xsZXI6IGFueSwgbWV0aG9kPzogc3RyaW5nLCBwYXJhbT86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgZ2V0KGNvbnRyb2xsZXI6IGFueSwgbWV0aG9kPzogc3RyaW5nLCBwYXJhbT86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4ge1xyXG4gICAgICAgIFxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5nZXQodGhpcy5nZXRBUElVcmwoY29udHJvbGxlcikgKyB0aGlzLmdldE1ldGhvZChtZXRob2QgfHwgJycpICsgKHBhcmFtID09IG51bGwgPyAnJyA6ICgnPycgKyBlbmNvZGVVUklDb21wb25lbnQodGhpcy5fdXRpbGl0aWVzLmVuY3J5cHRRdWVyeVN0cmluZyhwYXJhbS5yZXBsYWNlKC9udWxsL2csICcnKS5yZXBsYWNlKC91bmRlZmluZWQvZywgJycpKSkpKSwgeyBoZWFkZXJzOiB0aGlzLmdldEhlYWRlclRva2VuKCksIHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldEJ5SWQoY29udHJvbGxlcjogYW55LCBpZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5nZXQodGhpcy5nZXRBUElVcmwoY29udHJvbGxlcikgKyBpZC50b1N0cmluZygpLCB7IGhlYWRlcnM6IHRoaXMuZ2V0SGVhZGVyVG9rZW4oKSwgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAociA9PiBuZXcgSW5mb0RhdGFBY2Nlc3NNb2RlbCh0aGlzLl91dGlsaXRpZXMuZGVjcnlwdFRvSnNvbihyKSkpLFxyXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHRoaXMuZXJyb3JIYW5kbGluZyhlKSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcG9zdE5vVG9rZW4oY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55KTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPjtcclxuICAgIHB1YmxpYyBwb3N0Tm9Ub2tlbihjb250cm9sbGVyOiBhbnksIG1vZGVsOiBhbnksIG1ldGhvZD86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgcG9zdE5vVG9rZW4oY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55LCBtZXRob2Q/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+IHtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgICAgICAgLnBvc3QodGhpcy5nZXRBUElVcmwoY29udHJvbGxlcikgKyB0aGlzLmdldE1ldGhvZChtZXRob2QgfHwgJycpLCB0aGlzLl91dGlsaXRpZXMuanNvblRvRW5jcnlwdChtb2RlbCksIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJEZWZhdWx0KCksIHJlc3BvbnNlVHlwZTogJ3RleHQnIH0pXHJcbiAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgbWFwKHIgPT4gbmV3IEluZm9EYXRhQWNjZXNzTW9kZWwodGhpcy5fdXRpbGl0aWVzLmRlY3J5cHRUb0pzb24ocikpKSxcclxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB0aGlzLmVycm9ySGFuZGxpbmcoZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHBvc3QoY29udHJvbGxlcjogYW55LCBtb2RlbDogYW55KTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPjtcclxuICAgIHB1YmxpYyBwb3N0KGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSwgbWV0aG9kPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPjtcclxuICAgIHB1YmxpYyBwb3N0KGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSwgbWV0aG9kPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5wb3N0KHRoaXMuZ2V0QVBJVXJsKGNvbnRyb2xsZXIpICsgdGhpcy5nZXRNZXRob2QobWV0aG9kIHx8ICcnKSwgdGhpcy5fdXRpbGl0aWVzLmpzb25Ub0VuY3J5cHQobW9kZWwpLCB7IGhlYWRlcnM6IHRoaXMuZ2V0SGVhZGVyVG9rZW4oKSwgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAociA9PiBuZXcgSW5mb0RhdGFBY2Nlc3NNb2RlbCh0aGlzLl91dGlsaXRpZXMuZGVjcnlwdFRvSnNvbihyKSkpLFxyXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHRoaXMuZXJyb3JIYW5kbGluZyhlLCBmYWxzZSkpXHJcbiAgICAgICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGRlbGV0ZShjb250cm9sbGVyOiBhbnksIGlkOiBhbnkpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+XHJcbiAgICBwdWJsaWMgZGVsZXRlKGNvbnRyb2xsZXI6IGFueSwgaWQ6IGFueSwgbWV0aG9kPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPjtcclxuICAgIHB1YmxpYyBkZWxldGUoY29udHJvbGxlcjogYW55LCBpZDogYW55LCBtZXRob2Q/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+IHtcclxuXHJcbiAgICAgICAgaWYgKGlkID09IHVuZGVmaW5lZCB8fCBpZCA9PSBudWxsKVxyXG4gICAgICAgICAgICBhbGVydCgnSWQgbsOjbyBpbmZvcm1hZG8nKTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgICAgICAgLmRlbGV0ZSh0aGlzLmdldEFQSVVybChjb250cm9sbGVyKSArIHRoaXMuZ2V0TWV0aG9kKG1ldGhvZCB8fCAnJykgKyBcIj9cIiArIGVuY29kZVVSSUNvbXBvbmVudCh0aGlzLl91dGlsaXRpZXMuZW5jcnlwdFF1ZXJ5U3RyaW5nKFwiaWQ9XCIgKyBpZC50b1N0cmluZygpKSksIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJUb2tlbigpLCByZXNwb25zZVR5cGU6ICd0ZXh0JyB9KVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcChyID0+IG5ldyBJbmZvRGF0YUFjY2Vzc01vZGVsKHRoaXMuX3V0aWxpdGllcy5kZWNyeXB0VG9Kc29uKHIpKSksXHJcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gdGhpcy5lcnJvckhhbmRsaW5nKGUpKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBkZWxldGVCeU1vZGVsKGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD5cclxuICAgIHB1YmxpYyBkZWxldGVCeU1vZGVsKGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSwgbWV0aG9kPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPjtcclxuICAgIHB1YmxpYyBkZWxldGVCeU1vZGVsKGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueSwgbWV0aG9kPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcblxyXG4gICAgICAgIGxldCBodHRwT3B0aW9ucyA9IHtcclxuICAgICAgICAgICAgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJUb2tlbigpLFxyXG4gICAgICAgICAgICBib2R5OiB0aGlzLl91dGlsaXRpZXMuanNvblRvRW5jcnlwdChtb2RlbCksIFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2h0dHBcclxuICAgICAgICAgICAgLmRlbGV0ZSh0aGlzLmdldEFQSVVybChjb250cm9sbGVyKSArIHRoaXMuZ2V0TWV0aG9kKG1ldGhvZCB8fCAnJyksIGh0dHBPcHRpb25zKVxyXG4gICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgIG1hcChyID0+IG5ldyBJbmZvRGF0YUFjY2Vzc01vZGVsKHRoaXMuX3V0aWxpdGllcy5kZWNyeXB0VG9Kc29uKHIpKSksXHJcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlOiBIdHRwRXJyb3JSZXNwb25zZSkgPT4gdGhpcy5lcnJvckhhbmRsaW5nKGUpKVxyXG4gICAgICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyByZXF1ZXN0KGNvbnRyb2xsZXI6IGFueSwgbW9kZWw6IGFueVtdLCBtZXRob2Q/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+XHJcbiAgICBwdWJsaWMgcmVxdWVzdChjb250cm9sbGVyOiBhbnksIG1vZGVsOiBhbnlbXSwgbWV0aG9kPzogc3RyaW5nLCBwYXJhbT86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD47XHJcbiAgICBwdWJsaWMgcmVxdWVzdChjb250cm9sbGVyOiBhbnksIG1vZGVsOiBhbnlbXSwgbWV0aG9kPzogc3RyaW5nLCBwYXJhbT86IHN0cmluZyk6IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4ge1xyXG5cclxuICAgICAgICBsZXQgZm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcclxuICAgICAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgbW9kZWwubGVuZ3RoOyBpbmRleCsrKVxyXG4gICAgICAgICAgICBmb3JtRGF0YS5hcHBlbmQobW9kZWxbaW5kZXhdLm5hbWUsIG1vZGVsW2luZGV4XSk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLl9odHRwXHJcbiAgICAgICAgICAgIC5yZXF1ZXN0KCdQT1NUJywgdGhpcy5nZXRBUElVcmwoY29udHJvbGxlcikgKyB0aGlzLmdldE1ldGhvZChtZXRob2QgfHwgJycpICsgKHBhcmFtID09IG51bGwgPyAnJyA6ICgnPycgKyBlbmNvZGVVUklDb21wb25lbnQodGhpcy5fdXRpbGl0aWVzLmVuY3J5cHRRdWVyeVN0cmluZyhwYXJhbSkpKSksIHsgaGVhZGVyczogdGhpcy5nZXRIZWFkZXJUb2tlbigpLCBib2R5OiBmb3JtRGF0YSwgcmVzcG9uc2VUeXBlOiAndGV4dCcgfSlcclxuICAgICAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBtYXAociA9PiBuZXcgSW5mb0RhdGFBY2Nlc3NNb2RlbCh0aGlzLl91dGlsaXRpZXMuZGVjcnlwdFRvSnNvbihyKSkpLFxyXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZTogSHR0cEVycm9yUmVzcG9uc2UpID0+IHRoaXMuZXJyb3JIYW5kbGluZyhlKSlcclxuICAgICAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGVycm9ySGFuZGxpbmcoZTogSHR0cEVycm9yUmVzcG9uc2UsIHJlZGlyZWN0OiBib29sZWFuID0gdHJ1ZSk6IE9ic2VydmFibGVJbnB1dDxJbmZvRGF0YUFjY2Vzc01vZGVsPiB7XHJcbiAgICAgICAgaWYgKGUuc3RhdHVzID09IDQwMSkgXHJcbiAgICAgICAgICAgIGRvY3VtZW50LmxvY2F0aW9uLmhyZWYgPSAnLyMvbG9naW4nO1xyXG4gICAgICAgIGVsc2UgaWYgKHJlZGlyZWN0KSBcclxuICAgICAgICAgICAgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9ICcvIy81MDAnO1xyXG5cclxuICAgICAgICBsZXQgbWVzc2FnZXM6IHN0cmluZ1tdID0gbmV3IEFycmF5KGUubWVzc2FnZSk7XHJcbiAgICAgICAgcmV0dXJuIG9mKG5ldyBJbmZvRGF0YUFjY2Vzc01vZGVsKG51bGwsIGZhbHNlLCBtZXNzYWdlcykpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0TWV0aG9kKG1ldGhvZDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAobWV0aG9kID09IG51bGwgfHwgbWV0aG9kLnRyaW0oKSA9PSAnJyB8fCBtZXRob2QuaW5kZXhPZignPycpIDwgMCkgcmV0dXJuIG1ldGhvZCA/PyAnJztcclxuICAgICAgICBcclxuICAgICAgICByZXR1cm4gbWV0aG9kLnN1YnN0cmluZygwLCBtZXRob2QuaW5kZXhPZignPycpKSArICc/JyArIGVuY29kZVVSSUNvbXBvbmVudCh0aGlzLl91dGlsaXRpZXMuZW5jcnlwdFF1ZXJ5U3RyaW5nKG1ldGhvZC5zdWJzdHJpbmcobWV0aG9kLmluZGV4T2YoJz8nKSArIDEpLnJlcGxhY2UoL251bGwvZywgJycpLnJlcGxhY2UoL3VuZGVmaW5lZC9nLCAnJykpKTtcclxuICAgIH1cclxufSJdfQ==
@@ -29,6 +29,9 @@ export class Utilities {
29
29
  return bytes;
30
30
  }
31
31
  jsonToEncrypt(object) {
32
+ return this.criptografar(JSON.stringify(object));
33
+ }
34
+ encryptQueryString(object) {
32
35
  return this.criptografar(unescape(JSON.stringify(object)));
33
36
  }
34
37
  decryptToJson(value) {
@@ -188,4 +191,4 @@ export class StaticUtils {
188
191
  return Array.from(cpf).map((c, i) => Number(c) * (fator - i)).reduce((a, b) => a + b, 0);
189
192
  }
190
193
  }
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy91dGlscy91dGlsaXRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEtBQUssUUFBUSxNQUFNLFdBQVcsQ0FBQzs7QUFHdEMsTUFBTSxPQUFPLFNBQVM7SUFEdEI7UUFtSlksUUFBRyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2xELE9BQUUsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQXlCNUQ7SUEzS0csT0FBTztRQUNILE9BQU8sc0NBQXNDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFTLENBQUM7WUFDckUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBRSxDQUFDLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBRSxDQUFDO1lBQ3hFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxZQUFZO1FBQ1IsT0FBTyxzQ0FBc0MsQ0FBQztJQUNsRCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUs7UUFDUixPQUFPLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQywrRUFBK0UsQ0FBQyxLQUFLLElBQUksQ0FBQztJQUN4SCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsTUFBTTtRQUN0QixJQUFJLFlBQVksR0FB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QUM7UUFDckQsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUU7WUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFcEMsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQzthQUNsQixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUM5RSxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQVc7UUFDakMsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3hDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdGLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0ICogYXMgQ3J5cHRvSlMgZnJvbSAnY3J5cHRvLWpzJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFV0aWxpdGllcyB7XHJcbiAgICBnZXRHdWlkKCkgOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiAneHh4eHh4eHgteHh4eC00eHh4LXl4eHgteHh4eHh4eHh4eHh4Jy5yZXBsYWNlKC9beHldL2csIGZ1bmN0aW9uKGMpIHtcclxuICAgICAgICAgICAgY29uc3QgciA9IE1hdGgucmFuZG9tKCkgKiAxNiB8IDAsIHYgPSBjID09PSAneCcgPyByIDogKCByICYgMHgzIHwgMHg4ICk7XHJcbiAgICAgICAgICAgIHJldHVybiB2LnRvU3RyaW5nKDE2KTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgZ2V0R3VpZEVtcHR5KCkgOiBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiAnMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwJztcclxuICAgIH1cclxuXHJcbiAgICBpc0d1aWQodmFsdWUpIDogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIChcIlwiICsgdmFsdWUpLm1hdGNoKCdeWzAtOWEtZkEtRl17OH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17MTJ9JCcpICE9PSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGJhc2U2NFRvQXJyYXlCdWZmZXIoYmFzZTY0KTogYW55IHtcclxuICAgICAgICB2YXIgYmluYXJ5U3RyaW5nID0gd2luZG93LmF0b2IoYmFzZTY0KTtcclxuICAgICAgICB2YXIgYmluYXJ5TGVuID0gYmluYXJ5U3RyaW5nLmxlbmd0aDtcclxuICAgICAgICB2YXIgYnl0ZXMgPSBuZXcgVWludDhBcnJheShiaW5hcnlMZW4pO1xyXG4gICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgYmluYXJ5TGVuOyBpKyspIHtcclxuICAgICAgICAgICB2YXIgYXNjaWkgPSBiaW5hcnlTdHJpbmcuY2hhckNvZGVBdChpKTtcclxuICAgICAgICAgICBieXRlc1tpXSA9IGFzY2lpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYnl0ZXM7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGpzb25Ub0VuY3J5cHQob2JqZWN0KTogYW55IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmlwdG9ncmFmYXIodW5lc2NhcGUoSlNPTi5zdHJpbmdpZnkob2JqZWN0KSkpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBkZWNyeXB0VG9Kc29uKHZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UodGhpcy5kZXNjcmlwdG9ncmFmYXIodmFsdWUpKTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuT3JEb3dubG9hZCh0aXRsZSwgYmxvYikge1xyXG4gICAgICAgIGxldCBmaWxlVVJMID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgaWYgKHRpdGxlLmluZGV4T2YoXCJwZGZcIikgPiAtMSlcclxuICAgICAgICAgICAgd2luZG93Lm9wZW4oZmlsZVVSTCwgdGl0bGUpO1xyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBsZXQgZWxlbWVudEE6IEhUTUxBbmNob3JFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpIGFzIEhUTUxBbmNob3JFbGVtZW50O1xyXG4gICAgICAgICAgICBlbGVtZW50QS5ocmVmID0gZmlsZVVSTDtcclxuICAgICAgICAgICAgZWxlbWVudEEuZG93bmxvYWQgPSB0aXRsZTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlbGVtZW50QSk7XHJcbiAgICAgICAgICAgIGVsZW1lbnRBLmNsaWNrKCk7ICAgICAgICBcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbGVtZW50QSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZXJBY2VudG9zKHZhbDogc3RyaW5nKSA6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKHZhbCA9PSBudWxsKVxyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgdmFyIG5vcm1hbGl6ZUZ1bmN0aW9uID0gU3RyaW5nLnByb3RvdHlwZS5ub3JtYWxpemUgPyAoc3RyKSA9PiBzdHIubm9ybWFsaXplKCdORkQnKSA6IChzdHIpID0+IHN0cjtcclxuICAgICAgICByZXR1cm4gbm9ybWFsaXplRnVuY3Rpb24odmFsKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCBcIlwiKVxyXG4gICAgfVxyXG5cclxuICAgIGdldEZvcm1hdG9zKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiBcIkVYQ0VMXCIsIE5vbWU6IFwiRXhjZWxcIiwgTWltZVR5cGU6IFwiYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsXCIsIEV4dGVuc2FvOiBcInhsc1wiIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogXCJQREZcIiwgTm9tZTogXCJQREZcIiwgTWltZVR5cGU6IFwiYXBwbGljYXRpb24vcGRmXCIsIEV4dGVuc2FvOiBcInBkZlwiIH0gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRGb3JtYXRvc0V4Y2VsKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiAnUFAnLCBOb21lOiAnRXhjZWwgUG9ydHVndcOqcyBjb20gU2VwYXJhZG9yIERlY2ltYWwgWy5dJyB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6ICdQVicsIE5vbWU6ICdFeGNlbCBQb3J0dWd1w6pzIGNvbSBTZXBhcmFkb3IgRGVjaW1hbCBbLF0nIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogJ0lQJywgTm9tZTogJ0V4Y2VsIEluZ2zDqnMgY29tIFNlcGFyYWRvciBEZWNpbWFsIFsuXScgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiAnSVYnLCBOb21lOiAnRXhjZWwgSW5nbMOqcyBjb20gU2VwYXJhZG9yIERlY2ltYWwgWyxdJyB9IF07XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3RhdHVzKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiBcIkFcIiwgTm9tZTogXCJBdGl2b1wiIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogXCJQXCIsIE5vbWU6IFwiUGVuZGVudGVcIiB9IF07XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3RhdHVzQ29tcGxldG8oKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHsgSWQ6IFwiQ1wiLCBOb21lOiBcIkNhZGFzdHJhZG9cIiwgU2VsZWNpb25hZG86IHRydWUgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIkZcIiwgTm9tZTogXCJGZWl0b1wiLCBTZWxlY2lvbmFkbzogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIk9cIiwgTm9tZTogXCJDb25mZXJpZG9cIiwgU2VsZWNpb25hZG86IHRydWUgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIlJcIiwgTm9tZTogXCJSZWplaXRhZG9cIiwgU2VsZWNpb25hZG86IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogXCJJXCIsIE5vbWU6IFwiSW5hdGl2b1wiLCBTZWxlY2lvbmFkbzogZmFsc2UgfSBdO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFN0YXR1c1Byb2Nlc3NhbWVudG8oKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHsgSWQ6IFwiQVwiLCBOb21lOiBcIkFndWFyZGFuZG9Qcm9jZXNzYW1lbnRvXCIgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIkVcIiwgTm9tZTogXCJFbVByb2Nlc3NhbWVudG9cIiB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6IFwiUFwiLCBOb21lOiBcIlByb2Nlc3NhZG9cIiB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6IFwiSVwiLCBOb21lOiBcIkluYXRpdm9cIiB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6IFwiWlwiLCBOb21lOiBcIkVycm9cIiB9IF07XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Rm9ybWF0b0lkaW9tYXMoKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHsgSWQ6IFwiZW5cIiwgTm9tZTogXCJFbmdsaXNoXCIgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcInB0LUJSXCIsIE5vbWU6IFwiUG9ydHVndcOqc1wiIH0gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRHZW5lcm9zKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiAnTScsIE5vbWU6ICdNYXNjdWxpbm8nIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogJ0YnLCBOb21lOiAnRmVtaW5pbm8nIH0gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRUaXBvc0V2aWRlbmNpYSgpOiBhbnlbXSB7XHJcbiAgICAgICAgcmV0dXJuIFsgeyBJZDogMSwgTm9tZTogJ1RlbGVmb25lJ30sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogMiwgTm9tZTogJ0VtYWlsJ30sXHJcbiAgICAgICAgICAgICAgICAge0lkOiAzLCBOb21lOiAnRG9jdW1lbnRvJ30gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRPcmRlbnMoKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHtJZDogXCJub21lLWFzY1wiLCBOb21lOiBcIk5vbWVDcmVzY2VudGVcIn0sXHJcbiAgICAgICAgICAgICAgICAge0lkOiBcIm5vbWUtZGVzY1wiLCBOb21lOiBcIk5vbWVEZWNyZXNjZW50ZVwifSxcclxuICAgICAgICAgICAgICAgICB7SWQ6IFwidmFsb3ItYXNjXCIsIE5vbWU6IFwiVmFsb3JDcmVzY2VudGVcIn0sXHJcbiAgICAgICAgICAgICAgICAge0lkOiBcInZhbG9yLWRlc2NcIiwgTm9tZTogXCJWYWxvckRlY3Jlc2NlbnRlXCJ9IF07XHJcbiAgICB9XHJcblxyXG4gICAgdmFsaWRhckVtYWlsKGZvcm0sIHZhbHVlLCBjb250cm9sKSB7XHJcbiAgICAgICAgaWYgKCF2YWx1ZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGxldCBwYXR0ZXJuID0gL14oW2EtekEtWjAtOV9cXC1cXC5dKylAKFthLXpBLVowLTlfXFwtXFwuXSspXFwuKFthLXpBLVpdezIsNX0pJC87XHJcbiAgICAgICAgbGV0IGVtYWlsczogc3RyaW5nW10gPSB2YWx1ZS5zcGxpdCgnOycpO1xyXG4gICAgICAgIGxldCBpbnZhbGlkbyA9IGVtYWlscy5zb21lKGVtYWlsID0+IGVtYWlsICYmICFwYXR0ZXJuLnRlc3QoZW1haWwudHJpbSgpKSk7XHJcblxyXG4gICAgICAgIGlmIChpbnZhbGlkbylcclxuICAgICAgICAgICAgZm9ybS5mb3JtLmNvbnRyb2xzW2NvbnRyb2xdLnNldEVycm9ycyggeyAnaW52YWxpZCc6IHRydWUgfSApO1xyXG4gICAgfVxyXG5cclxuICAgIHNldExvY2FsU3RvcmFnZShrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdGhpcy5jcmlwdG9ncmFmYXIodmFsdWUpKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRMb2NhbFN0b3JhZ2Uoa2V5OiBzdHJpbmcpOiBhbnkge1xyXG4gICAgICAgIHZhciBkYXRhID0gdGhpcy5kZXNjcmlwdG9ncmFmYXIobG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KSk7XHJcbiAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCB8fCBkYXRhID09ICcnKSByZXR1cm4gbnVsbDtcclxuICAgICAgICByZXR1cm4gZGF0YTtcclxuICAgIH1cclxuXHJcbiAgICBpc0lFKCkge1xyXG4gICAgICAgIHZhciB1c2VyQWdlbnQgPSBuYXZpZ2F0b3IudXNlckFnZW50O1xyXG4gICAgICAgIHJldHVybiB1c2VyQWdlbnQuaW5kZXhPZihcIk1TSUUgXCIpID4gLTEgfHwgdXNlckFnZW50LmluZGV4T2YoXCJUcmlkZW50L1wiKSA+IC0xO1xyXG4gICAgfVxyXG5cclxuICAgIHJldG9ybmFUZXh0byh0ZXh0bykge1xyXG4gICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpXHJcbiAgICAgICAgZGl2LmlubmVySFRNTCA9IHRleHRvO1xyXG4gICAgICAgIHJldHVybiBkaXYuaW5uZXJUZXh0IHx8IGRpdi50ZXh0Q29udGVudDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgcHJpdmF0ZSBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShcIkdLeEx0UWcyYXRnamtyZXJcIik7XHJcbiAgICBwcml2YXRlIGl2ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoXCJlMFdnNmw1R05kZzI5ZHZjXCIpO1xyXG5cclxuICAgIGNyaXB0b2dyYWZhcih0ZXh0bykge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIHJldHVybiBDcnlwdG9KUy5BRVMuZW5jcnlwdCh0ZXh0bywgdGhpcy5rZXksIHtcclxuICAgICAgICAgICAgICAgIGl2OiB0aGlzLml2LFxyXG4gICAgICAgICAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsXHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczdcclxuICAgICAgICAgICAgfSkudG9TdHJpbmcoKTtcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgZGVzY3JpcHRvZ3JhZmFyKHRleHRvKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmV0dXJuIENyeXB0b0pTLkFFUy5kZWNyeXB0KHRleHRvLCB0aGlzLmtleSwge1xyXG4gICAgICAgICAgICAgICAgaXY6IHRoaXMuaXYsXHJcbiAgICAgICAgICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQyxcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzN1xyXG4gICAgICAgICAgICB9KS50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICB9ICBcclxufVxyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN0YXRpY1V0aWxzIHtcclxuICAgIFxyXG4gICAgc3RhdGljIHZhbGlkYXJDbnBqKGNucGo6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IGNucGpPcmlnaW5hbCA9IChjbnBqIHx8ICcnKTtcclxuICAgICAgICBjbnBqID0gY25wak9yaWdpbmFsLnRvVXBwZXJDYXNlKCkuc2xpY2UoMCwgMTIpO1xyXG4gICAgICAgIGNucGogPSBjbnBqICsgdGhpcy5nZXREaWdpdG8odGhpcy5nZXRTb21hQ25waihjbnBqKSk7XHJcbiAgICAgICAgY25waiA9IGNucGogKyB0aGlzLmdldERpZ2l0byh0aGlzLmdldFNvbWFDbnBqKGNucGopKTtcclxuICAgIFxyXG4gICAgICAgIHJldHVybiBjbnBqT3JpZ2luYWwgPT0gY25wajtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgdmFsaWRhckNwZihjcGY6IHN0cmluZykge1xyXG4gICAgICAgIGNvbnN0IGNwZk9yaWdpbmFsID0gKGNwZiB8fCAnJyk7XHJcbiAgICAgICAgY3BmID0gY3BmT3JpZ2luYWwudG9VcHBlckNhc2UoKS5zbGljZSgwLCA5KTtcclxuICAgICAgICBjcGYgPSBjcGYgKyB0aGlzLmdldERpZ2l0byh0aGlzLmdldFNvbWFDcGYoY3BmKSk7XHJcbiAgICAgICAgY3BmID0gY3BmICsgdGhpcy5nZXREaWdpdG8odGhpcy5nZXRTb21hQ3BmKGNwZikpO1xyXG5cclxuICAgICAgICByZXR1cm4gY3BmT3JpZ2luYWwgPT0gY3BmO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBwcml2YXRlIHN0YXRpYyBnZXREaWdpdG8oc29tYTogbnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIChzb21hICUgMTEpIDw9IDEgPyAwIDogKDExIC0gKHNvbWEgJSAxMSkpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBwcml2YXRlIHN0YXRpYyBnZXRTb21hQ25waihjbnBqOiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBwZXNvID0gWzYsIDUsIDQsIDMsIDIsIDksIDgsIDcsIDYsIDUsIDQsIDMsIDJdO1xyXG4gICAgICAgIGlmIChjbnBqLmxlbmd0aCA9PSAxMikgcGVzby5zaGlmdCgpO1xyXG4gICAgXHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oY25wailcclxuICAgICAgICAgICAgLm1hcCgoYywgaSkgPT4gKGlzTmFOKE51bWJlcihjKSkgPyBjLmNoYXJDb2RlQXQoMCkgLSA0OCA6IE51bWJlcihjKSkgKiBwZXNvW2ldKVxyXG4gICAgICAgICAgICAucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0U29tYUNwZihjcGY6IHN0cmluZykge1xyXG4gICAgICAgIGNvbnN0IGZhdG9yID0gY3BmLmxlbmd0aCA9PSA5ID8gMTAgOiAxMTtcclxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShjcGYpLm1hcCgoYywgaSkgPT4gTnVtYmVyKGMpICogKGZhdG9yIC0gaSkpLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIDApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbGl0aWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy91dGlscy91dGlsaXRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEtBQUssUUFBUSxNQUFNLFdBQVcsQ0FBQzs7QUFHdEMsTUFBTSxPQUFPLFNBQVM7SUFEdEI7UUF1SlksUUFBRyxHQUFHLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2xELE9BQUUsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztLQXlCNUQ7SUEvS0csT0FBTztRQUNILE9BQU8sc0NBQXNDLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxVQUFTLENBQUM7WUFDckUsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBRSxDQUFDLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBRSxDQUFDO1lBQ3hFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxZQUFZO1FBQ1IsT0FBTyxzQ0FBc0MsQ0FBQztJQUNsRCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUs7UUFDUixPQUFPLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQywrRUFBK0UsQ0FBQyxLQUFLLElBQUksQ0FBQztJQUN4SCxDQUFDO0lBRUQsbUJBQW1CLENBQUMsTUFBTTtRQUN0QixJQUFJLFlBQVksR0FB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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgKiBhcyBDcnlwdG9KUyBmcm9tICdjcnlwdG8tanMnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgVXRpbGl0aWVzIHtcclxuICAgIGdldEd1aWQoKSA6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuICd4eHh4eHh4eC14eHh4LTR4eHgteXh4eC14eHh4eHh4eHh4eHgnLnJlcGxhY2UoL1t4eV0vZywgZnVuY3Rpb24oYykge1xyXG4gICAgICAgICAgICBjb25zdCByID0gTWF0aC5yYW5kb20oKSAqIDE2IHwgMCwgdiA9IGMgPT09ICd4JyA/IHIgOiAoIHIgJiAweDMgfCAweDggKTtcclxuICAgICAgICAgICAgcmV0dXJuIHYudG9TdHJpbmcoMTYpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBnZXRHdWlkRW1wdHkoKSA6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuICcwMDAwMDAwMC0wMDAwLTAwMDAtMDAwMC0wMDAwMDAwMDAwMDAnO1xyXG4gICAgfVxyXG5cclxuICAgIGlzR3VpZCh2YWx1ZSkgOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gKFwiXCIgKyB2YWx1ZSkubWF0Y2goJ15bMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXs0fS1bMC05YS1mQS1GXXsxMn0kJykgIT09IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgYmFzZTY0VG9BcnJheUJ1ZmZlcihiYXNlNjQpOiBhbnkge1xyXG4gICAgICAgIHZhciBiaW5hcnlTdHJpbmcgPSB3aW5kb3cuYXRvYihiYXNlNjQpO1xyXG4gICAgICAgIHZhciBiaW5hcnlMZW4gPSBiaW5hcnlTdHJpbmcubGVuZ3RoO1xyXG4gICAgICAgIHZhciBieXRlcyA9IG5ldyBVaW50OEFycmF5KGJpbmFyeUxlbik7XHJcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBiaW5hcnlMZW47IGkrKykge1xyXG4gICAgICAgICAgIHZhciBhc2NpaSA9IGJpbmFyeVN0cmluZy5jaGFyQ29kZUF0KGkpO1xyXG4gICAgICAgICAgIGJ5dGVzW2ldID0gYXNjaWk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBieXRlcztcclxuICAgIH1cclxuICAgIFxyXG4gICAganNvblRvRW5jcnlwdChvYmplY3QpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmNyaXB0b2dyYWZhcihKU09OLnN0cmluZ2lmeShvYmplY3QpKTtcclxuICAgIH1cclxuXHJcbiAgICBlbmNyeXB0UXVlcnlTdHJpbmcob2JqZWN0KTogYW55IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5jcmlwdG9ncmFmYXIodW5lc2NhcGUoSlNPTi5zdHJpbmdpZnkob2JqZWN0KSkpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBkZWNyeXB0VG9Kc29uKHZhbHVlKSB7XHJcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UodGhpcy5kZXNjcmlwdG9ncmFmYXIodmFsdWUpKTtcclxuICAgIH1cclxuXHJcbiAgICBvcGVuT3JEb3dubG9hZCh0aXRsZSwgYmxvYikge1xyXG4gICAgICAgIGxldCBmaWxlVVJMID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgaWYgKHRpdGxlLmluZGV4T2YoXCJwZGZcIikgPiAtMSlcclxuICAgICAgICAgICAgd2luZG93Lm9wZW4oZmlsZVVSTCwgdGl0bGUpO1xyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBsZXQgZWxlbWVudEE6IEhUTUxBbmNob3JFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpIGFzIEhUTUxBbmNob3JFbGVtZW50O1xyXG4gICAgICAgICAgICBlbGVtZW50QS5ocmVmID0gZmlsZVVSTDtcclxuICAgICAgICAgICAgZWxlbWVudEEuZG93bmxvYWQgPSB0aXRsZTtcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlbGVtZW50QSk7XHJcbiAgICAgICAgICAgIGVsZW1lbnRBLmNsaWNrKCk7ICAgICAgICBcclxuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChlbGVtZW50QSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZXJBY2VudG9zKHZhbDogc3RyaW5nKSA6IHN0cmluZyB7XHJcbiAgICAgICAgaWYgKHZhbCA9PSBudWxsKVxyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgdmFyIG5vcm1hbGl6ZUZ1bmN0aW9uID0gU3RyaW5nLnByb3RvdHlwZS5ub3JtYWxpemUgPyAoc3RyKSA9PiBzdHIubm9ybWFsaXplKCdORkQnKSA6IChzdHIpID0+IHN0cjtcclxuICAgICAgICByZXR1cm4gbm9ybWFsaXplRnVuY3Rpb24odmFsKS5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCBcIlwiKVxyXG4gICAgfVxyXG5cclxuICAgIGdldEZvcm1hdG9zKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiBcIkVYQ0VMXCIsIE5vbWU6IFwiRXhjZWxcIiwgTWltZVR5cGU6IFwiYXBwbGljYXRpb24vdm5kLm1zLWV4Y2VsXCIsIEV4dGVuc2FvOiBcInhsc1wiIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogXCJQREZcIiwgTm9tZTogXCJQREZcIiwgTWltZVR5cGU6IFwiYXBwbGljYXRpb24vcGRmXCIsIEV4dGVuc2FvOiBcInBkZlwiIH0gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRGb3JtYXRvc0V4Y2VsKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiAnUFAnLCBOb21lOiAnRXhjZWwgUG9ydHVndcOqcyBjb20gU2VwYXJhZG9yIERlY2ltYWwgWy5dJyB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6ICdQVicsIE5vbWU6ICdFeGNlbCBQb3J0dWd1w6pzIGNvbSBTZXBhcmFkb3IgRGVjaW1hbCBbLF0nIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogJ0lQJywgTm9tZTogJ0V4Y2VsIEluZ2zDqnMgY29tIFNlcGFyYWRvciBEZWNpbWFsIFsuXScgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiAnSVYnLCBOb21lOiAnRXhjZWwgSW5nbMOqcyBjb20gU2VwYXJhZG9yIERlY2ltYWwgWyxdJyB9IF07XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3RhdHVzKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiBcIkFcIiwgTm9tZTogXCJBdGl2b1wiIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogXCJQXCIsIE5vbWU6IFwiUGVuZGVudGVcIiB9IF07XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U3RhdHVzQ29tcGxldG8oKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHsgSWQ6IFwiQ1wiLCBOb21lOiBcIkNhZGFzdHJhZG9cIiwgU2VsZWNpb25hZG86IHRydWUgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIkZcIiwgTm9tZTogXCJGZWl0b1wiLCBTZWxlY2lvbmFkbzogZmFsc2UgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIk9cIiwgTm9tZTogXCJDb25mZXJpZG9cIiwgU2VsZWNpb25hZG86IHRydWUgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIlJcIiwgTm9tZTogXCJSZWplaXRhZG9cIiwgU2VsZWNpb25hZG86IGZhbHNlIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogXCJJXCIsIE5vbWU6IFwiSW5hdGl2b1wiLCBTZWxlY2lvbmFkbzogZmFsc2UgfSBdO1xyXG4gICAgfVxyXG5cclxuICAgIGdldFN0YXR1c1Byb2Nlc3NhbWVudG8oKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHsgSWQ6IFwiQVwiLCBOb21lOiBcIkFndWFyZGFuZG9Qcm9jZXNzYW1lbnRvXCIgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcIkVcIiwgTm9tZTogXCJFbVByb2Nlc3NhbWVudG9cIiB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6IFwiUFwiLCBOb21lOiBcIlByb2Nlc3NhZG9cIiB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6IFwiSVwiLCBOb21lOiBcIkluYXRpdm9cIiB9LFxyXG4gICAgICAgICAgICAgICAgIHsgSWQ6IFwiWlwiLCBOb21lOiBcIkVycm9cIiB9IF07XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Rm9ybWF0b0lkaW9tYXMoKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHsgSWQ6IFwiZW5cIiwgTm9tZTogXCJFbmdsaXNoXCIgfSxcclxuICAgICAgICAgICAgICAgICB7IElkOiBcInB0LUJSXCIsIE5vbWU6IFwiUG9ydHVndcOqc1wiIH0gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRHZW5lcm9zKCk6IGFueVtdIHtcclxuICAgICAgICByZXR1cm4gWyB7IElkOiAnTScsIE5vbWU6ICdNYXNjdWxpbm8nIH0sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogJ0YnLCBOb21lOiAnRmVtaW5pbm8nIH0gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRUaXBvc0V2aWRlbmNpYSgpOiBhbnlbXSB7XHJcbiAgICAgICAgcmV0dXJuIFsgeyBJZDogMSwgTm9tZTogJ1RlbGVmb25lJ30sXHJcbiAgICAgICAgICAgICAgICAgeyBJZDogMiwgTm9tZTogJ0VtYWlsJ30sXHJcbiAgICAgICAgICAgICAgICAge0lkOiAzLCBOb21lOiAnRG9jdW1lbnRvJ30gXTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRPcmRlbnMoKTogYW55W10ge1xyXG4gICAgICAgIHJldHVybiBbIHtJZDogXCJub21lLWFzY1wiLCBOb21lOiBcIk5vbWVDcmVzY2VudGVcIn0sXHJcbiAgICAgICAgICAgICAgICAge0lkOiBcIm5vbWUtZGVzY1wiLCBOb21lOiBcIk5vbWVEZWNyZXNjZW50ZVwifSxcclxuICAgICAgICAgICAgICAgICB7SWQ6IFwidmFsb3ItYXNjXCIsIE5vbWU6IFwiVmFsb3JDcmVzY2VudGVcIn0sXHJcbiAgICAgICAgICAgICAgICAge0lkOiBcInZhbG9yLWRlc2NcIiwgTm9tZTogXCJWYWxvckRlY3Jlc2NlbnRlXCJ9IF07XHJcbiAgICB9XHJcblxyXG4gICAgdmFsaWRhckVtYWlsKGZvcm0sIHZhbHVlLCBjb250cm9sKSB7XHJcbiAgICAgICAgaWYgKCF2YWx1ZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGxldCBwYXR0ZXJuID0gL14oW2EtekEtWjAtOV9cXC1cXC5dKylAKFthLXpBLVowLTlfXFwtXFwuXSspXFwuKFthLXpBLVpdezIsNX0pJC87XHJcbiAgICAgICAgbGV0IGVtYWlsczogc3RyaW5nW10gPSB2YWx1ZS5zcGxpdCgnOycpO1xyXG4gICAgICAgIGxldCBpbnZhbGlkbyA9IGVtYWlscy5zb21lKGVtYWlsID0+IGVtYWlsICYmICFwYXR0ZXJuLnRlc3QoZW1haWwudHJpbSgpKSk7XHJcblxyXG4gICAgICAgIGlmIChpbnZhbGlkbylcclxuICAgICAgICAgICAgZm9ybS5mb3JtLmNvbnRyb2xzW2NvbnRyb2xdLnNldEVycm9ycyggeyAnaW52YWxpZCc6IHRydWUgfSApO1xyXG4gICAgfVxyXG5cclxuICAgIHNldExvY2FsU3RvcmFnZShrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdGhpcy5jcmlwdG9ncmFmYXIodmFsdWUpKTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRMb2NhbFN0b3JhZ2Uoa2V5OiBzdHJpbmcpOiBhbnkge1xyXG4gICAgICAgIHZhciBkYXRhID0gdGhpcy5kZXNjcmlwdG9ncmFmYXIobG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KSk7XHJcbiAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCB8fCBkYXRhID09ICcnKSByZXR1cm4gbnVsbDtcclxuICAgICAgICByZXR1cm4gZGF0YTtcclxuICAgIH1cclxuXHJcbiAgICBpc0lFKCkge1xyXG4gICAgICAgIHZhciB1c2VyQWdlbnQgPSBuYXZpZ2F0b3IudXNlckFnZW50O1xyXG4gICAgICAgIHJldHVybiB1c2VyQWdlbnQuaW5kZXhPZihcIk1TSUUgXCIpID4gLTEgfHwgdXNlckFnZW50LmluZGV4T2YoXCJUcmlkZW50L1wiKSA+IC0xO1xyXG4gICAgfVxyXG5cclxuICAgIHJldG9ybmFUZXh0byh0ZXh0bykge1xyXG4gICAgICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpXHJcbiAgICAgICAgZGl2LmlubmVySFRNTCA9IHRleHRvO1xyXG4gICAgICAgIHJldHVybiBkaXYuaW5uZXJUZXh0IHx8IGRpdi50ZXh0Q29udGVudDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgcHJpdmF0ZSBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShcIkdLeEx0UWcyYXRnamtyZXJcIik7XHJcbiAgICBwcml2YXRlIGl2ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoXCJlMFdnNmw1R05kZzI5ZHZjXCIpO1xyXG5cclxuICAgIGNyaXB0b2dyYWZhcih0ZXh0bykge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIHJldHVybiBDcnlwdG9KUy5BRVMuZW5jcnlwdCh0ZXh0bywgdGhpcy5rZXksIHtcclxuICAgICAgICAgICAgICAgIGl2OiB0aGlzLml2LFxyXG4gICAgICAgICAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsXHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczdcclxuICAgICAgICAgICAgfSkudG9TdHJpbmcoKTtcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIFxyXG4gICAgZGVzY3JpcHRvZ3JhZmFyKHRleHRvKSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmV0dXJuIENyeXB0b0pTLkFFUy5kZWNyeXB0KHRleHRvLCB0aGlzLmtleSwge1xyXG4gICAgICAgICAgICAgICAgaXY6IHRoaXMuaXYsXHJcbiAgICAgICAgICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQyxcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzN1xyXG4gICAgICAgICAgICB9KS50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICB9ICBcclxufVxyXG5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFN0YXRpY1V0aWxzIHtcclxuICAgIFxyXG4gICAgc3RhdGljIHZhbGlkYXJDbnBqKGNucGo6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IGNucGpPcmlnaW5hbCA9IChjbnBqIHx8ICcnKTtcclxuICAgICAgICBjbnBqID0gY25wak9yaWdpbmFsLnRvVXBwZXJDYXNlKCkuc2xpY2UoMCwgMTIpO1xyXG4gICAgICAgIGNucGogPSBjbnBqICsgdGhpcy5nZXREaWdpdG8odGhpcy5nZXRTb21hQ25waihjbnBqKSk7XHJcbiAgICAgICAgY25waiA9IGNucGogKyB0aGlzLmdldERpZ2l0byh0aGlzLmdldFNvbWFDbnBqKGNucGopKTtcclxuICAgIFxyXG4gICAgICAgIHJldHVybiBjbnBqT3JpZ2luYWwgPT0gY25wajtcclxuICAgIH1cclxuXHJcbiAgICBzdGF0aWMgdmFsaWRhckNwZihjcGY6IHN0cmluZykge1xyXG4gICAgICAgIGNvbnN0IGNwZk9yaWdpbmFsID0gKGNwZiB8fCAnJyk7XHJcbiAgICAgICAgY3BmID0gY3BmT3JpZ2luYWwudG9VcHBlckNhc2UoKS5zbGljZSgwLCA5KTtcclxuICAgICAgICBjcGYgPSBjcGYgKyB0aGlzLmdldERpZ2l0byh0aGlzLmdldFNvbWFDcGYoY3BmKSk7XHJcbiAgICAgICAgY3BmID0gY3BmICsgdGhpcy5nZXREaWdpdG8odGhpcy5nZXRTb21hQ3BmKGNwZikpO1xyXG5cclxuICAgICAgICByZXR1cm4gY3BmT3JpZ2luYWwgPT0gY3BmO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBwcml2YXRlIHN0YXRpYyBnZXREaWdpdG8oc29tYTogbnVtYmVyKSB7XHJcbiAgICAgICAgcmV0dXJuIChzb21hICUgMTEpIDw9IDEgPyAwIDogKDExIC0gKHNvbWEgJSAxMSkpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBwcml2YXRlIHN0YXRpYyBnZXRTb21hQ25waihjbnBqOiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBwZXNvID0gWzYsIDUsIDQsIDMsIDIsIDksIDgsIDcsIDYsIDUsIDQsIDMsIDJdO1xyXG4gICAgICAgIGlmIChjbnBqLmxlbmd0aCA9PSAxMikgcGVzby5zaGlmdCgpO1xyXG4gICAgXHJcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oY25wailcclxuICAgICAgICAgICAgLm1hcCgoYywgaSkgPT4gKGlzTmFOKE51bWJlcihjKSkgPyBjLmNoYXJDb2RlQXQoMCkgLSA0OCA6IE51bWJlcihjKSkgKiBwZXNvW2ldKVxyXG4gICAgICAgICAgICAucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0U29tYUNwZihjcGY6IHN0cmluZykge1xyXG4gICAgICAgIGNvbnN0IGZhdG9yID0gY3BmLmxlbmd0aCA9PSA5ID8gMTAgOiAxMTtcclxuICAgICAgICByZXR1cm4gQXJyYXkuZnJvbShjcGYpLm1hcCgoYywgaSkgPT4gTnVtYmVyKGMpICogKGZhdG9yIC0gaSkpLnJlZHVjZSgoYSwgYikgPT4gYSArIGIsIDApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==