@churchillliving/se-ui-toolkit 6.53.580 → 6.53.582

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,20 +1,23 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { moveItemInArray } from '@angular/cdk/drag-drop';
3
3
  import * as utilities from '../../../services/utilities.service';
4
+ import { ESystemConfig } from '../../../models/response.model';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "primeng/dynamicdialog";
6
7
  import * as i2 from "../../../services/grid.service";
7
8
  import * as i3 from "primeng/api";
8
- import * as i4 from "@angular/common";
9
- import * as i5 from "primeng/confirmdialog";
10
- import * as i6 from "@angular/cdk/drag-drop";
11
- import * as i7 from "../form-util/form-util.component";
12
- import * as i8 from "../file/file.component";
9
+ import * as i4 from "../../../services/system-config.service";
10
+ import * as i5 from "@angular/common";
11
+ import * as i6 from "primeng/confirmdialog";
12
+ import * as i7 from "@angular/cdk/drag-drop";
13
+ import * as i8 from "../form-util/form-util.component";
14
+ import * as i9 from "../file/file.component";
13
15
  export class CardComponent {
14
- constructor(dialogService, gridService, confirmationService) {
16
+ constructor(dialogService, gridService, confirmationService, systemConfigService) {
15
17
  this.dialogService = dialogService;
16
18
  this.gridService = gridService;
17
19
  this.confirmationService = confirmationService;
20
+ this.systemConfigService = systemConfigService;
18
21
  this.selectedCard = new EventEmitter();
19
22
  // @Output() onDeleteCard: EventEmitter<any> = new EventEmitter();
20
23
  this.data = [];
@@ -25,6 +28,10 @@ export class CardComponent {
25
28
  ngOnInit() { }
26
29
  ngOnChanges() {
27
30
  if (this.card) {
31
+ const fileContainerName = this.systemConfigService.getSystemConfigValue(ESystemConfig.FURNITUREITEMPICTUREPATH);
32
+ console.log('fileContainerName: ', fileContainerName);
33
+ const fileRootPath = this.systemConfigService.getSystemConfigValue(ESystemConfig.FILEROOTPATH);
34
+ console.log('fileRootPath: ', fileRootPath);
28
35
  let { data, formSections, cardInfo } = this.card;
29
36
  if (cardInfo && Object.keys(cardInfo).length) {
30
37
  this.displayCardInfo = cardInfo;
@@ -32,7 +39,7 @@ export class CardComponent {
32
39
  const newArr = [];
33
40
  data?.forEach((record) => {
34
41
  if (!Object.keys(record)?.includes('azurecontainerid')) {
35
- newArr.push({ ...record, blobfileurl: record[cardInfo.url?.toLowerCase()], filecaption: record[cardInfo.caption?.toLowerCase()], fileextension: record[cardInfo.extension?.toLowerCase()] });
42
+ newArr.push({ ...record, blobfileurl: (fileRootPath + '/' + fileContainerName + '/' + record[cardInfo.url?.toLowerCase()])?.toLowerCase(), filecaption: record[cardInfo.caption?.toLowerCase()], fileextension: record[cardInfo.extension?.toLowerCase()] });
36
43
  }
37
44
  else {
38
45
  newArr.push(record);
@@ -43,6 +50,9 @@ export class CardComponent {
43
50
  else {
44
51
  this.data = this.gridService.setDataFields(data);
45
52
  }
53
+ setTimeout(() => {
54
+ console.log('this.data: ', this.data);
55
+ }, 200);
46
56
  this.dynamicForm = { formSections };
47
57
  // set the default value of allowDelete, allowEditableCaption and allowDownload
48
58
  this.setCardPropValue('allowDownload');
@@ -134,13 +144,13 @@ export class CardComponent {
134
144
  data['index'] = index;
135
145
  this.selectedCard.emit(data);
136
146
  }
137
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: CardComponent, deps: [{ token: i1.DialogService }, { token: i2.GridService }, { token: i3.ConfirmationService }], target: i0.ɵɵFactoryTarget.Component }); }
138
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: CardComponent, selector: "se-card", inputs: { data: "data", width: "width", height: "height", card: "card", setCardData: "setCardData" }, outputs: { selectedCard: "selectedCard" }, usesOnChanges: true, ngImport: i0, template: "<!-- Display Files Card -->\n<p-confirmDialog key=\"handlecolumnActions\"></p-confirmDialog>\n<div\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n class=\"example-list\"\n (cdkDropListDropped)=\"dragAndDrop($event)\"\n>\n <div \n class=\"flex cards-wrapper\" \n [ngStyle]=\"{ width: width, height: height }\" \n *ngIf=\"data\" \n [class]=\"card && card.class ? card.class : ''\">\n <div\n cdkDrag\n class=\"example-box flex flex-column cards-wrapper\"\n [class]=\"\n card && card.width && card.width.length > 0\n ? 'col-' + card.width\n : 'col-3'\n \"\n *ngFor=\"let file of data; let i = index\"\n (click)=\"onClickEvent(file,i)\"\n [ngClass]=\"file.selectedCard ? file.selectedCard : ''\"\n >\n <!-- start cards image functionality -->\n <se-file\n [url]=\"file.blobfileurl\"\n [type]=\"file.fileextension\"\n [caption]=\"file?.filecaption\"\n [height]=\"card?.height\"\n [allowDownloadFile]=\"card?.allowDownload\"\n [allowEditableCaption]=\"card?.allowEditableCaption\"\n [allowDeleteFile]=\"card?.allowDelete\"\n [name]=\"file.blobfileurl\"\n [id]=\"file.fileextension\"\n (onDeleteEvent)=\"deleteImage($event)\"\n (onSaveEvent)=\"saveCaption($event)\"\n ></se-file>\n <!-- End cards image functionality -->\n\n <!-- start form functionality in card -->\n <se-form-util\n class=\"form-content\"\n [form]=\"file.dynamicform\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n <!-- End form functionality in card -->\n </div>\n </div>\n\n <!-- in case of form and data is empty or null -->\n <div *ngIf=\"dynamicForm && (!data || data.length == 0)\">\n <se-form-util\n *ngIf=\"dynamicForm\"\n [form]=\"dynamicForm\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n </div>\n</div>\n", styles: [":host ::ng-deep .custom-card .action-buttons{visibility:hidden}:host ::ng-deep .custom-card .image-wrapper:hover .action-buttons{visibility:visible}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:hover .header-icons{opacity:1}.card-active{transform:scale(1.1);transition:all .2s linear;z-index:999}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i5.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "directive", type: i6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i7.FormUtilComponent, selector: "se-form-util", inputs: ["stickyActions", "form", "hideSaveButton", "hideCancelButton", "formButtons", "loading", "activeTestMode"], outputs: ["saveForm", "cancelForm", "dropDownChangeEvent", "sectionClickedEvent"] }, { kind: "component", type: i8.fileComponent, selector: "se-file", inputs: ["url", "caption", "width", "height", "id", "name", "type", "allowDownloadFile", "allowEditableCaption", "allowDeleteFile"], outputs: ["onDeleteEvent", "onSaveEvent"] }] }); }
147
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: CardComponent, deps: [{ token: i1.DialogService }, { token: i2.GridService }, { token: i3.ConfirmationService }, { token: i4.SystemConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
148
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.1", type: CardComponent, selector: "se-card", inputs: { data: "data", width: "width", height: "height", card: "card", setCardData: "setCardData" }, outputs: { selectedCard: "selectedCard" }, usesOnChanges: true, ngImport: i0, template: "<!-- Display Files Card -->\n<p-confirmDialog key=\"handlecolumnActions\"></p-confirmDialog>\n<div\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n class=\"example-list\"\n (cdkDropListDropped)=\"dragAndDrop($event)\"\n>\n <div \n class=\"flex cards-wrapper\" \n [ngStyle]=\"{ width: width, height: height }\" \n *ngIf=\"data\" \n [class]=\"card && card.class ? card.class : ''\">\n <div\n cdkDrag\n class=\"example-box flex flex-column cards-wrapper\"\n [class]=\"\n card && card.width && card.width.length > 0\n ? 'col-' + card.width\n : 'col-3'\n \"\n *ngFor=\"let file of data; let i = index\"\n (click)=\"onClickEvent(file,i)\"\n [ngClass]=\"file.selectedCard ? file.selectedCard : ''\"\n >\n <!-- start cards image functionality -->\n <se-file\n [url]=\"file.blobfileurl\"\n [type]=\"file.fileextension\"\n [caption]=\"file?.filecaption\"\n [height]=\"card?.height\"\n [allowDownloadFile]=\"card?.allowDownload\"\n [allowEditableCaption]=\"card?.allowEditableCaption\"\n [allowDeleteFile]=\"card?.allowDelete\"\n [name]=\"file.blobfileurl\"\n [id]=\"file.fileextension\"\n (onDeleteEvent)=\"deleteImage($event)\"\n (onSaveEvent)=\"saveCaption($event)\"\n ></se-file>\n <!-- End cards image functionality -->\n\n <!-- start form functionality in card -->\n <se-form-util\n class=\"form-content\"\n [form]=\"file.dynamicform\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n <!-- End form functionality in card -->\n </div>\n </div>\n\n <!-- in case of form and data is empty or null -->\n <div *ngIf=\"dynamicForm && (!data || data.length == 0)\">\n <se-form-util\n *ngIf=\"dynamicForm\"\n [form]=\"dynamicForm\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n </div>\n</div>\n", styles: [":host ::ng-deep .custom-card .action-buttons{visibility:hidden}:host ::ng-deep .custom-card .image-wrapper:hover .action-buttons{visibility:visible}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:hover .header-icons{opacity:1}.card-active{transform:scale(1.1);transition:all .2s linear;z-index:999}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i6.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "directive", type: i7.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i7.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i8.FormUtilComponent, selector: "se-form-util", inputs: ["stickyActions", "form", "hideSaveButton", "hideCancelButton", "formButtons", "loading", "activeTestMode"], outputs: ["saveForm", "cancelForm", "dropDownChangeEvent", "sectionClickedEvent"] }, { kind: "component", type: i9.fileComponent, selector: "se-file", inputs: ["url", "caption", "width", "height", "id", "name", "type", "allowDownloadFile", "allowEditableCaption", "allowDeleteFile"], outputs: ["onDeleteEvent", "onSaveEvent"] }] }); }
139
149
  }
140
150
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: CardComponent, decorators: [{
141
151
  type: Component,
142
152
  args: [{ selector: 'se-card', template: "<!-- Display Files Card -->\n<p-confirmDialog key=\"handlecolumnActions\"></p-confirmDialog>\n<div\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n class=\"example-list\"\n (cdkDropListDropped)=\"dragAndDrop($event)\"\n>\n <div \n class=\"flex cards-wrapper\" \n [ngStyle]=\"{ width: width, height: height }\" \n *ngIf=\"data\" \n [class]=\"card && card.class ? card.class : ''\">\n <div\n cdkDrag\n class=\"example-box flex flex-column cards-wrapper\"\n [class]=\"\n card && card.width && card.width.length > 0\n ? 'col-' + card.width\n : 'col-3'\n \"\n *ngFor=\"let file of data; let i = index\"\n (click)=\"onClickEvent(file,i)\"\n [ngClass]=\"file.selectedCard ? file.selectedCard : ''\"\n >\n <!-- start cards image functionality -->\n <se-file\n [url]=\"file.blobfileurl\"\n [type]=\"file.fileextension\"\n [caption]=\"file?.filecaption\"\n [height]=\"card?.height\"\n [allowDownloadFile]=\"card?.allowDownload\"\n [allowEditableCaption]=\"card?.allowEditableCaption\"\n [allowDeleteFile]=\"card?.allowDelete\"\n [name]=\"file.blobfileurl\"\n [id]=\"file.fileextension\"\n (onDeleteEvent)=\"deleteImage($event)\"\n (onSaveEvent)=\"saveCaption($event)\"\n ></se-file>\n <!-- End cards image functionality -->\n\n <!-- start form functionality in card -->\n <se-form-util\n class=\"form-content\"\n [form]=\"file.dynamicform\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n <!-- End form functionality in card -->\n </div>\n </div>\n\n <!-- in case of form and data is empty or null -->\n <div *ngIf=\"dynamicForm && (!data || data.length == 0)\">\n <se-form-util\n *ngIf=\"dynamicForm\"\n [form]=\"dynamicForm\"\n [hideSaveButton]=\"true\"\n [hideCancelButton]=\"true\"\n ></se-form-util>\n </div>\n</div>\n", styles: [":host ::ng-deep .custom-card .action-buttons{visibility:hidden}:host ::ng-deep .custom-card .image-wrapper:hover .action-buttons{visibility:visible}.cdk-drag-preview{box-sizing:border-box;border-radius:4px;box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.example-list.cdk-drop-list-dragging .example-box:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}.example-box:hover .header-icons{opacity:1}.card-active{transform:scale(1.1);transition:all .2s linear;z-index:999}\n"] }]
143
- }], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.GridService }, { type: i3.ConfirmationService }]; }, propDecorators: { selectedCard: [{
153
+ }], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.GridService }, { type: i3.ConfirmationService }, { type: i4.SystemConfigService }]; }, propDecorators: { selectedCard: [{
144
154
  type: Output
145
155
  }], data: [{
146
156
  type: Input
@@ -153,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
153
163
  }], setCardData: [{
154
164
  type: Input
155
165
  }] } });
156
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2NhcmRzL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9jYXJkcy9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE9BQU8sS0FBSyxTQUFTLE1BQU0scUNBQXFDLENBQUM7Ozs7Ozs7Ozs7QUFRakUsTUFBTSxPQUFPLGFBQWE7SUFZeEIsWUFDUyxhQUE0QixFQUMzQixXQUF3QixFQUN4QixtQkFBd0M7UUFGekMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQWR4QyxpQkFBWSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQy9ELGtFQUFrRTtRQUN6RCxTQUFJLEdBQVEsRUFBRSxDQUFDO1FBQ2YsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixXQUFNLEdBQVcsRUFBRSxDQUFDO1FBSTdCLGNBQVMsR0FBWSxLQUFLLENBQUM7SUFPeEIsQ0FBQztJQUVKLFFBQVEsS0FBVSxDQUFDO0lBRW5CLFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDYixJQUFJLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsR0FBUSxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ3RELElBQUcsUUFBUSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxFQUFDO2dCQUMxQyxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQztnQkFDaEMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1QyxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7Z0JBQ2xCLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUMsRUFBRTtvQkFDdEIsSUFBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEVBQUM7d0JBQ3BELE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQyxHQUFHLE1BQU0sRUFBRSxXQUFXLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsV0FBVyxFQUFFLENBQUMsRUFBRSxXQUFXLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUMsRUFBRSxhQUFhLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUMsRUFBQyxDQUFDLENBQUM7cUJBQzVMO3lCQUFNO3dCQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7cUJBQ3JCO2dCQUNILENBQUMsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDO2FBQ3BCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDbEQ7WUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsWUFBWSxFQUFFLENBQUM7WUFDcEMsK0VBQStFO1lBQy9FLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDOUMsaUZBQWlGO1lBQ2pGOztjQUVFO1lBQ0YsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUU7b0JBQzNCLElBQUksQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFO3dCQUNsQixDQUFDLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztxQkFDOUQ7b0JBQ0QsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNqQyxDQUFDLENBQUMsQ0FBQzthQUNKO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsK0VBQStFO0lBQy9FLGdCQUFnQixDQUFDLElBQVc7UUFDM0IsSUFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsTUFBTSxFQUFFO1lBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUUsSUFBSSxDQUFDO1NBQ3ZCO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ3BFLEtBQUssQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQzNCLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNqQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDN0I7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQVU7UUFDcEIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQztZQUMvQixPQUFPLEVBQUUsa0RBQWtEO1lBQzNELE1BQU0sRUFBRSxxQkFBcUI7WUFDN0IsSUFBSSxFQUFFLDRCQUE0QjtZQUNsQyxHQUFHLEVBQUUscUJBQXFCO1lBQzFCLE1BQU0sRUFBRSxHQUFHLEVBQUU7Z0JBQ1gsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLEtBQUssRUFBRTtvQkFDdEIsSUFBSSxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztvQkFDekIsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FDekIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEtBQUssS0FBSyxDQUFDLFdBQVcsQ0FDM0MsQ0FBQztvQkFDRixJQUFJLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3JCLEdBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQztvQkFFckIsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO3dCQUNuQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQzt3QkFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ3hCLDRCQUE0QjtxQkFDN0I7aUJBQ0Y7Z0JBQ0QsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ25DLENBQUM7WUFDRCxNQUFNLEVBQUUsR0FBRyxFQUFFO2dCQUNYLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNuQyxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FBQyxRQUFZO1FBQzFCLElBQUcsSUFBSSxDQUFDLGVBQWUsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFDO1lBQ3RFLE1BQU0sUUFBUSxHQUFHLEVBQUMsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFDLENBQUM7WUFDM0MsTUFBTSxHQUFHLEdBQUcsRUFBQyxHQUFHLFFBQVEsRUFBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLENBQUMsV0FBVyxFQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLFFBQVEsQ0FBQyxXQUFXLEVBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsUUFBUSxDQUFDLGFBQWEsRUFBQyxDQUFDO1lBQ3JKLE9BQU8sR0FBRyxDQUFDO1NBQ1o7YUFBTTtZQUNMLE9BQU8sUUFBUSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVO1FBQ3BCLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxLQUFLLEVBQUU7WUFDdEIsSUFBSSxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6QixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxLQUFLLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUN4RSxJQUFJLEdBQUcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDckIsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUU7Z0JBQ2hCLEdBQUcsQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztnQkFDaEMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7Z0JBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDO2FBQzVCO1lBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFO2dCQUN6QyxHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDaEMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDOUI7U0FDRjtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsSUFBUyxFQUFFLEtBQWE7UUFDbkMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO2lJQXhJVSxhQUFhO3FIQUFiLGFBQWEscU5DYjFCLHM5REE4REE7OzJGRGpEYSxhQUFhO2tCQUx6QixTQUFTOytCQUNFLFNBQVM7Z0tBS1QsWUFBWTtzQkFBckIsTUFBTTtnQkFFRSxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xuaW1wb3J0IHsgSUR5bmFtaWNDYXJkLCBJRHluYW1pY0Zvcm0sIElWaWV3Q2FyZFByb3AgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBtb3ZlSXRlbUluQXJyYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvZHJhZy1kcm9wJztcbmltcG9ydCB7IEdyaWRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZ3JpZC5zZXJ2aWNlJztcbmltcG9ydCAqIGFzIHV0aWxpdGllcyBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy91dGlsaXRpZXMuc2VydmljZSc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25TZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZS1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJkLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENhcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRDYXJkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgLy8gQE91dHB1dCgpIG9uRGVsZXRlQ2FyZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIGRhdGE6IGFueSA9IFtdO1xuICBASW5wdXQoKSB3aWR0aDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGNhcmQ6IGFueTtcbiAgQElucHV0KCkgc2V0Q2FyZERhdGE6IGJvb2xlYW47XG4gIGR5bmFtaWNGb3JtOiBJRHluYW1pY0Zvcm07XG4gIHNob3dGaWxlczogYm9vbGVhbiA9IGZhbHNlO1xuICBkaXNwbGF5Q2FyZEluZm86IElWaWV3Q2FyZFByb3A7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBncmlkU2VydmljZTogR3JpZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMuY2FyZCkge1xuICAgICAgbGV0IHsgZGF0YSwgZm9ybVNlY3Rpb25zLCBjYXJkSW5mbyB9OiBhbnkgPSB0aGlzLmNhcmQ7XG4gICAgICBpZihjYXJkSW5mbyAmJiBPYmplY3Qua2V5cyhjYXJkSW5mbykubGVuZ3RoKXtcbiAgICAgICAgdGhpcy5kaXNwbGF5Q2FyZEluZm8gPSBjYXJkSW5mbztcbiAgICAgICAgZGF0YSA9IHRoaXMuZ3JpZFNlcnZpY2Uuc2V0RGF0YUZpZWxkcyhkYXRhKTtcbiAgICAgICAgY29uc3QgbmV3QXJyID0gW107XG4gICAgICAgIGRhdGE/LmZvckVhY2goKHJlY29yZCk9PntcbiAgICAgICAgICBpZighT2JqZWN0LmtleXMocmVjb3JkKT8uaW5jbHVkZXMoJ2F6dXJlY29udGFpbmVyaWQnKSl7XG4gICAgICAgICAgICBuZXdBcnIucHVzaCh7Li4ucmVjb3JkLCBibG9iZmlsZXVybDogcmVjb3JkW2NhcmRJbmZvLnVybD8udG9Mb3dlckNhc2UoKV0sIGZpbGVjYXB0aW9uOiByZWNvcmRbY2FyZEluZm8uY2FwdGlvbj8udG9Mb3dlckNhc2UoKV0sIGZpbGVleHRlbnNpb246IHJlY29yZFtjYXJkSW5mby5leHRlbnNpb24/LnRvTG93ZXJDYXNlKCldfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5ld0Fyci5wdXNoKHJlY29yZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kYXRhID0gbmV3QXJyO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5ncmlkU2VydmljZS5zZXREYXRhRmllbGRzKGRhdGEpO1xuICAgICAgfVxuICAgICAgdGhpcy5keW5hbWljRm9ybSA9IHsgZm9ybVNlY3Rpb25zIH07XG4gICAgICAvLyBzZXQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgYWxsb3dEZWxldGUsIGFsbG93RWRpdGFibGVDYXB0aW9uIGFuZCBhbGxvd0Rvd25sb2FkXG4gICAgICB0aGlzLnNldENhcmRQcm9wVmFsdWUoJ2FsbG93RG93bmxvYWQnKTtcbiAgICAgIHRoaXMuc2V0Q2FyZFByb3BWYWx1ZSgnYWxsb3dEZWxldGUnKTtcbiAgICAgIHRoaXMuc2V0Q2FyZFByb3BWYWx1ZSgnYWxsb3dFZGl0YWJsZUNhcHRpb24nKTtcbiAgICAgIC8vZmlsZXMuYWxsb3dFZGl0YWJsZUNhcHRpb24gPSB0aGlzLnNldENhcmRQcm9wVmFsdWUoZmlsZXMuYWxsb3dFZGl0YWJsZUNhcHRpb24pO1xuICAgICAgLyoqIEluIGNhc2Ugb2Ygd2hlbiB3ZSBhcmUgdXNpbmcgdGhpcyBjb21wb25lbnQgZm9yIHN0YW5kIGFsb25lIHRoZW4gaWYgZm9ybVNlY3Rpb24gaXMgZXhpc3QgaW5cbiAgICAgICAgICB0aGUgdGhpcy5jYXJkIGFuZCB0aGVuIGFkZCBpbiB0aGUgZGF0YSBhcnJheS5cbiAgICAgICovXG4gICAgICBpZiAodGhpcy5kYXRhKSB7XG4gICAgICAgIHRoaXMuZGF0YS5mb3JFYWNoKCh4OiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoIXguZHluYW1pY2Zvcm0pIHtcbiAgICAgICAgICAgIHguZHluYW1pY2Zvcm0gPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuZHluYW1pY0Zvcm0pKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdXRpbGl0aWVzLnNldENhcmRGaWVsZHNEYXRhKHgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzZXQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgYWxsb3dEZWxldGUsIGFsbG93RWRpdGFibGVDYXB0aW9uIGFuZCBhbGxvd0Rvd25sb2FkXG4gIHNldENhcmRQcm9wVmFsdWUocHJvcDpzdHJpbmcpe1xuICAgaWYoIXRoaXMuY2FyZFtwcm9wXT8udG9TdHJpbmcoKT8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLmNhcmRbcHJvcF09IHRydWU7XG4gICAgfVxuICB9XG5cbiAgZHJhZ0FuZERyb3AoZXZlbnQ6IGFueSkge1xuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmRhdGEsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gICAgZXZlbnQuaXRlbT8uZWxlbWVudD8ubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLmNhcmQuZGF0YSA9IHRoaXMuZGF0YTtcbiAgICB0aGlzLmNhcmRbJ2NoYW5nZSddID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5jYXJkICYmIHRoaXMuY2FyZC5vblNvcnQpIHtcbiAgICAgIHRoaXMuY2FyZC5vblNvcnQodGhpcy5kYXRhKTtcbiAgICB9XG4gIH1cblxuICBkZWxldGVJbWFnZShldmVudDogYW55KSB7XG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgbWVzc2FnZTogJ0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIEltYWdlPycsXG4gICAgICBoZWFkZXI6ICdEZWxldGUgQ29uZmlybWF0aW9uJyxcbiAgICAgIGljb246ICdwaSBwaS1leGNsYW1hdGlvbi10cmlhbmdsZScsXG4gICAgICBrZXk6ICdoYW5kbGVjb2x1bW5BY3Rpb25zJyxcbiAgICAgIGFjY2VwdDogKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5kYXRhICYmIGV2ZW50KSB7XG4gICAgICAgICAgbGV0IGFyciA9IFsuLi50aGlzLmRhdGFdO1xuICAgICAgICAgIGNvbnN0IGluZGV4ID0gYXJyLmZpbmRJbmRleChcbiAgICAgICAgICAgIChpKSA9PiBpLmJsb2JmaWxldXJsID09PSBldmVudC5ibG9iZmlsZXVybFxuICAgICAgICAgICk7XG4gICAgICAgICAgbGV0IG9iaiA9IGFycltpbmRleF07XG4gICAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgdGhpcy5kYXRhID0gWy4uLmFycl07XG5cbiAgICAgICAgICBpZiAodGhpcy5jYXJkICYmIHRoaXMuY2FyZC5vbkRlbGV0ZSkge1xuICAgICAgICAgICAgb2JqID0gdGhpcy5yZXBsYWNlUHJvcE5hbWUob2JqKTtcbiAgICAgICAgICAgIHRoaXMuY2FyZC5vbkRlbGV0ZShvYmopO1xuICAgICAgICAgICAgLy8gdGhpcy5vbkRlbGV0ZUNhcmQuZW1pdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xvc2UoKTtcbiAgICAgIH0sXG4gICAgICByZWplY3Q6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNsb3NlKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcmVwbGFjZVByb3BOYW1lKGNhcmRJbmZvOmFueSl7XG4gICAgaWYodGhpcy5kaXNwbGF5Q2FyZEluZm8gJiYgT2JqZWN0LmtleXModGhpcy5kaXNwbGF5Q2FyZEluZm8pLmxlbmd0aCA+IDApe1xuICAgICAgY29uc3QgY2FyZFByb3AgPSB7Li4udGhpcy5kaXNwbGF5Q2FyZEluZm99O1xuICAgICAgY29uc3Qgb2JqID0gey4uLmNhcmRJbmZvLFtjYXJkUHJvcC51cmxdOiBjYXJkSW5mby5ibG9iZmlsZXVybCxbY2FyZFByb3AuY2FwdGlvbl06IGNhcmRJbmZvLmZpbGVjYXB0aW9uLFtjYXJkUHJvcC5leHRlbnNpb25dOiBjYXJkSW5mby5maWxlZXh0ZW5zaW9ufTtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjYXJkSW5mbztcbiAgICB9XG4gIH1cblxuICBzYXZlQ2FwdGlvbihldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuZGF0YSAmJiBldmVudCkge1xuICAgICAgbGV0IGFyciA9IFsuLi50aGlzLmRhdGFdO1xuICAgICAgY29uc3QgaW5kZXggPSBhcnIuZmluZEluZGV4KChpKSA9PiBpLmJsb2JmaWxldXJsID09PSBldmVudC5ibG9iZmlsZXVybCk7XG4gICAgICBsZXQgb2JqID0gYXJyW2luZGV4XTtcbiAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgb2JqLmZpbGVjYXB0aW9uID0gZXZlbnQuY2FwdGlvbjtcbiAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSwgb2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLmRhdGEgPSBhcnI7XG4gICAgICAgIHRoaXMuY2FyZFsnY2hhbmdlJ10gPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQ/Lm9uQ2FwdGlvblNhdmUpIHtcbiAgICAgICAgb2JqID0gdGhpcy5yZXBsYWNlUHJvcE5hbWUob2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLm9uQ2FwdGlvblNhdmUob2JqKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbkNsaWNrRXZlbnQoZGF0YTogYW55LCBpbmRleDogbnVtYmVyKXtcbiAgICBkYXRhWydpbmRleCddID0gaW5kZXg7XG4gICAgdGhpcy5zZWxlY3RlZENhcmQuZW1pdChkYXRhKTtcbiAgfVxuXG59XG4iLCI8IS0tIERpc3BsYXkgRmlsZXMgQ2FyZCAtLT5cbjxwLWNvbmZpcm1EaWFsb2cga2V5PVwiaGFuZGxlY29sdW1uQWN0aW9uc1wiPjwvcC1jb25maXJtRGlhbG9nPlxuPGRpdlxuICBjZGtEcm9wTGlzdFxuICBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gIGNsYXNzPVwiZXhhbXBsZS1saXN0XCJcbiAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcmFnQW5kRHJvcCgkZXZlbnQpXCJcbj5cbiAgPGRpdiBcbiAgY2xhc3M9XCJmbGV4IGNhcmRzLXdyYXBwZXJcIiBcbiAgW25nU3R5bGVdPVwieyB3aWR0aDogd2lkdGgsIGhlaWdodDogaGVpZ2h0IH1cIiBcbiAgKm5nSWY9XCJkYXRhXCIgXG4gIFtjbGFzc109XCJjYXJkICYmIGNhcmQuY2xhc3MgPyBjYXJkLmNsYXNzIDogJydcIj5cbiAgICA8ZGl2XG4gICAgICBjZGtEcmFnXG4gICAgICBjbGFzcz1cImV4YW1wbGUtYm94IGZsZXggZmxleC1jb2x1bW4gY2FyZHMtd3JhcHBlclwiXG4gICAgICBbY2xhc3NdPVwiXG4gICAgICAgIGNhcmQgJiYgY2FyZC53aWR0aCAmJiBjYXJkLndpZHRoLmxlbmd0aCA+IDBcbiAgICAgICAgICA/ICdjb2wtJyArIGNhcmQud2lkdGhcbiAgICAgICAgICA6ICdjb2wtMydcbiAgICAgIFwiXG4gICAgICAqbmdGb3I9XCJsZXQgZmlsZSBvZiBkYXRhOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgIChjbGljayk9XCJvbkNsaWNrRXZlbnQoZmlsZSxpKVwiXG4gICAgICBbbmdDbGFzc109XCJmaWxlLnNlbGVjdGVkQ2FyZCA/IGZpbGUuc2VsZWN0ZWRDYXJkIDogJydcIlxuICAgID5cbiAgICAgIDwhLS0gc3RhcnQgY2FyZHMgaW1hZ2UgZnVuY3Rpb25hbGl0eSAtLT5cbiAgICAgIDxzZS1maWxlXG4gICAgICAgIFt1cmxdPVwiZmlsZS5ibG9iZmlsZXVybFwiXG4gICAgICAgIFt0eXBlXT1cImZpbGUuZmlsZWV4dGVuc2lvblwiXG4gICAgICAgIFtjYXB0aW9uXT1cImZpbGU/LmZpbGVjYXB0aW9uXCJcbiAgICAgICAgW2hlaWdodF09XCJjYXJkPy5oZWlnaHRcIlxuICAgICAgICBbYWxsb3dEb3dubG9hZEZpbGVdPVwiY2FyZD8uYWxsb3dEb3dubG9hZFwiXG4gICAgICAgIFthbGxvd0VkaXRhYmxlQ2FwdGlvbl09XCJjYXJkPy5hbGxvd0VkaXRhYmxlQ2FwdGlvblwiXG4gICAgICAgIFthbGxvd0RlbGV0ZUZpbGVdPVwiY2FyZD8uYWxsb3dEZWxldGVcIlxuICAgICAgICBbbmFtZV09XCJmaWxlLmJsb2JmaWxldXJsXCJcbiAgICAgICAgW2lkXT1cImZpbGUuZmlsZWV4dGVuc2lvblwiXG4gICAgICAgIChvbkRlbGV0ZUV2ZW50KT1cImRlbGV0ZUltYWdlKCRldmVudClcIlxuICAgICAgICAob25TYXZlRXZlbnQpPVwic2F2ZUNhcHRpb24oJGV2ZW50KVwiXG4gICAgICA+PC9zZS1maWxlPlxuICAgICAgPCEtLSBFbmQgY2FyZHMgaW1hZ2UgZnVuY3Rpb25hbGl0eSAtLT5cblxuICAgICAgPCEtLSBzdGFydCBmb3JtIGZ1bmN0aW9uYWxpdHkgaW4gY2FyZCAtLT5cbiAgICAgIDxzZS1mb3JtLXV0aWxcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRlbnRcIlxuICAgICAgICBbZm9ybV09XCJmaWxlLmR5bmFtaWNmb3JtXCJcbiAgICAgICAgW2hpZGVTYXZlQnV0dG9uXT1cInRydWVcIlxuICAgICAgICBbaGlkZUNhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcbiAgICAgID48L3NlLWZvcm0tdXRpbD5cbiAgICAgIDwhLS0gRW5kIGZvcm0gZnVuY3Rpb25hbGl0eSBpbiBjYXJkIC0tPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIGluIGNhc2Ugb2YgZm9ybSBhbmQgZGF0YSBpcyBlbXB0eSBvciBudWxsIC0tPlxuICA8ZGl2ICpuZ0lmPVwiZHluYW1pY0Zvcm0gJiYgKCFkYXRhIHx8IGRhdGEubGVuZ3RoID09IDApXCI+XG4gICAgPHNlLWZvcm0tdXRpbFxuICAgICAgKm5nSWY9XCJkeW5hbWljRm9ybVwiXG4gICAgICBbZm9ybV09XCJkeW5hbWljRm9ybVwiXG4gICAgICBbaGlkZVNhdmVCdXR0b25dPVwidHJ1ZVwiXG4gICAgICBbaGlkZUNhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcbiAgICA+PC9zZS1mb3JtLXV0aWw+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
166
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL2NhcmRzL2NhcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL2NvbXBvbmVudHMvYmFzZS9jYXJkcy9jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRXpELE9BQU8sS0FBSyxTQUFTLE1BQU0scUNBQXFDLENBQUM7QUFHakUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7OztBQU8vRCxNQUFNLE9BQU8sYUFBYTtJQVl4QixZQUNTLGFBQTRCLEVBQzNCLFdBQXdCLEVBQ3hCLG1CQUF3QyxFQUN4QyxtQkFBd0M7UUFIekMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBZnhDLGlCQUFZLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDL0Qsa0VBQWtFO1FBQ3pELFNBQUksR0FBUSxFQUFFLENBQUM7UUFDZixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLFdBQU0sR0FBVyxFQUFFLENBQUM7UUFJN0IsY0FBUyxHQUFZLEtBQUssQ0FBQztJQVF4QixDQUFDO0lBRUosUUFBUSxLQUFVLENBQUM7SUFFbkIsV0FBVztRQUNULElBQUksSUFBSSxDQUFDLElBQUks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Q3RCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7aUlBaEpVLGFBQWE7cUhBQWIsYUFBYSxxTkNmMUIsczlEQThEQTs7MkZEL0NhLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsU0FBUztrTUFLVCxZQUFZO3NCQUFyQixNQUFNO2dCQUVFLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlhbG9nU2VydmljZSB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XG5pbXBvcnQgeyBJRHluYW1pY0NhcmQsIElEeW5hbWljRm9ybSwgSVZpZXdDYXJkUHJvcCB9IGZyb20gJy4uLy4uLy4uL21vZGVscy9mb3JtLm1vZGVsJztcbmltcG9ydCB7IG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgR3JpZFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9ncmlkLnNlcnZpY2UnO1xuaW1wb3J0ICogYXMgdXRpbGl0aWVzIGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3V0aWxpdGllcy5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpcm1hdGlvblNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBTeXN0ZW1Db25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvc3lzdGVtLWNvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IEVTeXN0ZW1Db25maWcgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvcmVzcG9uc2UubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZS1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJkLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIENhcmRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRDYXJkOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgLy8gQE91dHB1dCgpIG9uRGVsZXRlQ2FyZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIGRhdGE6IGFueSA9IFtdO1xuICBASW5wdXQoKSB3aWR0aDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGNhcmQ6IGFueTtcbiAgQElucHV0KCkgc2V0Q2FyZERhdGE6IGJvb2xlYW47XG4gIGR5bmFtaWNGb3JtOiBJRHluYW1pY0Zvcm07XG4gIHNob3dGaWxlczogYm9vbGVhbiA9IGZhbHNlO1xuICBkaXNwbGF5Q2FyZEluZm86IElWaWV3Q2FyZFByb3A7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBncmlkU2VydmljZTogR3JpZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maXJtYXRpb25TZXJ2aWNlOiBDb25maXJtYXRpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgc3lzdGVtQ29uZmlnU2VydmljZTogU3lzdGVtQ29uZmlnU2VydmljZSxcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICBpZiAodGhpcy5jYXJkKSB7XG4gICAgICBjb25zdCBmaWxlQ29udGFpbmVyTmFtZSA9IHRoaXMuc3lzdGVtQ29uZmlnU2VydmljZS5nZXRTeXN0ZW1Db25maWdWYWx1ZShFU3lzdGVtQ29uZmlnLkZVUk5JVFVSRUlURU1QSUNUVVJFUEFUSCk7XG4gICAgICBjb25zb2xlLmxvZygnZmlsZUNvbnRhaW5lck5hbWU6ICcsIGZpbGVDb250YWluZXJOYW1lKTtcblx0ICBjb25zdCBmaWxlUm9vdFBhdGggPSB0aGlzLnN5c3RlbUNvbmZpZ1NlcnZpY2UuZ2V0U3lzdGVtQ29uZmlnVmFsdWUoRVN5c3RlbUNvbmZpZy5GSUxFUk9PVFBBVEgpO1xuICAgICAgY29uc29sZS5sb2coJ2ZpbGVSb290UGF0aDogJywgZmlsZVJvb3RQYXRoKTtcbiAgICAgIGxldCB7IGRhdGEsIGZvcm1TZWN0aW9ucywgY2FyZEluZm8gfTogYW55ID0gdGhpcy5jYXJkO1xuICAgICAgaWYoY2FyZEluZm8gJiYgT2JqZWN0LmtleXMoY2FyZEluZm8pLmxlbmd0aCl7XG4gICAgICAgIHRoaXMuZGlzcGxheUNhcmRJbmZvID0gY2FyZEluZm87XG4gICAgICAgIGRhdGEgPSB0aGlzLmdyaWRTZXJ2aWNlLnNldERhdGFGaWVsZHMoZGF0YSk7XG4gICAgICAgIGNvbnN0IG5ld0FyciA9IFtdO1xuICAgICAgICBkYXRhPy5mb3JFYWNoKChyZWNvcmQpPT57XG4gICAgICAgICAgaWYoIU9iamVjdC5rZXlzKHJlY29yZCk/LmluY2x1ZGVzKCdhenVyZWNvbnRhaW5lcmlkJykpe1xuICAgICAgICAgICAgbmV3QXJyLnB1c2goey4uLnJlY29yZCwgYmxvYmZpbGV1cmw6IChmaWxlUm9vdFBhdGgrJy8nK2ZpbGVDb250YWluZXJOYW1lKycvJytyZWNvcmRbY2FyZEluZm8udXJsPy50b0xvd2VyQ2FzZSgpXSk/LnRvTG93ZXJDYXNlKCksIGZpbGVjYXB0aW9uOiByZWNvcmRbY2FyZEluZm8uY2FwdGlvbj8udG9Mb3dlckNhc2UoKV0sIGZpbGVleHRlbnNpb246IHJlY29yZFtjYXJkSW5mby5leHRlbnNpb24/LnRvTG93ZXJDYXNlKCldfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5ld0Fyci5wdXNoKHJlY29yZCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5kYXRhID0gbmV3QXJyO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5ncmlkU2VydmljZS5zZXREYXRhRmllbGRzKGRhdGEpO1xuICAgICAgfVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKCd0aGlzLmRhdGE6ICcsIHRoaXMuZGF0YSk7XG4gICAgICB9LCAyMDApO1xuICAgICAgdGhpcy5keW5hbWljRm9ybSA9IHsgZm9ybVNlY3Rpb25zIH07XG4gICAgICAvLyBzZXQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgYWxsb3dEZWxldGUsIGFsbG93RWRpdGFibGVDYXB0aW9uIGFuZCBhbGxvd0Rvd25sb2FkXG4gICAgICB0aGlzLnNldENhcmRQcm9wVmFsdWUoJ2FsbG93RG93bmxvYWQnKTtcbiAgICAgIHRoaXMuc2V0Q2FyZFByb3BWYWx1ZSgnYWxsb3dEZWxldGUnKTtcbiAgICAgIHRoaXMuc2V0Q2FyZFByb3BWYWx1ZSgnYWxsb3dFZGl0YWJsZUNhcHRpb24nKTtcbiAgICAgIC8vZmlsZXMuYWxsb3dFZGl0YWJsZUNhcHRpb24gPSB0aGlzLnNldENhcmRQcm9wVmFsdWUoZmlsZXMuYWxsb3dFZGl0YWJsZUNhcHRpb24pO1xuICAgICAgLyoqIEluIGNhc2Ugb2Ygd2hlbiB3ZSBhcmUgdXNpbmcgdGhpcyBjb21wb25lbnQgZm9yIHN0YW5kIGFsb25lIHRoZW4gaWYgZm9ybVNlY3Rpb24gaXMgZXhpc3QgaW5cbiAgICAgICAgICB0aGUgdGhpcy5jYXJkIGFuZCB0aGVuIGFkZCBpbiB0aGUgZGF0YSBhcnJheS5cbiAgICAgICovXG4gICAgICBpZiAodGhpcy5kYXRhKSB7XG4gICAgICAgIHRoaXMuZGF0YS5mb3JFYWNoKCh4OiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoIXguZHluYW1pY2Zvcm0pIHtcbiAgICAgICAgICAgIHguZHluYW1pY2Zvcm0gPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMuZHluYW1pY0Zvcm0pKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdXRpbGl0aWVzLnNldENhcmRGaWVsZHNEYXRhKHgpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzZXQgdGhlIGRlZmF1bHQgdmFsdWUgb2YgYWxsb3dEZWxldGUsIGFsbG93RWRpdGFibGVDYXB0aW9uIGFuZCBhbGxvd0Rvd25sb2FkXG4gIHNldENhcmRQcm9wVmFsdWUocHJvcDpzdHJpbmcpe1xuICAgaWYoIXRoaXMuY2FyZFtwcm9wXT8udG9TdHJpbmcoKT8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLmNhcmRbcHJvcF09IHRydWU7XG4gICAgfVxuICB9XG5cbiAgZHJhZ0FuZERyb3AoZXZlbnQ6IGFueSkge1xuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmRhdGEsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gICAgZXZlbnQuaXRlbT8uZWxlbWVudD8ubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLmNhcmQuZGF0YSA9IHRoaXMuZGF0YTtcbiAgICB0aGlzLmNhcmRbJ2NoYW5nZSddID0gdHJ1ZTtcbiAgICBpZiAodGhpcy5jYXJkICYmIHRoaXMuY2FyZC5vblNvcnQpIHtcbiAgICAgIHRoaXMuY2FyZC5vblNvcnQodGhpcy5kYXRhKTtcbiAgICB9XG4gIH1cblxuICBkZWxldGVJbWFnZShldmVudDogYW55KSB7XG4gICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgbWVzc2FnZTogJ0FyZSB5b3Ugc3VyZSB0aGF0IHlvdSB3YW50IHRvIGRlbGV0ZSB0aGlzIEltYWdlPycsXG4gICAgICBoZWFkZXI6ICdEZWxldGUgQ29uZmlybWF0aW9uJyxcbiAgICAgIGljb246ICdwaSBwaS1leGNsYW1hdGlvbi10cmlhbmdsZScsXG4gICAgICBrZXk6ICdoYW5kbGVjb2x1bW5BY3Rpb25zJyxcbiAgICAgIGFjY2VwdDogKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5kYXRhICYmIGV2ZW50KSB7XG4gICAgICAgICAgbGV0IGFyciA9IFsuLi50aGlzLmRhdGFdO1xuICAgICAgICAgIGNvbnN0IGluZGV4ID0gYXJyLmZpbmRJbmRleChcbiAgICAgICAgICAgIChpKSA9PiBpLmJsb2JmaWxldXJsID09PSBldmVudC5ibG9iZmlsZXVybFxuICAgICAgICAgICk7XG4gICAgICAgICAgbGV0IG9iaiA9IGFycltpbmRleF07XG4gICAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgICAgdGhpcy5kYXRhID0gWy4uLmFycl07XG5cbiAgICAgICAgICBpZiAodGhpcy5jYXJkICYmIHRoaXMuY2FyZC5vbkRlbGV0ZSkge1xuICAgICAgICAgICAgb2JqID0gdGhpcy5yZXBsYWNlUHJvcE5hbWUob2JqKTtcbiAgICAgICAgICAgIHRoaXMuY2FyZC5vbkRlbGV0ZShvYmopO1xuICAgICAgICAgICAgLy8gdGhpcy5vbkRlbGV0ZUNhcmQuZW1pdCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbmZpcm1hdGlvblNlcnZpY2UuY2xvc2UoKTtcbiAgICAgIH0sXG4gICAgICByZWplY3Q6ICgpID0+IHtcbiAgICAgICAgdGhpcy5jb25maXJtYXRpb25TZXJ2aWNlLmNsb3NlKCk7XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgcmVwbGFjZVByb3BOYW1lKGNhcmRJbmZvOmFueSl7XG4gICAgaWYodGhpcy5kaXNwbGF5Q2FyZEluZm8gJiYgT2JqZWN0LmtleXModGhpcy5kaXNwbGF5Q2FyZEluZm8pLmxlbmd0aCA+IDApe1xuICAgICAgY29uc3QgY2FyZFByb3AgPSB7Li4udGhpcy5kaXNwbGF5Q2FyZEluZm99O1xuICAgICAgY29uc3Qgb2JqID0gey4uLmNhcmRJbmZvLFtjYXJkUHJvcC51cmxdOiBjYXJkSW5mby5ibG9iZmlsZXVybCxbY2FyZFByb3AuY2FwdGlvbl06IGNhcmRJbmZvLmZpbGVjYXB0aW9uLFtjYXJkUHJvcC5leHRlbnNpb25dOiBjYXJkSW5mby5maWxlZXh0ZW5zaW9ufTtcbiAgICAgIHJldHVybiBvYmo7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjYXJkSW5mbztcbiAgICB9XG4gIH1cblxuICBzYXZlQ2FwdGlvbihldmVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuZGF0YSAmJiBldmVudCkge1xuICAgICAgbGV0IGFyciA9IFsuLi50aGlzLmRhdGFdO1xuICAgICAgY29uc3QgaW5kZXggPSBhcnIuZmluZEluZGV4KChpKSA9PiBpLmJsb2JmaWxldXJsID09PSBldmVudC5ibG9iZmlsZXVybCk7XG4gICAgICBsZXQgb2JqID0gYXJyW2luZGV4XTtcbiAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgb2JqLmZpbGVjYXB0aW9uID0gZXZlbnQuY2FwdGlvbjtcbiAgICAgICAgYXJyLnNwbGljZShpbmRleCwgMSwgb2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLmRhdGEgPSBhcnI7XG4gICAgICAgIHRoaXMuY2FyZFsnY2hhbmdlJ10gPSB0cnVlO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMuY2FyZCAmJiB0aGlzLmNhcmQ/Lm9uQ2FwdGlvblNhdmUpIHtcbiAgICAgICAgb2JqID0gdGhpcy5yZXBsYWNlUHJvcE5hbWUob2JqKTtcbiAgICAgICAgdGhpcy5jYXJkLm9uQ2FwdGlvblNhdmUob2JqKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbkNsaWNrRXZlbnQoZGF0YTogYW55LCBpbmRleDogbnVtYmVyKXtcbiAgICBkYXRhWydpbmRleCddID0gaW5kZXg7XG4gICAgdGhpcy5zZWxlY3RlZENhcmQuZW1pdChkYXRhKTtcbiAgfVxuXG59XG4iLCI8IS0tIERpc3BsYXkgRmlsZXMgQ2FyZCAtLT5cbjxwLWNvbmZpcm1EaWFsb2cga2V5PVwiaGFuZGxlY29sdW1uQWN0aW9uc1wiPjwvcC1jb25maXJtRGlhbG9nPlxuPGRpdlxuICBjZGtEcm9wTGlzdFxuICBjZGtEcm9wTGlzdE9yaWVudGF0aW9uPVwiaG9yaXpvbnRhbFwiXG4gIGNsYXNzPVwiZXhhbXBsZS1saXN0XCJcbiAgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJkcmFnQW5kRHJvcCgkZXZlbnQpXCJcbj5cbiAgPGRpdiBcbiAgY2xhc3M9XCJmbGV4IGNhcmRzLXdyYXBwZXJcIiBcbiAgW25nU3R5bGVdPVwieyB3aWR0aDogd2lkdGgsIGhlaWdodDogaGVpZ2h0IH1cIiBcbiAgKm5nSWY9XCJkYXRhXCIgXG4gIFtjbGFzc109XCJjYXJkICYmIGNhcmQuY2xhc3MgPyBjYXJkLmNsYXNzIDogJydcIj5cbiAgICA8ZGl2XG4gICAgICBjZGtEcmFnXG4gICAgICBjbGFzcz1cImV4YW1wbGUtYm94IGZsZXggZmxleC1jb2x1bW4gY2FyZHMtd3JhcHBlclwiXG4gICAgICBbY2xhc3NdPVwiXG4gICAgICAgIGNhcmQgJiYgY2FyZC53aWR0aCAmJiBjYXJkLndpZHRoLmxlbmd0aCA+IDBcbiAgICAgICAgICA/ICdjb2wtJyArIGNhcmQud2lkdGhcbiAgICAgICAgICA6ICdjb2wtMydcbiAgICAgIFwiXG4gICAgICAqbmdGb3I9XCJsZXQgZmlsZSBvZiBkYXRhOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgIChjbGljayk9XCJvbkNsaWNrRXZlbnQoZmlsZSxpKVwiXG4gICAgICBbbmdDbGFzc109XCJmaWxlLnNlbGVjdGVkQ2FyZCA/IGZpbGUuc2VsZWN0ZWRDYXJkIDogJydcIlxuICAgID5cbiAgICAgIDwhLS0gc3RhcnQgY2FyZHMgaW1hZ2UgZnVuY3Rpb25hbGl0eSAtLT5cbiAgICAgIDxzZS1maWxlXG4gICAgICAgIFt1cmxdPVwiZmlsZS5ibG9iZmlsZXVybFwiXG4gICAgICAgIFt0eXBlXT1cImZpbGUuZmlsZWV4dGVuc2lvblwiXG4gICAgICAgIFtjYXB0aW9uXT1cImZpbGU/LmZpbGVjYXB0aW9uXCJcbiAgICAgICAgW2hlaWdodF09XCJjYXJkPy5oZWlnaHRcIlxuICAgICAgICBbYWxsb3dEb3dubG9hZEZpbGVdPVwiY2FyZD8uYWxsb3dEb3dubG9hZFwiXG4gICAgICAgIFthbGxvd0VkaXRhYmxlQ2FwdGlvbl09XCJjYXJkPy5hbGxvd0VkaXRhYmxlQ2FwdGlvblwiXG4gICAgICAgIFthbGxvd0RlbGV0ZUZpbGVdPVwiY2FyZD8uYWxsb3dEZWxldGVcIlxuICAgICAgICBbbmFtZV09XCJmaWxlLmJsb2JmaWxldXJsXCJcbiAgICAgICAgW2lkXT1cImZpbGUuZmlsZWV4dGVuc2lvblwiXG4gICAgICAgIChvbkRlbGV0ZUV2ZW50KT1cImRlbGV0ZUltYWdlKCRldmVudClcIlxuICAgICAgICAob25TYXZlRXZlbnQpPVwic2F2ZUNhcHRpb24oJGV2ZW50KVwiXG4gICAgICA+PC9zZS1maWxlPlxuICAgICAgPCEtLSBFbmQgY2FyZHMgaW1hZ2UgZnVuY3Rpb25hbGl0eSAtLT5cblxuICAgICAgPCEtLSBzdGFydCBmb3JtIGZ1bmN0aW9uYWxpdHkgaW4gY2FyZCAtLT5cbiAgICAgIDxzZS1mb3JtLXV0aWxcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRlbnRcIlxuICAgICAgICBbZm9ybV09XCJmaWxlLmR5bmFtaWNmb3JtXCJcbiAgICAgICAgW2hpZGVTYXZlQnV0dG9uXT1cInRydWVcIlxuICAgICAgICBbaGlkZUNhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcbiAgICAgID48L3NlLWZvcm0tdXRpbD5cbiAgICAgIDwhLS0gRW5kIGZvcm0gZnVuY3Rpb25hbGl0eSBpbiBjYXJkIC0tPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIGluIGNhc2Ugb2YgZm9ybSBhbmQgZGF0YSBpcyBlbXB0eSBvciBudWxsIC0tPlxuICA8ZGl2ICpuZ0lmPVwiZHluYW1pY0Zvcm0gJiYgKCFkYXRhIHx8IGRhdGEubGVuZ3RoID09IDApXCI+XG4gICAgPHNlLWZvcm0tdXRpbFxuICAgICAgKm5nSWY9XCJkeW5hbWljRm9ybVwiXG4gICAgICBbZm9ybV09XCJkeW5hbWljRm9ybVwiXG4gICAgICBbaGlkZVNhdmVCdXR0b25dPVwidHJ1ZVwiXG4gICAgICBbaGlkZUNhbmNlbEJ1dHRvbl09XCJ0cnVlXCJcbiAgICA+PC9zZS1mb3JtLXV0aWw+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -58,6 +58,18 @@ export class ReportFilterComponent {
58
58
  if (matchKey && matchKey.length > 0) {
59
59
  field.value = param[matchKey];
60
60
  }
61
+ else if (this.config?.data?.showDialog) {
62
+ const paramKey = Object.keys(param)[0];
63
+ const index = this.formFields.findIndex((formField) => formField.field === paramKey);
64
+ if (paramKey && param[paramKey]) {
65
+ if (index > -1) {
66
+ this.formFields[index] = { field: paramKey, label: paramKey, value: param[paramKey], column: 4, control: EFormControl.INPUT };
67
+ }
68
+ else {
69
+ this.formFields.push({ field: paramKey, label: paramKey, value: param[paramKey], column: 4, control: EFormControl.INPUT });
70
+ }
71
+ }
72
+ }
61
73
  });
62
74
  });
63
75
  }
@@ -117,4 +129,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
117
129
  }], ctorParameters: function () { return [{ type: i1.DynamicDialogConfig, decorators: [{
118
130
  type: Optional
119
131
  }] }, { type: i2.RequestService }, { type: i3.FormService }, { type: i4.AlertService }]; } });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL3JlcG9ydC9yZXBvcnQtRmlsdGVyL3JlcG9ydC1maWx0ZXIvcmVwb3J0LWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL3JlcG9ydC9yZXBvcnQtRmlsdGVyL3JlcG9ydC1maWx0ZXIvcmVwb3J0LWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFpQixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkUsT0FBTyxFQUFFLFlBQVksRUFBNEIsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7QUFVMUYsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUErQixNQUEyQixFQUFTLGNBQThCLEVBQVUsV0FBdUIsRUFBVSxZQUEwQjtRQUF2SSxXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUFTLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWM7UUFGdEssZUFBVSxHQUFpQixFQUFFLENBQUM7SUFFNEksQ0FBQztJQUUzSyxRQUFRO1FBQ04sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFFN0IsQ0FBQztJQUNELGNBQWM7UUFDWixJQUFJLENBQUMsV0FBVyxHQUFHO1lBQ2pCLFlBQVksRUFBQztnQkFDWDtvQkFDRSxNQUFNLEVBQUU7d0JBQ04sR0FBRyxJQUFJLENBQUMsVUFBVTt3QkFDbkI7NEJBQ0MsS0FBSyxFQUFFLGlCQUFpQjs0QkFDeEIsT0FBTyxFQUFFLFlB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Q3RDLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1lBQ2QsTUFBTSxNQUFNLEdBQUcsUUFBUSxFQUFFLE9BQU8sRUFBRSxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUM3RCxNQUFNLFFBQVEsR0FBRyxNQUFNLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDdkYsQ0FBQyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7WUFDdEIsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0IsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1YsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0IsQ0FBQyxFQUNELENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDUixJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVwQyxDQUFDLENBQ0YsQ0FBQztJQUNOLENBQUM7aUlBNUdVLHFCQUFxQjtxSEFBckIscUJBQXFCLHdEQ2JsQyw4SUFPQTs7MkZETWEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjs7MEJBUWYsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlcXVlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvcmVxdWVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IER5bmFtaWNEaWFsb2dDb25maWcgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xuaW1wb3J0IHsgRUZvcm1Db250cm9sLCBJRHluYW1pY0Zvcm0sIElGb3JtRmllbGQgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy9hbGVydC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvZm9ybS5zZXJ2aWNlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZS1yZXBvcnQtZmlsdGVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlcG9ydC1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZXBvcnQtZmlsdGVyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUmVwb3J0RmlsdGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZHluYW1pY0Zvcm06SUR5bmFtaWNGb3JtO1xuICBmb3JtRmllbGRzOiBJRm9ybUZpZWxkW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgY29uZmlnOiBEeW5hbWljRGlhbG9nQ29uZmlnLHByaXZhdGUgcmVxdWVzdFNlcnZpY2U6IFJlcXVlc3RTZXJ2aWNlLCBwcml2YXRlIGZvcm1TZXJ2aWNlOkZvcm1TZXJ2aWNlLCBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNyZWF0ZUR5bmFtaWNGaWVsZHMoKTtcbiAgIFxuICB9XG4gIGluaXRpYWxpemVGb3JtKCl7XG4gICAgdGhpcy5keW5hbWljRm9ybSA9IHtcbiAgICAgIGZvcm1TZWN0aW9uczpbXG4gICAgICAgIHtcbiAgICAgICAgICBmaWVsZHM6IFtcbiAgICAgICAgICAgIC4uLnRoaXMuZm9ybUZpZWxkcyxcbiAgICAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6ICdEb3dubG9hZCBSZXBvcnQnLFxuICAgICAgICAgICAgY29udHJvbDogRUZvcm1Db250cm9sLkFERF9CVVRUT04sXG4gICAgICAgICAgICBoaWRkZW46IHRoaXMuY29uZmlnPy5kYXRhPy5oaWRlR2VuZXJhdGVSZXBvcnRCdG4sXG4gICAgICAgICAgICBvbkNsaWNrOiAoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuZG93bmxvYWRSZXBvcnQoKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgXVxuICAgICAgXG4gICAgfVxuICB9XG4gIGNyZWF0ZUR5bmFtaWNGaWVsZHMoKSB7XG4gICAgdGhpcy5yZXF1ZXN0U2VydmljZS5nZXRPbmU8UmVzcG9uc2UsIGFueT4oJy9SZXBvcnRDb25maWcvQnlJZCcsdGhpcy5jb25maWcuZGF0YT8uSWQpLnN1YnNjcmliZShcbiAgICAgICAgKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHJlcG9ydEpzb24gPSBKU09OLnBhcnNlKGRhdGE/LnJlcG9ydCk7XG4gICAgICAgICAgdGhpcy5mb3JtRmllbGRzID0gcmVwb3J0SnNvbj8uRm9ybUZpZWxkcztcbiAgICAgICAgICB0aGlzLnNldFBhcmFtRmllbGRWYWx1ZSgpO1xuICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZUZvcm0oKTtcbiAgICAgICAgICAvLyBzZXQgZHJvcGRvd24gZGF0YSBiYXNlZCBvbiBtYXRjaGVkIGZpZWxkLlxuICAgICAgICAgIHRoaXMuc2V0RHJvcERvd25EYXRhKHJlcG9ydEpzb24pO1xuICAgICAgICB9LFxuICAgICAgICAoZXJyb3IpID0+IHtcbiAgICAgICAgICB0aGlzLmluaXRpYWxpemVGb3JtKCk7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG4gIHNldFBhcmFtRmllbGRWYWx1ZSgpe1xuICAgIGlmKHRoaXMuY29uZmlnLmRhdGEgJiYgdGhpcy5jb25maWcuZGF0YS5wYXJhbT8ubGVuZ3RoID4gMCl7XG4gICAgICB0aGlzLmNvbmZpZy5kYXRhLnBhcmFtLmZvckVhY2goKHBhcmFtOiBhbnkpPT57XG4gICAgICAgIHRoaXMuZm9ybUZpZWxkcy5mb3JFYWNoKChmaWVsZCk9PntcbiAgICAgICAgICBjb25zdCBtYXRjaEtleSA9IE9iamVjdC5rZXlzKHBhcmFtKT8uZmluZCgoa2V5KT0+IGtleT8udG9Mb3dlckNhc2UoKSA9PT0gZmllbGQuZmllbGQ/LnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICAgIGlmKG1hdGNoS2V5ICYmIG1hdGNoS2V5Lmxlbmd0aCA+IDApe1xuICAgICAgICAgICAgZmllbGQudmFsdWUgPSBwYXJhbVttYXRjaEtleV07XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHNldERyb3BEb3duRGF0YShyZXBvcnRKc29uOiBhbnkpIHtcbiAgICByZXBvcnRKc29uLlBhcmFtZXRlcnM/LmZvckVhY2goKHJlY29yZDogYW55KSA9PiB7XG4gICAgIGlmKHJlY29yZC5pc3VuaXF1ZWtleSl7XG4gICAgICB0aGlzLnJlcXVlc3RTZXJ2aWNlLmdldDxhbnlbXSwgYW55PignL0RhdGEvRmV0Y2gnLCB7XG4gICAgICAgIHVuaXF1ZUtleTogcmVjb3JkLmlzdW5pcXVla2V5LFxuICAgICAgICBmaWx0ZXJzOiBbXVxuICAgICAgfSkuc3Vic2NyaWJlKChyZXNwb25zZTphbnkpPT57XG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2Uuc2V0Rm9ybUZpZWxkUHJvcCh0aGlzLmR5bmFtaWNGb3JtLCByZWNvcmQucGFyYW1uYW1lLCBbXG4gICAgICAgICAgeyBuYW1lOiAnZGF0YScsIHZhbHVlOiByZXNwb25zZS5yZWNvcmRzIH0sIFxuICAgICAgICBdKTsgICAgICBcbiAgICAgIH0sKGVycm9yKSA9PiB7XG4gICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFwaUVycm9yKGVycm9yKTtcbiAgICAgIH0pXG4gICAgfVxuICAgIH0pO1xuICB9XG4gIGdldEZpbHRlcnMoKXtcbiAgICBsZXQgZmlsdGVyczogYW55ID0gW107XG4gICAgdGhpcy5keW5hbWljRm9ybT8uZm9ybVNlY3Rpb25zPy5mb3JFYWNoKChzZWN0aW9uKT0+e1xuICAgICAgc2VjdGlvbi5maWVsZHM/LmZvckVhY2goKGZpZWxkKT0+e1xuICAgICAgICBpZihmaWVsZCAmJiBmaWVsZC52YWx1ZSl7XG4gICAgICAgICAgZmlsdGVycy5wdXNoKHtmaWVsZDogZmllbGQuZmllbGQsIG1hdGNoTW9kZTogJ2VxdWFsJywgb3BlcmF0b3I6J2FuZCcsIHZhbHVlOiBmaWVsZC52YWx1ZX0pO1xuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfSk7IFxuICAgIHJldHVybiBmaWx0ZXJzO1xuICB9XG4gIFxuICBkb3dubG9hZFJlcG9ydCgpeyAgXG4gICAgY29uc3QgZmlsdGVyczphbnkgPSB0aGlzLmdldEZpbHRlcnMoKTsgXG4gICAgIHRoaXMucmVxdWVzdFNlcnZpY2UuZG93bmxvYWQoJy9SZXBvcnQvR2VuZXJhdGUnLCB7IElkOiB0aGlzLmNvbmZpZz8uZGF0YT8uSWQsIGZpbHRlcnM6IGZpbHRlcnMgfSlcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChyZXNwb25zZSkgPT4ge1xuICAgICAgICAgIHZhciBuZXdCbG9iID0gbmV3IEJsb2IoW3Jlc3BvbnNlLmJvZHldLCB7IHR5cGU6ICdhcHBsaWNhdGlvbi9wZGYnIH0pO1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSB3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChuZXdCbG9iKTtcbiAgICAgICAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgICAgIGEuaHJlZiA9IGRhdGE7XG4gICAgICAgICAgY29uc3QgaGVhZGVyID0gcmVzcG9uc2U/LmhlYWRlcnM/LmdldCgnQ29udGVudC1EaXNwb3NpdGlvbicpO1xuICAgICAgICAgIGNvbnN0IGZpbGVOYW1lID0gaGVhZGVyPy5zcGxpdCgnZmlsZW5hbWU9Jyk/LlsxXT8uc3BsaXQoXCI7XCIpWzBdPy5yZXBsYWNlQWxsKC9cXFwiL2csICcnKTtcbiAgICAgICAgICBhLmRvd25sb2FkID0gZmlsZU5hbWU7XG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcbiAgICAgICAgICBhLmNsaWNrKCk7XG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYXBpRXJyb3IoZXJyb3IpO1xuICBcbiAgICAgICAgfVxuICAgICAgKTtcbiAgfVxuXG59XG4iLCI8c2UtZm9ybS11dGlsICBcbipuZ0lmPVwiZHluYW1pY0Zvcm1cIlxuW2Zvcm1dPVwiZHluYW1pY0Zvcm1cIlxuW2hpZGVTYXZlQnV0dG9uXT1cInRydWVcIlxuW2hpZGVDYW5jZWxCdXR0b25dPVwidHJ1ZVwiXG4+XG48L3NlLWZvcm0tdXRpbD5cbiJdfQ==
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL3JlcG9ydC9yZXBvcnQtRmlsdGVyL3JlcG9ydC1maWx0ZXIvcmVwb3J0LWZpbHRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvY29tcG9uZW50cy9iYXNlL3JlcG9ydC9yZXBvcnQtRmlsdGVyL3JlcG9ydC1maWx0ZXIvcmVwb3J0LWZpbHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFpQixRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHbkUsT0FBTyxFQUFFLFlBQVksRUFBNEIsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7Ozs7QUFVMUYsTUFBTSxPQUFPLHFCQUFxQjtJQUloQyxZQUErQixNQUEyQixFQUFTLGNBQThCLEVBQVUsV0FBdUIsRUFBVSxZQUEwQjtRQUF2SSxXQUFNLEdBQU4sTUFBTSxDQUFxQjtRQUFTLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQVUsaUJBQVksR0FBWixZQUFZLENBQWM7UUFGdEssZUFBVSxHQUFpQixFQUFFLENBQUM7SUFFNEksQ0FBQztJQUUzSyxRQUFRO1FBQ04sSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFFN0IsQ0FBQztJQUNELGNBQWM7UUFDWixJQUFJLENBQUMsV0FBVyxHQUFHO1lBQ2pCLFlBQVksRUFBQztnQkFDWDtvQkFDRSxNQUFNLEVBQUU7d0JBQ04sR0FBRyxJQUFJLENBQUMsVUFBVTt3QkFDbkI7NEJBQ0MsS0FBSyxFQUFFLGlCQUFpQjs0QkFDeEIsT0FBTyxFQUFFLFlB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Q0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZGLENBQUMsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1lBQ3RCLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzdCLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNWLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9CLENBQUMsRUFDRCxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ1IsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFcEMsQ0FBQyxDQUNGLENBQUM7SUFDTixDQUFDO2lJQXRIVSxxQkFBcUI7cUhBQXJCLHFCQUFxQix3RENibEMsOElBT0E7OzJGRE1hLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxrQkFBa0I7OzBCQVFmLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXF1ZXN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL3JlcXVlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nQ29uZmlnIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcbmltcG9ydCB7IEVGb3JtQ29udHJvbCwgSUR5bmFtaWNGb3JtLCBJRm9ybUZpZWxkIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbW9kZWxzL2Zvcm0ubW9kZWwnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc2VydmljZXMvYWxlcnQuc2VydmljZSc7XG5pbXBvcnQgeyBGb3JtU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2UtcmVwb3J0LWZpbHRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZXBvcnQtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVwb3J0LWZpbHRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFJlcG9ydEZpbHRlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGR5bmFtaWNGb3JtOklEeW5hbWljRm9ybTtcbiAgZm9ybUZpZWxkczogSUZvcm1GaWVsZFtdID0gW107XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGNvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZyxwcml2YXRlIHJlcXVlc3RTZXJ2aWNlOiBSZXF1ZXN0U2VydmljZSwgcHJpdmF0ZSBmb3JtU2VydmljZTpGb3JtU2VydmljZSwgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jcmVhdGVEeW5hbWljRmllbGRzKCk7XG4gICBcbiAgfVxuICBpbml0aWFsaXplRm9ybSgpe1xuICAgIHRoaXMuZHluYW1pY0Zvcm0gPSB7XG4gICAgICBmb3JtU2VjdGlvbnM6W1xuICAgICAgICB7XG4gICAgICAgICAgZmllbGRzOiBbXG4gICAgICAgICAgICAuLi50aGlzLmZvcm1GaWVsZHMsXG4gICAgICAgICAgIHtcbiAgICAgICAgICAgIGxhYmVsOiAnRG93bmxvYWQgUmVwb3J0JyxcbiAgICAgICAgICAgIGNvbnRyb2w6IEVGb3JtQ29udHJvbC5BRERfQlVUVE9OLFxuICAgICAgICAgICAgaGlkZGVuOiB0aGlzLmNvbmZpZz8uZGF0YT8uaGlkZUdlbmVyYXRlUmVwb3J0QnRuLFxuICAgICAgICAgICAgb25DbGljazogKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmRvd25sb2FkUmVwb3J0KCk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICAgIFxuICAgIH1cbiAgfVxuICBjcmVhdGVEeW5hbWljRmllbGRzKCkge1xuICAgIHRoaXMucmVxdWVzdFNlcnZpY2UuZ2V0T25lPFJlc3BvbnNlLCBhbnk+KCcvUmVwb3J0Q29uZmlnL0J5SWQnLHRoaXMuY29uZmlnLmRhdGE/LklkKS5zdWJzY3JpYmUoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCByZXBvcnRKc29uID0gSlNPTi5wYXJzZShkYXRhPy5yZXBvcnQpO1xuICAgICAgICAgIHRoaXMuZm9ybUZpZWxkcyA9IHJlcG9ydEpzb24/LkZvcm1GaWVsZHM7XG4gICAgICAgICAgdGhpcy5zZXRQYXJhbUZpZWxkVmFsdWUoKTtcbiAgICAgICAgICB0aGlzLmluaXRpYWxpemVGb3JtKCk7XG4gICAgICAgICAgLy8gc2V0IGRyb3Bkb3duIGRhdGEgYmFzZWQgb24gbWF0Y2hlZCBmaWVsZC5cbiAgICAgICAgICB0aGlzLnNldERyb3BEb3duRGF0YShyZXBvcnRKc29uKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhpcy5pbml0aWFsaXplRm9ybSgpO1xuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKGVycm9yKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgfVxuICBzZXRQYXJhbUZpZWxkVmFsdWUoKSB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmRhdGEgJiYgdGhpcy5jb25maWcuZGF0YS5wYXJhbT8ubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5jb25maWcuZGF0YS5wYXJhbS5mb3JFYWNoKChwYXJhbTogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuZm9ybUZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgICAgIGNvbnN0IG1hdGNoS2V5ID0gT2JqZWN0LmtleXMocGFyYW0pPy5maW5kKChrZXkpID0+IGtleT8udG9Mb3dlckNhc2UoKSA9PT0gZmllbGQuZmllbGQ/LnRvTG93ZXJDYXNlKCkpO1xuICAgICAgICAgIGlmIChtYXRjaEtleSAmJiBtYXRjaEtleS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBmaWVsZC52YWx1ZSA9IHBhcmFtW21hdGNoS2V5XTtcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuY29uZmlnPy5kYXRhPy5zaG93RGlhbG9nKSB7XG4gICAgICAgICAgICBjb25zdCBwYXJhbUtleSA9IE9iamVjdC5rZXlzKHBhcmFtKVswXTtcbiAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5mb3JtRmllbGRzLmZpbmRJbmRleCgoZm9ybUZpZWxkKSA9PiBmb3JtRmllbGQuZmllbGQgPT09IHBhcmFtS2V5KTtcbiAgICAgICAgICAgIGlmIChwYXJhbUtleSAmJiBwYXJhbVtwYXJhbUtleV0pIHtcbiAgICAgICAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1GaWVsZHNbaW5kZXhdID0geyBmaWVsZDogcGFyYW1LZXksIGxhYmVsOiBwYXJhbUtleSwgdmFsdWU6IHBhcmFtW3BhcmFtS2V5XSwgY29sdW1uOiA0LCBjb250cm9sOiBFRm9ybUNvbnRyb2wuSU5QVVQgfTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1GaWVsZHMucHVzaCh7IGZpZWxkOiBwYXJhbUtleSwgbGFiZWw6IHBhcmFtS2V5LCB2YWx1ZTogcGFyYW1bcGFyYW1LZXldLCBjb2x1bW46IDQsIGNvbnRyb2w6IEVGb3JtQ29udHJvbC5JTlBVVCB9KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBzZXREcm9wRG93bkRhdGEocmVwb3J0SnNvbjogYW55KSB7XG4gICAgcmVwb3J0SnNvbi5QYXJhbWV0ZXJzPy5mb3JFYWNoKChyZWNvcmQ6IGFueSkgPT4ge1xuICAgICBpZihyZWNvcmQuaXN1bmlxdWVrZXkpe1xuICAgICAgdGhpcy5yZXF1ZXN0U2VydmljZS5nZXQ8YW55W10sIGFueT4oJy9EYXRhL0ZldGNoJywge1xuICAgICAgICB1bmlxdWVLZXk6IHJlY29yZC5pc3VuaXF1ZWtleSxcbiAgICAgICAgZmlsdGVyczogW11cbiAgICAgIH0pLnN1YnNjcmliZSgocmVzcG9uc2U6YW55KT0+e1xuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLnNldEZvcm1GaWVsZFByb3AodGhpcy5keW5hbWljRm9ybSwgcmVjb3JkLnBhcmFtbmFtZSwgW1xuICAgICAgICAgIHsgbmFtZTogJ2RhdGEnLCB2YWx1ZTogcmVzcG9uc2UucmVjb3JkcyB9LCBcbiAgICAgICAgXSk7ICAgICAgXG4gICAgICB9LChlcnJvcikgPT4ge1xuICAgICAgICB0aGlzLmFsZXJ0U2VydmljZS5hcGlFcnJvcihlcnJvcik7XG4gICAgICB9KVxuICAgIH1cbiAgICB9KTtcbiAgfVxuICBnZXRGaWx0ZXJzKCl7XG4gICAgbGV0IGZpbHRlcnM6IGFueSA9IFtdO1xuICAgIHRoaXMuZHluYW1pY0Zvcm0/LmZvcm1TZWN0aW9ucz8uZm9yRWFjaCgoc2VjdGlvbik9PntcbiAgICAgIHNlY3Rpb24uZmllbGRzPy5mb3JFYWNoKChmaWVsZCk9PntcbiAgICAgICAgaWYoZmllbGQgJiYgZmllbGQudmFsdWUpe1xuICAgICAgICAgIGZpbHRlcnMucHVzaCh7ZmllbGQ6IGZpZWxkLmZpZWxkLCBtYXRjaE1vZGU6ICdlcXVhbCcsIG9wZXJhdG9yOidhbmQnLCB2YWx1ZTogZmllbGQudmFsdWV9KTtcbiAgICAgICAgfTtcbiAgICAgIH0pO1xuICAgIH0pOyBcbiAgICByZXR1cm4gZmlsdGVycztcbiAgfVxuICBcbiAgZG93bmxvYWRSZXBvcnQoKXsgIFxuICAgIGNvbnN0IGZpbHRlcnM6YW55ID0gdGhpcy5nZXRGaWx0ZXJzKCk7IFxuICAgICB0aGlzLnJlcXVlc3RTZXJ2aWNlLmRvd25sb2FkKCcvUmVwb3J0L0dlbmVyYXRlJywgeyBJZDogdGhpcy5jb25maWc/LmRhdGE/LklkLCBmaWx0ZXJzOiBmaWx0ZXJzIH0pXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICB2YXIgbmV3QmxvYiA9IG5ldyBCbG9iKFtyZXNwb25zZS5ib2R5XSwgeyB0eXBlOiAnYXBwbGljYXRpb24vcGRmJyB9KTtcbiAgICAgICAgICBjb25zdCBkYXRhID0gd2luZG93LlVSTC5jcmVhdGVPYmplY3RVUkwobmV3QmxvYik7XG4gICAgICAgICAgY29uc3QgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTtcbiAgICAgICAgICBhLmhyZWYgPSBkYXRhO1xuICAgICAgICAgIGNvbnN0IGhlYWRlciA9IHJlc3BvbnNlPy5oZWFkZXJzPy5nZXQoJ0NvbnRlbnQtRGlzcG9zaXRpb24nKTtcbiAgICAgICAgICBjb25zdCBmaWxlTmFtZSA9IGhlYWRlcj8uc3BsaXQoJ2ZpbGVuYW1lPScpPy5bMV0/LnNwbGl0KFwiO1wiKVswXT8ucmVwbGFjZUFsbCgvXFxcIi9nLCAnJyk7XG4gICAgICAgICAgYS5kb3dubG9hZCA9IGZpbGVOYW1lO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7XG4gICAgICAgICAgYS5jbGljaygpO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoYSk7XG4gICAgICAgIH0sXG4gICAgICAgIChlcnJvcikgPT4ge1xuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmFwaUVycm9yKGVycm9yKTtcbiAgXG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cblxufVxuIiwiPHNlLWZvcm0tdXRpbCAgXG4qbmdJZj1cImR5bmFtaWNGb3JtXCJcbltmb3JtXT1cImR5bmFtaWNGb3JtXCJcbltoaWRlU2F2ZUJ1dHRvbl09XCJ0cnVlXCJcbltoaWRlQ2FuY2VsQnV0dG9uXT1cInRydWVcIlxuPlxuPC9zZS1mb3JtLXV0aWw+XG4iXX0=
@@ -1,2 +1,9 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvbW9kZWxzL3Jlc3BvbnNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFJlc3BvbnNlPFQ+IHtcbiAgdXJsOiBhbnk7XG4gIHRvdGFsUmVjb3JkczogYW55O1xuICByZWNvcmRzOiBUO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVudmlyb25tZW50IHtcbiAgcHJvZHVjdGlvbjogYm9vbGVhbjtcbiAgYmFzZVVybDogc3RyaW5nO1xuICBiYXNlQXV0aFVybDogc3RyaW5nO1xufVxuIl19
1
+ export var ESystemConfig;
2
+ (function (ESystemConfig) {
3
+ ESystemConfig["FURNITUREITEMPICTUREPATH"] = "FurnitureItemPicutrePath";
4
+ ESystemConfig["FILEROOTPATH"] = "FileRootPath";
5
+ ESystemConfig["EMPLOYEEPICTUREPATH"] = "EmployeePicutrePath";
6
+ ESystemConfig["REPORTPATH"] = "ReportPath";
7
+ ESystemConfig["SUITEPICTUREPATH"] = "SuitePicutrePath";
8
+ })(ESystemConfig || (ESystemConfig = {}));
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvbW9kZWxzL3Jlc3BvbnNlLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlBLE1BQU0sQ0FBTixJQUFZLGFBTVg7QUFORCxXQUFZLGFBQWE7SUFDdkIsc0VBQXFELENBQUE7SUFDckQsOENBQTZCLENBQUE7SUFDN0IsNERBQTJDLENBQUE7SUFDM0MsMENBQXlCLENBQUE7SUFDekIsc0RBQXFDLENBQUE7QUFDdkMsQ0FBQyxFQU5XLGFBQWEsS0FBYixhQUFhLFFBTXhCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBSZXNwb25zZTxUPiB7XG4gIHVybDogYW55O1xuICB0b3RhbFJlY29yZHM6IGFueTtcbiAgcmVjb3JkczogVDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudCB7XG4gIHByb2R1Y3Rpb246IGJvb2xlYW47XG4gIGJhc2VVcmw6IHN0cmluZztcbiAgYmFzZUF1dGhVcmw6IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gRVN5c3RlbUNvbmZpZyB7XG4gIEZVUk5JVFVSRUlURU1QSUNUVVJFUEFUSCA9ICdGdXJuaXR1cmVJdGVtUGljdXRyZVBhdGgnLFxuICBGSUxFUk9PVFBBVEggPSAnRmlsZVJvb3RQYXRoJyxcbiAgRU1QTE9ZRUVQSUNUVVJFUEFUSCA9ICdFbXBsb3llZVBpY3V0cmVQYXRoJyxcbiAgUkVQT1JUUEFUSCA9ICdSZXBvcnRQYXRoJyxcbiAgU1VJVEVQSUNUVVJFUEFUSCA9ICdTdWl0ZVBpY3V0cmVQYXRoJyxcbn1cbiJdfQ==
@@ -42,7 +42,7 @@ export class ReportService {
42
42
  height: '100%',
43
43
  header: 'Generate Report',
44
44
  style: { background: '#fff' },
45
- data: { Id: repId, param: params },
45
+ data: { Id: repId, param: params, showDialog },
46
46
  });
47
47
  }
48
48
  else {
@@ -155,4 +155,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImpor
155
155
  providedIn: 'root'
156
156
  }]
157
157
  }], ctorParameters: function () { return [{ type: i1.DialogService }, { type: i2.RequestService }, { type: i3.AlertService }]; } });
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvc2VydmljZXMvcmVwb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUE0QixNQUFNLHNCQUFzQixDQUFDO0FBRTlFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtFQUErRSxDQUFDOzs7OztBQU90SCxNQUFNLE9BQU8sYUFBYTtJQUd4QixZQUFtQixhQUE0QixFQUNyQyxjQUE4QixFQUM5QixZQUEwQjtRQUZqQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFKcEMsZUFBVSxHQUFpQixFQUFFLENBQUM7UUFDOUIsZUFBVSxHQUFRLEVBQUUsQ0FBQztJQUdvQixDQUFDO0lBRTFDLGNBQWMsQ0FBQyxLQUFhLEVBQUUsTUFBVyxFQUFFLGFBQXNCLEtBQUssRUFBRSxPQUFxQixFQUFFO1FBQzdGLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxJQUFJO1FBQ2pELElBQUksQ0FBQyxjQUFjO2FBQ2hCLE1BQU0sQ0FBZ0Isb0JB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QyxLQUFLO29CQUNsQixTQUFTLEVBQUUsT0FBTztvQkFDbEIsUUFBUSxFQUFFLEtBQUs7b0JBQ2YsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO2lCQUNuQixDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztpSUEzSlUsYUFBYTtxSUFBYixhQUFhLGNBRlosTUFBTTs7MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFRm9ybUNvbnRyb2wsIElEeW5hbWljRm9ybSwgSUZvcm1GaWVsZCB9IGZyb20gJy4uL21vZGVscy9mb3JtLm1vZGVsJztcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICdwcmltZW5nL2R5bmFtaWNkaWFsb2cnO1xuaW1wb3J0IHsgUmVwb3J0RmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vY29tcG9uZW50cy9iYXNlL3JlcG9ydC9yZXBvcnQtRmlsdGVyL3JlcG9ydC1maWx0ZXIvcmVwb3J0LWZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVxdWVzdFNlcnZpY2UgfSBmcm9tICcuL3JlcXVlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2UgfSBmcm9tICcuL2FsZXJ0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBSZXBvcnRTZXJ2aWNlIHtcbiAgZm9ybUZpZWxkczogSUZvcm1GaWVsZFtdID0gW107XG4gIHBhcmFtc0NvcHk6IGFueSA9IFtdO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSxcbiAgICBwcml2YXRlIHJlcXVlc3RTZXJ2aWNlOiBSZXF1ZXN0U2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogQWxlcnRTZXJ2aWNlLCkgeyB9XG5cbiAgZG93bmxvYWRSZXBvcnQocmVwSWQ6IG51bWJlciwgcGFyYW1zOiBhbnksIHNob3dEaWFsb2c6IGJvb2xlYW4gPSBmYWxzZSwgZm9ybTogSUR5bmFtaWNGb3JtID0ge30pIHtcbiAgICBwYXJhbXM/LmZvckVhY2goKHApID0+IHtcbiAgICAgIHRoaXMucGFyYW1zQ29weS5wdXNoKE9iamVjdC5hc3NpZ24oe30sIHApKTtcbiAgICB9KTtcbiAgICB0aGlzLmNyZWF0ZUR5bmFtaWNGaWVsZHMocmVwSWQsIHBhcmFtcywgc2hvd0RpYWxvZywgZm9ybSk7XG4gIH1cblxuICBjcmVhdGVEeW5hbWljRmllbGRzKHJlcElkLCBwYXJhbXMsIHNob3dEaWFsb2csIGZvcm0pIHtcbiAgICB0aGlzLnJlcXVlc3RTZXJ2aWNlXG4gICAgICAuZ2V0T25lPFJlc3BvbnNlLCBhbnk+KCcvUmVwb3J0Q29uZmlnL0J5SWQnLCByZXBJZClcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgY29uc3QgcmVwb3J0SnNvbiA9IEpTT04ucGFyc2UoZGF0YT8ucmVwb3J0KTtcbiAgICAgICAgICAgIHRoaXMuZm9ybUZpZWxkcyA9IHJlcG9ydEpzb24/LkZvcm1GaWVsZHM7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMuZ2VuZXJhdGVSZXBvcnQocmVwSWQsIHBhcmFtcywgc2hvd0RpYWxvZywgZm9ybSlcbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuZXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgZ2VuZXJhdGVSZXBvcnQocmVwSWQ6IGFueSwgcGFyYW1zOiBhbnksIHNob3dEaWFsb2c6IGJvb2xlYW4gPSBmYWxzZSwgZm9ybTogSUR5bmFtaWNGb3JtID0ge30pIHtcbiAgICB0aGlzLmdldEZvcm1GaWVsZFZhbHVlcyhmb3JtLCBwYXJhbXMpO1xuICAgIGlmIChcbiAgICAgICh0aGlzLmZvcm1GaWVsZHMuc29tZSgoZmllbGQpID0+ICFmaWVsZC5oaWRkZW4pICYmXG4gICAgICAgIHNob3dEaWFsb2cgPT09IHVuZGVmaW5lZCkgfHxcbiAgICAgIHNob3dEaWFsb2cgPT09IHRydWVcbiAgICApIHtcbiAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5vcGVuKFJlcG9ydEZpbHRlckNvbXBvbmVudCwge1xuICAgICAgICB3aWR0aDogJzgwJScsXG4gICAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgICBoZWFkZXI6ICdHZW5lcmF0ZSBSZXBvcnQnLFxuICAgICAgICBzdHlsZToge2JhY2tncm91bmQ6ICcjZmZmJ30sXG4gICAgICAgIGRhdGE6IHsgSWQ6IHJlcElkLCBwYXJhbTogcGFyYW1zIH0sXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kb3dubG9hZFF1aWNrUmVwb3J0KHBhcmFtcywgcmVwSWQpO1xuICAgIH1cbiAgfVxuXG5cbiAgZ2V0Rm9ybUZpZWxkVmFsdWVzKGZvcm06IElEeW5hbWljRm9ybSwgcGFyYW1zOiBhbnkpIHtcbiAgICBpZiAodGhpcy5wYXJhbXNDb3B5Py5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnBhcmFtc0NvcHkuZm9yRWFjaCgocGFyYW1Db3B5KSA9PiB7XG4gICAgICAgIHZhciBrZXkgPSBPYmplY3Qua2V5cyhwYXJhbUNvcHkpWzBdO1xuICAgICAgICBpZiAocGFyYW1Db3B5W2tleV0gPT09ICcnIHx8ICFwYXJhbUNvcHlba2V5XSkge1xuICAgICAgICAgIGZvcm0/LmZvcm1TZWN0aW9ucz8uZm9yRWFjaCgoc2VjdGlvbikgPT4ge1xuICAgICAgICAgICAgc2VjdGlvbi5maWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgICAgICAgICAgaWYgKGtleS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09IGZpZWxkLmZpZWxkPy50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zLmZvckVhY2goKG9yaWdQYXJhbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgdmFyIG9yaWdLZXkgPSBPYmplY3Qua2V5cyhvcmlnUGFyYW0pWzBdO1xuICAgICAgICAgICAgICAgICAgaWYgKG9yaWdLZXkgPT0ga2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vb3JpZ1BhcmFtW29yaWdLZXldID0gZmllbGQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmaWVsZC5jb250cm9sID09IEVGb3JtQ29udHJvbC5DQUxFTkRBUikge1xuICAgICAgICAgICAgICAgICAgICAgIG9yaWdQYXJhbVtvcmlnS2V5XSA9IGZpZWxkLnZhbHVlID8gZmllbGQudmFsdWUudG9Mb2NhbGVEYXRlU3RyaW5nKCkgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgIG9yaWdQYXJhbVtvcmlnS2V5XSA9IGZpZWxkLnZhbHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgIHBhcmFtQ29weVtrZXldLnRvU3RyaW5nKCkuaW5jbHVkZXMoJ3snKSAmJlxuICAgICAgICAgIHBhcmFtQ29weVtrZXldLnRvU3RyaW5nKCkuaW5jbHVkZXMoJ30nKVxuICAgICAgICApIHtcbiAgICAgICAgICB2YXIgbmV3VmFsdWUgPSBwYXJhbUNvcHlba2V5XS5yZXBsYWNlKCd7JywgJycpLnJlcGxhY2UoJ30nLCAnJyk7XG4gICAgICAgICAgZm9ybT8uZm9ybVNlY3Rpb25zPy5mb3JFYWNoKChzZWN0aW9uKSA9PiB7XG4gICAgICAgICAgICBzZWN0aW9uLmZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgbmV3VmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSBmaWVsZC5maWVsZD8udG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMuZm9yRWFjaCgob3JpZ1BhcmFtKSA9PiB7XG4gICAgICAgICAgICAgICAgICB2YXIgb3JpZ0tleSA9IE9iamVjdC5rZXlzKG9yaWdQYXJhbSlbMF07XG4gICAgICAgICAgICAgICAgICBpZiAob3JpZ0tleSA9PSBrZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZpZWxkLmNvbnRyb2wgPT0gRUZvcm1Db250cm9sLkNBTEVOREFSKSB7XG4gICAgICAgICAgICAgICAgICAgICAgb3JpZ1BhcmFtW29yaWdLZXldID0gZmllbGQudmFsdWUgPyBmaWVsZC52YWx1ZS50b0xvY2FsZURhdGVTdHJpbmcoKSA6IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgb3JpZ1BhcmFtW29yaWdLZXldID0gZmllbGQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGRvd25sb2FkUXVpY2tSZXBvcnQocGFyYW1zLCByZXBJZCkge1xuICAgIGxldCBmaWx0ZXJzOiBhbnlbXSA9IFtdO1xuICAgIGlmIChwYXJhbXMgJiYgcGFyYW1zLmxlbmd0aCA+IDApIHtcbiAgICAgIHBhcmFtcy5mb3JFYWNoKChwYXJhbSkgPT4ge1xuICAgICAgICBPYmplY3Qua2V5cyhwYXJhbSkubWFwKChrZXkpID0+XG4gICAgICAgICAgZmlsdGVycy5wdXNoKHtcbiAgICAgICAgICAgIGZpZWxkOiBrZXksXG4gICAgICAgICAgICBtYXRjaE1vZGU6ICdlcXVhbCcsXG4gICAgICAgICAgICBvcGVyYXRvcjogJ2FuZCcsXG4gICAgICAgICAgICB2YWx1ZTogcGFyYW1ba2V5XSxcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZpbHRlcnMgPSB0aGlzLmdldEZpbHRlcnMoKTtcbiAgICB9XG5cbiAgICB0aGlzLnJlcXVlc3RTZXJ2aWNlXG4gICAgICAuZG93bmxvYWQoJy9SZXBvcnQvR2VuZXJhdGUnLCB7IElkOiByZXBJZCwgZmlsdGVyczogZmlsdGVycyB9KVxuICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdmFyIG5ld0Jsb2IgPSBuZXcgQmxvYihbcmVzcG9uc2UuYm9keV0sIHsgdHlwZTogJ2FwcGxpY2F0aW9uL3BkZicgfSk7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ld0Jsb2IpO1xuICAgICAgICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICAgICAgYS5ocmVmID0gZGF0YTtcbiAgICAgICAgICBjb25zdCBoZWFkZXIgPSByZXNwb25zZT8uaGVhZGVycz8uZ2V0KCdDb250ZW50LURpc3Bvc2l0aW9uJyk7XG4gICAgICAgICAgY29uc3QgZmlsZU5hbWUgPSBoZWFkZXJcbiAgICAgICAgICAgID8uc3BsaXQoJ2ZpbGVuYW1lPScpPy5bMV1cbiAgICAgICAgICAgID8uc3BsaXQoJzsnKVswXVxuICAgICAgICAgICAgPy5yZXBsYWNlQWxsKC9cXFwiL2csICcnKTtcbiAgICAgICAgICBhLmRvd25sb2FkID0gZmlsZU5hbWU7XG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcbiAgICAgICAgICBhLmNsaWNrKCk7XG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYXBpRXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgZ2V0RmlsdGVycygpIHtcbiAgICBsZXQgZmlsdGVyczogYW55W10gPSBbXTtcbiAgICB0aGlzLmZvcm1GaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgIGlmIChmaWVsZCAmJiBmaWVsZC52YWx1ZT8udG9TdHJpbmcoKT8ubGVuZ3RoID4gMCkge1xuICAgICAgICBmaWx0ZXJzLnB1c2goe1xuICAgICAgICAgIGZpZWxkOiBmaWVsZC5maWVsZCxcbiAgICAgICAgICBtYXRjaE1vZGU6ICdlcXVhbCcsXG4gICAgICAgICAgb3BlcmF0b3I6ICdhbmQnLFxuICAgICAgICAgIHZhbHVlOiBmaWVsZC52YWx1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGZpbHRlcnM7XG4gIH1cbn1cbiJdfQ==
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zZS11aS10b29sa2l0L3NyYy9saWIvc2VydmljZXMvcmVwb3J0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsWUFBWSxFQUE0QixNQUFNLHNCQUFzQixDQUFDO0FBRTlFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtFQUErRSxDQUFDOzs7OztBQU90SCxNQUFNLE9BQU8sYUFBYTtJQUd4QixZQUFtQixhQUE0QixFQUNyQyxjQUE4QixFQUM5QixZQUEwQjtRQUZqQixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNyQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsaUJBQVksR0FBWixZQUFZLENBQWM7UUFKcEMsZUFBVSxHQUFpQixFQUFFLENBQUM7UUFDOUIsZUFBVSxHQUFRLEVBQUUsQ0FBQztJQUdvQixDQUFDO0lBRTFDLGNBQWMsQ0FBQyxLQUFhLEVBQUUsTUFBVyxFQUFFLGFBQXNCLEtBQUssRUFBRSxPQUFxQixFQUFFO1FBQzdGLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNwQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdDLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxJQUFJO1FBQ2pELElBQUksQ0FBQyxjQUFjO2FBQ2hCLE1BQU0sQ0FBZ0Isb0JB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RSxLQUFLLENBQUMsS0FBSztvQkFDbEIsU0FBUyxFQUFFLE9BQU87b0JBQ2xCLFFBQVEsRUFBRSxLQUFLO29CQUNmLEtBQUssRUFBRSxLQUFLLENBQUMsS0FBSztpQkFDbkIsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7aUlBM0pVLGFBQWE7cUlBQWIsYUFBYSxjQUZaLE1BQU07OzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRUZvcm1Db250cm9sLCBJRHluYW1pY0Zvcm0sIElGb3JtRmllbGQgfSBmcm9tICcuLi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5pbXBvcnQgeyBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcbmltcG9ydCB7IFJlcG9ydEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvYmFzZS9yZXBvcnQvcmVwb3J0LUZpbHRlci9yZXBvcnQtZmlsdGVyL3JlcG9ydC1maWx0ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcXVlc3RTZXJ2aWNlIH0gZnJvbSAnLi9yZXF1ZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi9hbGVydC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgUmVwb3J0U2VydmljZSB7XG4gIGZvcm1GaWVsZHM6IElGb3JtRmllbGRbXSA9IFtdO1xuICBwYXJhbXNDb3B5OiBhbnkgPSBbXTtcbiAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZXF1ZXN0U2VydmljZTogUmVxdWVzdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IEFsZXJ0U2VydmljZSwpIHsgfVxuXG4gIGRvd25sb2FkUmVwb3J0KHJlcElkOiBudW1iZXIsIHBhcmFtczogYW55LCBzaG93RGlhbG9nOiBib29sZWFuID0gZmFsc2UsIGZvcm06IElEeW5hbWljRm9ybSA9IHt9KSB7XG4gICAgcGFyYW1zPy5mb3JFYWNoKChwKSA9PiB7XG4gICAgICB0aGlzLnBhcmFtc0NvcHkucHVzaChPYmplY3QuYXNzaWduKHt9LCBwKSk7XG4gICAgfSk7XG4gICAgdGhpcy5jcmVhdGVEeW5hbWljRmllbGRzKHJlcElkLCBwYXJhbXMsIHNob3dEaWFsb2csIGZvcm0pO1xuICB9XG5cbiAgY3JlYXRlRHluYW1pY0ZpZWxkcyhyZXBJZCwgcGFyYW1zLCBzaG93RGlhbG9nLCBmb3JtKSB7XG4gICAgdGhpcy5yZXF1ZXN0U2VydmljZVxuICAgICAgLmdldE9uZTxSZXNwb25zZSwgYW55PignL1JlcG9ydENvbmZpZy9CeUlkJywgcmVwSWQpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAoZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgIGNvbnN0IHJlcG9ydEpzb24gPSBKU09OLnBhcnNlKGRhdGE/LnJlcG9ydCk7XG4gICAgICAgICAgICB0aGlzLmZvcm1GaWVsZHMgPSByZXBvcnRKc29uPy5Gb3JtRmllbGRzO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmdlbmVyYXRlUmVwb3J0KHJlcElkLCBwYXJhbXMsIHNob3dEaWFsb2csIGZvcm0pXG4gICAgICAgIH0sXG4gICAgICAgIChlcnJvcikgPT4ge1xuICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLmVycm9yKGVycm9yKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgfVxuXG4gIGdlbmVyYXRlUmVwb3J0KHJlcElkOiBhbnksIHBhcmFtczogYW55LCBzaG93RGlhbG9nOiBib29sZWFuID0gZmFsc2UsIGZvcm06IElEeW5hbWljRm9ybSA9IHt9KSB7XG4gICAgdGhpcy5nZXRGb3JtRmllbGRWYWx1ZXMoZm9ybSwgcGFyYW1zKTtcbiAgICBpZiAoXG4gICAgICAodGhpcy5mb3JtRmllbGRzLnNvbWUoKGZpZWxkKSA9PiAhZmllbGQuaGlkZGVuKSAmJlxuICAgICAgICBzaG93RGlhbG9nID09PSB1bmRlZmluZWQpIHx8XG4gICAgICBzaG93RGlhbG9nID09PSB0cnVlXG4gICAgKSB7XG4gICAgICB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbihSZXBvcnRGaWx0ZXJDb21wb25lbnQsIHtcbiAgICAgICAgd2lkdGg6ICc4MCUnLFxuICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgaGVhZGVyOiAnR2VuZXJhdGUgUmVwb3J0JyxcbiAgICAgICAgc3R5bGU6IHtiYWNrZ3JvdW5kOiAnI2ZmZid9LFxuICAgICAgICBkYXRhOiB7IElkOiByZXBJZCwgcGFyYW06IHBhcmFtcyxzaG93RGlhbG9nIH0sXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kb3dubG9hZFF1aWNrUmVwb3J0KHBhcmFtcywgcmVwSWQpO1xuICAgIH1cbiAgfVxuXG5cbiAgZ2V0Rm9ybUZpZWxkVmFsdWVzKGZvcm06IElEeW5hbWljRm9ybSwgcGFyYW1zOiBhbnkpIHtcbiAgICBpZiAodGhpcy5wYXJhbXNDb3B5Py5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLnBhcmFtc0NvcHkuZm9yRWFjaCgocGFyYW1Db3B5KSA9PiB7XG4gICAgICAgIHZhciBrZXkgPSBPYmplY3Qua2V5cyhwYXJhbUNvcHkpWzBdO1xuICAgICAgICBpZiAocGFyYW1Db3B5W2tleV0gPT09ICcnIHx8ICFwYXJhbUNvcHlba2V5XSkge1xuICAgICAgICAgIGZvcm0/LmZvcm1TZWN0aW9ucz8uZm9yRWFjaCgoc2VjdGlvbikgPT4ge1xuICAgICAgICAgICAgc2VjdGlvbi5maWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgICAgICAgICAgaWYgKGtleS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09IGZpZWxkLmZpZWxkPy50b0xvd2VyQ2FzZSgpKSB7XG4gICAgICAgICAgICAgICAgcGFyYW1zLmZvckVhY2goKG9yaWdQYXJhbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgdmFyIG9yaWdLZXkgPSBPYmplY3Qua2V5cyhvcmlnUGFyYW0pWzBdO1xuICAgICAgICAgICAgICAgICAgaWYgKG9yaWdLZXkgPT0ga2V5KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vb3JpZ1BhcmFtW29yaWdLZXldID0gZmllbGQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIGlmIChmaWVsZC5jb250cm9sID09IEVGb3JtQ29udHJvbC5DQUxFTkRBUikge1xuICAgICAgICAgICAgICAgICAgICAgIG9yaWdQYXJhbVtvcmlnS2V5XSA9IGZpZWxkLnZhbHVlID8gZmllbGQudmFsdWUudG9Mb2NhbGVEYXRlU3RyaW5nKCkgOiBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgIG9yaWdQYXJhbVtvcmlnS2V5XSA9IGZpZWxkLnZhbHVlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgIHBhcmFtQ29weVtrZXldLnRvU3RyaW5nKCkuaW5jbHVkZXMoJ3snKSAmJlxuICAgICAgICAgIHBhcmFtQ29weVtrZXldLnRvU3RyaW5nKCkuaW5jbHVkZXMoJ30nKVxuICAgICAgICApIHtcbiAgICAgICAgICB2YXIgbmV3VmFsdWUgPSBwYXJhbUNvcHlba2V5XS5yZXBsYWNlKCd7JywgJycpLnJlcGxhY2UoJ30nLCAnJyk7XG4gICAgICAgICAgZm9ybT8uZm9ybVNlY3Rpb25zPy5mb3JFYWNoKChzZWN0aW9uKSA9PiB7XG4gICAgICAgICAgICBzZWN0aW9uLmZpZWxkcy5mb3JFYWNoKChmaWVsZCkgPT4ge1xuICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgbmV3VmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpID09PSBmaWVsZC5maWVsZD8udG9Mb3dlckNhc2UoKVxuICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICBwYXJhbXMuZm9yRWFjaCgob3JpZ1BhcmFtKSA9PiB7XG4gICAgICAgICAgICAgICAgICB2YXIgb3JpZ0tleSA9IE9iamVjdC5rZXlzKG9yaWdQYXJhbSlbMF07XG4gICAgICAgICAgICAgICAgICBpZiAob3JpZ0tleSA9PSBrZXkpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGZpZWxkLmNvbnRyb2wgPT0gRUZvcm1Db250cm9sLkNBTEVOREFSKSB7XG4gICAgICAgICAgICAgICAgICAgICAgb3JpZ1BhcmFtW29yaWdLZXldID0gZmllbGQudmFsdWUgPyBmaWVsZC52YWx1ZS50b0xvY2FsZURhdGVTdHJpbmcoKSA6IG51bGw7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgb3JpZ1BhcmFtW29yaWdLZXldID0gZmllbGQudmFsdWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGRvd25sb2FkUXVpY2tSZXBvcnQocGFyYW1zLCByZXBJZCkge1xuICAgIGxldCBmaWx0ZXJzOiBhbnlbXSA9IFtdO1xuICAgIGlmIChwYXJhbXMgJiYgcGFyYW1zLmxlbmd0aCA+IDApIHtcbiAgICAgIHBhcmFtcy5mb3JFYWNoKChwYXJhbSkgPT4ge1xuICAgICAgICBPYmplY3Qua2V5cyhwYXJhbSkubWFwKChrZXkpID0+XG4gICAgICAgICAgZmlsdGVycy5wdXNoKHtcbiAgICAgICAgICAgIGZpZWxkOiBrZXksXG4gICAgICAgICAgICBtYXRjaE1vZGU6ICdlcXVhbCcsXG4gICAgICAgICAgICBvcGVyYXRvcjogJ2FuZCcsXG4gICAgICAgICAgICB2YWx1ZTogcGFyYW1ba2V5XSxcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZpbHRlcnMgPSB0aGlzLmdldEZpbHRlcnMoKTtcbiAgICB9XG5cbiAgICB0aGlzLnJlcXVlc3RTZXJ2aWNlXG4gICAgICAuZG93bmxvYWQoJy9SZXBvcnQvR2VuZXJhdGUnLCB7IElkOiByZXBJZCwgZmlsdGVyczogZmlsdGVycyB9KVxuICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdmFyIG5ld0Jsb2IgPSBuZXcgQmxvYihbcmVzcG9uc2UuYm9keV0sIHsgdHlwZTogJ2FwcGxpY2F0aW9uL3BkZicgfSk7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKG5ld0Jsb2IpO1xuICAgICAgICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgICAgICAgYS5ocmVmID0gZGF0YTtcbiAgICAgICAgICBjb25zdCBoZWFkZXIgPSByZXNwb25zZT8uaGVhZGVycz8uZ2V0KCdDb250ZW50LURpc3Bvc2l0aW9uJyk7XG4gICAgICAgICAgY29uc3QgZmlsZU5hbWUgPSBoZWFkZXJcbiAgICAgICAgICAgID8uc3BsaXQoJ2ZpbGVuYW1lPScpPy5bMV1cbiAgICAgICAgICAgID8uc3BsaXQoJzsnKVswXVxuICAgICAgICAgICAgPy5yZXBsYWNlQWxsKC9cXFwiL2csICcnKTtcbiAgICAgICAgICBhLmRvd25sb2FkID0gZmlsZU5hbWU7XG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTtcbiAgICAgICAgICBhLmNsaWNrKCk7XG4gICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTtcbiAgICAgICAgfSxcbiAgICAgICAgKGVycm9yKSA9PiB7XG4gICAgICAgICAgdGhpcy5hbGVydFNlcnZpY2UuYXBpRXJyb3IoZXJyb3IpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgZ2V0RmlsdGVycygpIHtcbiAgICBsZXQgZmlsdGVyczogYW55W10gPSBbXTtcbiAgICB0aGlzLmZvcm1GaWVsZHMuZm9yRWFjaCgoZmllbGQpID0+IHtcbiAgICAgIGlmIChmaWVsZCAmJiBmaWVsZC52YWx1ZT8udG9TdHJpbmcoKT8ubGVuZ3RoID4gMCkge1xuICAgICAgICBmaWx0ZXJzLnB1c2goe1xuICAgICAgICAgIGZpZWxkOiBmaWVsZC5maWVsZCxcbiAgICAgICAgICBtYXRjaE1vZGU6ICdlcXVhbCcsXG4gICAgICAgICAgb3BlcmF0b3I6ICdhbmQnLFxuICAgICAgICAgIHZhbHVlOiBmaWVsZC52YWx1ZSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGZpbHRlcnM7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class SystemConfigService {
4
+ constructor() { }
5
+ getSystemConfigValue(code) {
6
+ var systemConfig = JSON.parse(localStorage.getItem('SYSTEMCONFIG'));
7
+ return systemConfig.masterData?.find(x => x.code == code)?.value;
8
+ }
9
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SystemConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
10
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SystemConfigService, providedIn: 'root' }); }
11
+ }
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.1", ngImport: i0, type: SystemConfigService, decorators: [{
13
+ type: Injectable,
14
+ args: [{
15
+ providedIn: 'root'
16
+ }]
17
+ }], ctorParameters: function () { return []; } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3lzdGVtLWNvbmZpZy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2UtdWktdG9vbGtpdC9zcmMvbGliL3NlcnZpY2VzL3N5c3RlbS1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sbUJBQW1CO0lBRTlCLGdCQUFnQixDQUFDO0lBRWpCLG9CQUFvQixDQUFDLElBQVk7UUFDL0IsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDcEUsT0FBTyxZQUFZLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFBO0lBQ2xFLENBQUM7aUlBUFUsbUJBQW1CO3FJQUFuQixtQkFBbUIsY0FGbEIsTUFBTTs7MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU3lzdGVtQ29uZmlnU2VydmljZSB7XG5cbiAgY29uc3RydWN0b3IoKSB7IH1cblxuICBnZXRTeXN0ZW1Db25maWdWYWx1ZShjb2RlOiBzdHJpbmcpIHtcbiAgICB2YXIgc3lzdGVtQ29uZmlnID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnU1lTVEVNQ09ORklHJykpO1xuICAgIHJldHVybiBzeXN0ZW1Db25maWcubWFzdGVyRGF0YT8uZmluZCh4ID0+IHguY29kZSA9PSBjb2RlKT8udmFsdWVcbiAgfVxufVxuIl19
@@ -55,4 +55,5 @@ export * from './lib/services/header.service';
55
55
  export * from './lib/services/loader.service';
56
56
  export * from './lib/services/card.service';
57
57
  export * from './lib/services/report.service';
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NlLXVpLXRvb2xraXQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLGFBQWEsQ0FBQztBQUU1Qjs7R0FFRztBQUVILGNBQWMsNEJBQTRCLENBQUM7QUFFM0M7O0dBRUc7QUFDSCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGtGQUFrRixDQUFDO0FBQ2pHLGNBQWMsa0dBQWtHLENBQUM7QUFDakgsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLG1FQUFtRSxDQUFDO0FBQ2xGLGNBQWMsK0NBQStDLENBQUM7QUFFOUQ7O0dBRUc7QUFDSCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywyQkFBMkIsQ0FBQztBQUUxQzs7R0FFRztBQUNILGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygc2UtdWktdG9vbGtpdFxuICovXG5leHBvcnQgKiBmcm9tICdwcmltZW5nL2FwaSc7XG5cbi8qKlxuICogRXhwb3J0ZWQgTW9kdWxlc1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlLXVpLXRvb2xraXQubW9kdWxlJztcblxuLyoqXG4gKiBFeHBvcnRlZCBDb21wb25lbnRzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9mb3JtL2Zvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9ncmlkL2dyaWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9tZW51LWJhci9tZW51LWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL3NpZGViYXIvc2lkZWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL2hlYWRlci9oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9pbWFnZS1nYWxsZXJ5L2ltYWdlLWdhbGxlcnkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9pZnJhbWUvaWZyYW1lLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvY2FwdGlvbi9jYXB0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvY2FyZHMvY2FyZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL2ZpbGUvZmlsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL3JlcG9ydC9yZXBvcnQtRmlsdGVyL3JlcG9ydC1maWx0ZXIvcmVwb3J0LWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL3JlcG9ydC9yZXBvcnRHZW5lcmF0ZUJ0bi9nZW5lcmF0ZS1yZXBvcnQtYnRuL2dlbmVyYXRlLXJlcG9ydC1idG4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvc2hhcmVkL2dsb2JhbC1maWx0ZXJzL2dsb2JhbC1maWx0ZXJzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvZ3JpZC1yb3ctYWN0aW9ucy9ncmlkLXJvdy1hY3Rpb25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvZmlsdGVyL2ZpbHRlci5jb21wb25lbnQnO1xuXG4vKipcbiAqIEV4cG9ydGVkIFR5cGUgRGVmaW5pdGlvbnNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2Zvcm0ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2dyaWQubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3Jlc3BvbnNlLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9yZXF1ZXN0Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9oZWFkZXIubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3NpZGViYXIubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3VzZXItaW5mby5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvbWVudS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvY29tbW9uLm1vZGVsJztcblxuLyoqXG4gKiBFeHBvcnRlZCBTZXJ2aWNlc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9hbGVydC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2Zvcm0uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9ncmlkLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZHJvcGRvd24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9wYWdlLWxvZ2dlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2F1dGhlbnRpY2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvdXRpbGl0aWVzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcmVxdWVzdC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3NpZGViYXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9oeXBlcmxpbmsuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9oZWFkZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9sb2FkZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9jYXJkLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvcmVwb3J0LnNlcnZpY2UnO1xuIl19
58
+ export * from './lib/services/system-config.service';
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3NlLXVpLXRvb2xraXQvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLGFBQWEsQ0FBQztBQUU1Qjs7R0FFRztBQUVILGNBQWMsNEJBQTRCLENBQUM7QUFFM0M7O0dBRUc7QUFDSCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyw2REFBNkQsQ0FBQztBQUM1RSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyx5REFBeUQsQ0FBQztBQUN4RSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLGtGQUFrRixDQUFDO0FBQ2pHLGNBQWMsa0dBQWtHLENBQUM7QUFDakgsY0FBYyxpRUFBaUUsQ0FBQztBQUNoRixjQUFjLG1FQUFtRSxDQUFDO0FBQ2xGLGNBQWMsK0NBQStDLENBQUM7QUFFOUQ7O0dBRUc7QUFDSCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywyQkFBMkIsQ0FBQztBQUUxQzs7R0FFRztBQUNILGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHNDQUFzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBzZS11aS10b29sa2l0XG4gKi9cbmV4cG9ydCAqIGZyb20gJ3ByaW1lbmcvYXBpJztcblxuLyoqXG4gKiBFeHBvcnRlZCBNb2R1bGVzXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2UtdWktdG9vbGtpdC5tb2R1bGUnO1xuXG4vKipcbiAqIEV4cG9ydGVkIENvbXBvbmVudHNcbiAqL1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL2dyaWQvZ3JpZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL21lbnUtYmFyL21lbnUtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2Uvc2lkZWJhci9zaWRlYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvaGVhZGVyL2hlYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL2ltYWdlLWdhbGxlcnkvaW1hZ2UtZ2FsbGVyeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9iYXNlL2lmcmFtZS9pZnJhbWUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9sb2FkZXIvbG9hZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvZmlsZS11cGxvYWQvZmlsZS11cGxvYWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9jYXB0aW9uL2NhcHRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9jYXJkcy9jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvZmlsZS9maWxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvcmVwb3J0L3JlcG9ydC1GaWx0ZXIvcmVwb3J0LWZpbHRlci9yZXBvcnQtZmlsdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2Jhc2UvcmVwb3J0L3JlcG9ydEdlbmVyYXRlQnRuL2dlbmVyYXRlLXJlcG9ydC1idG4vZ2VuZXJhdGUtcmVwb3J0LWJ0bi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9zaGFyZWQvZ2xvYmFsLWZpbHRlcnMvZ2xvYmFsLWZpbHRlcnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9ncmlkLXJvdy1hY3Rpb25zL2dyaWQtcm93LWFjdGlvbnMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvYmFzZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XG5cbi8qKlxuICogRXhwb3J0ZWQgVHlwZSBEZWZpbml0aW9uc1xuICovXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZm9ybS5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvZ3JpZC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvcmVzcG9uc2UubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL3JlcXVlc3QubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbW9kZWxzL2hlYWRlci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvc2lkZWJhci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbHMvdXNlci1pbmZvLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9tZW51Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9jb21tb24ubW9kZWwnO1xuXG4vKipcbiAqIEV4cG9ydGVkIFNlcnZpY2VzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2FsZXJ0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvZm9ybS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2dyaWQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9kcm9wZG93bi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL3BhZ2UtbG9nZ2VyLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXV0aGVudGljYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy91dGlsaXRpZXMuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9yZXF1ZXN0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvc2lkZWJhci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2h5cGVybGluay5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2hlYWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2xvYWRlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL2NhcmQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9yZXBvcnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9zeXN0ZW0tY29uZmlnLnNlcnZpY2UnO1xuIl19