brainloper-ui 16.0.0 → 17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/esm2022/src/app/modules/brainloper-ui/brainloper-ui.module.mjs +15 -7
  2. package/esm2022/src/app/modules/brainloper-ui/components/bread-crumb/bread-crumb.component.mjs +5 -5
  3. package/esm2022/src/app/modules/brainloper-ui/components/buttons/button-icon/button-icon.component.mjs +5 -5
  4. package/esm2022/src/app/modules/brainloper-ui/components/buttons/button-label/button-label.component.mjs +6 -6
  5. package/esm2022/src/app/modules/brainloper-ui/components/carousel/carousel.component.mjs +5 -5
  6. package/esm2022/src/app/modules/brainloper-ui/components/combos/combos.component.mjs +5 -5
  7. package/esm2022/src/app/modules/brainloper-ui/components/data-table/data-table.component.mjs +5 -5
  8. package/esm2022/src/app/modules/brainloper-ui/components/data-table/table-modal/table-modal.component.mjs +6 -6
  9. package/esm2022/src/app/modules/brainloper-ui/components/file-input/file-input.component.mjs +5 -5
  10. package/esm2022/src/app/modules/brainloper-ui/components/filters/filters.component.mjs +5 -5
  11. package/esm2022/src/app/modules/brainloper-ui/components/report/template-fuel/template-fuel.component.mjs +6 -6
  12. package/esm2022/src/app/modules/brainloper-ui/components/report/template-ot/template-ot.component.mjs +6 -6
  13. package/esm2022/src/app/modules/brainloper-ui/components/select-filter/select-filter.component.mjs +6 -6
  14. package/esm2022/src/app/modules/directives/carousel-item.directive.mjs +5 -5
  15. package/esm2022/src/app/modules/services/crypto.service.mjs +5 -5
  16. package/esm2022/src/app/modules/services/export-data.service.mjs +5 -5
  17. package/esm2022/src/app/modules/services/file-forms.service.mjs +5 -5
  18. package/esm2022/src/app/modules/services/fuel-order-pdf.service.mjs +5 -5
  19. package/esm2022/src/app/modules/services/functions.service.mjs +5 -5
  20. package/esm2022/src/app/modules/services/generate-pdf.service.mjs +5 -5
  21. package/esm2022/src/app/modules/services/http.service.mjs +5 -5
  22. package/esm2022/src/app/modules/services/loading/loading.component.mjs +5 -5
  23. package/esm2022/src/app/modules/services/local-storage.service.mjs +5 -5
  24. package/esm2022/src/app/modules/services/message.service.mjs +5 -5
  25. package/esm2022/src/app/modules/services/purchase-order-pdf.service.mjs +5 -5
  26. package/esm2022/src/app/modules/services/session.service.mjs +5 -5
  27. package/esm2022/src/app/modules/services/work-order-pdf.service.mjs +5 -5
  28. package/fesm2022/brainloper-ui.mjs +125 -117
  29. package/fesm2022/brainloper-ui.mjs.map +1 -1
  30. package/package.json +13 -13
@@ -189,17 +189,17 @@ export class FileInputComponent {
189
189
  selectFile($event) {
190
190
  console.log($event);
191
191
  }
192
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileInputComponent, deps: [{ token: i1.FileFormsService }, { token: i2.HttpService }, { token: i3.MessageService }, { token: i4.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
193
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FileInputComponent, selector: "file-input", inputs: { params: "params", icon: "icon" }, outputs: { fileSave: "fileSave" }, ngImport: i0, template: "<div *ngIf=\"params.input == 'vista'\" [class]='edit' [ngStyle]=\"sizePicture\">\n \n <img *ngIf=\"imageSrc\" [ngStyle]=\"styleImg\" src=\"{{this.imageSrc}}\" />\n <div *ngIf=\"!imageSrc\" [ngStyle]=\"styleImg\"></div>\n\n\t<div *ngIf=\"params.edit == true\" class=\"entrada\" [ngStyle]=\"border\">\n\t\t<input id=\"input\" type=\"file\" title='Subir archivo' [accept]='type'\n\t\t\tstyle='width: 100%; height: 100%; opacity: 0; overflow: hidden; z-index: 1; cursor: pointer;'\n\t\t\t(change)='fileChange($event)'>\n\t</div>\n\n</div>\n<div *ngIf=\"params.input == 'formulario'\">\n <mat-form-field [ngStyle]=\"styleForm\" (click)=\"fileInput.click()\" style=\"cursor:pointer;\">\n <mat-label>{{params.label}}</mat-label>\n <input disabled type=\"text\" matInput [placeholder]=\"params.label\" [value]=\"fileName || ''\" readonly style=\"pointer-events:none; background:transparent;\">\n <button mat-icon-button matSuffix type=\"button\" tabindex=\"-1\" style=\"pointer-events:none;\">\n <mat-icon *ngIf=\"typeFile=='imagen'\">add_a_photo</mat-icon>\n <mat-icon *ngIf=\"typeFile=='pdf'\">picture_as_pdf</mat-icon>\n <mat-icon *ngIf=\"typeFile=='doc'\">insert_drive_file</mat-icon>\n </button>\n </mat-form-field>\n <input #fileInput id=\"input\" type=\"file\" title=\"Subir archivo\" [accept]=\"type\" style=\"display: none;\" (change)=\"fileChange($event)\">\n</div>\n", styles: ["p{font-family:Lato}.dropzone{min-height:400px;min-width:400px;display:table;width:100%;background-color:#eee;border:dotted 1px #aaa}.text-wrapper{display:table-cell;vertical-align:middle}.centered{font-family:sans-serif;font-size:1.3em;font-weight:700;text-align:center}.img :hover{background-image:url(data:image/png;base64,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);background-color:#cfd0d5;background-position:center;background-size:25%;background-repeat:no-repeat;transition:background-color 1s;cursor:pointer}.img{position:relative}.entrada{position:absolute;top:0;right:0;width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] });
192
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileInputComponent, deps: [{ token: i1.FileFormsService }, { token: i2.HttpService }, { token: i3.MessageService }, { token: i4.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component });
193
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FileInputComponent, selector: "file-input", inputs: { params: "params", icon: "icon" }, outputs: { fileSave: "fileSave" }, ngImport: i0, template: "<div *ngIf=\"params.input == 'vista'\" [class]='edit' [ngStyle]=\"sizePicture\">\n \n <img *ngIf=\"imageSrc\" [ngStyle]=\"styleImg\" src=\"{{this.imageSrc}}\" />\n <div *ngIf=\"!imageSrc\" [ngStyle]=\"styleImg\"></div>\n\n\t<div *ngIf=\"params.edit == true\" class=\"entrada\" [ngStyle]=\"border\">\n\t\t<input id=\"input\" type=\"file\" title='Subir archivo' [accept]='type'\n\t\t\tstyle='width: 100%; height: 100%; opacity: 0; overflow: hidden; z-index: 1; cursor: pointer;'\n\t\t\t(change)='fileChange($event)'>\n\t</div>\n\n</div>\n<div *ngIf=\"params.input == 'formulario'\">\n <mat-form-field [ngStyle]=\"styleForm\" (click)=\"fileInput.click()\" style=\"cursor:pointer;\">\n <mat-label>{{params.label}}</mat-label>\n <input disabled type=\"text\" matInput [placeholder]=\"params.label\" [value]=\"fileName || ''\" readonly style=\"pointer-events:none; background:transparent;\">\n <button mat-icon-button matSuffix type=\"button\" tabindex=\"-1\" style=\"pointer-events:none;\">\n <mat-icon *ngIf=\"typeFile=='imagen'\">add_a_photo</mat-icon>\n <mat-icon *ngIf=\"typeFile=='pdf'\">picture_as_pdf</mat-icon>\n <mat-icon *ngIf=\"typeFile=='doc'\">insert_drive_file</mat-icon>\n </button>\n </mat-form-field>\n <input #fileInput id=\"input\" type=\"file\" title=\"Subir archivo\" [accept]=\"type\" style=\"display: none;\" (change)=\"fileChange($event)\">\n</div>\n", styles: ["p{font-family:Lato}.dropzone{min-height:400px;min-width:400px;display:table;width:100%;background-color:#eee;border:dotted 1px #aaa}.text-wrapper{display:table-cell;vertical-align:middle}.centered{font-family:sans-serif;font-size:1.3em;font-weight:700;text-align:center}.img :hover{background-image:url(data:image/png;base64,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);background-color:#cfd0d5;background-position:center;background-size:25%;background-repeat:no-repeat;transition:background-color 1s;cursor:pointer}.img{position:relative}.entrada{position:absolute;top:0;right:0;width:100%;height:100%}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i6.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] });
194
194
  }
195
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FileInputComponent, decorators: [{
195
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FileInputComponent, decorators: [{
196
196
  type: Component,
197
197
  args: [{ selector: 'file-input', template: "<div *ngIf=\"params.input == 'vista'\" [class]='edit' [ngStyle]=\"sizePicture\">\n \n <img *ngIf=\"imageSrc\" [ngStyle]=\"styleImg\" src=\"{{this.imageSrc}}\" />\n <div *ngIf=\"!imageSrc\" [ngStyle]=\"styleImg\"></div>\n\n\t<div *ngIf=\"params.edit == true\" class=\"entrada\" [ngStyle]=\"border\">\n\t\t<input id=\"input\" type=\"file\" title='Subir archivo' [accept]='type'\n\t\t\tstyle='width: 100%; height: 100%; opacity: 0; overflow: hidden; z-index: 1; cursor: pointer;'\n\t\t\t(change)='fileChange($event)'>\n\t</div>\n\n</div>\n<div *ngIf=\"params.input == 'formulario'\">\n <mat-form-field [ngStyle]=\"styleForm\" (click)=\"fileInput.click()\" style=\"cursor:pointer;\">\n <mat-label>{{params.label}}</mat-label>\n <input disabled type=\"text\" matInput [placeholder]=\"params.label\" [value]=\"fileName || ''\" readonly style=\"pointer-events:none; background:transparent;\">\n <button mat-icon-button matSuffix type=\"button\" tabindex=\"-1\" style=\"pointer-events:none;\">\n <mat-icon *ngIf=\"typeFile=='imagen'\">add_a_photo</mat-icon>\n <mat-icon *ngIf=\"typeFile=='pdf'\">picture_as_pdf</mat-icon>\n <mat-icon *ngIf=\"typeFile=='doc'\">insert_drive_file</mat-icon>\n </button>\n </mat-form-field>\n <input #fileInput id=\"input\" type=\"file\" title=\"Subir archivo\" [accept]=\"type\" style=\"display: none;\" (change)=\"fileChange($event)\">\n</div>\n", styles: ["p{font-family:Lato}.dropzone{min-height:400px;min-width:400px;display:table;width:100%;background-color:#eee;border:dotted 1px #aaa}.text-wrapper{display:table-cell;vertical-align:middle}.centered{font-family:sans-serif;font-size:1.3em;font-weight:700;text-align:center}.img :hover{background-image:url(data:image/png;base64,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);background-color:#cfd0d5;background-position:center;background-size:25%;background-repeat:no-repeat;transition:background-color 1s;cursor:pointer}.img{position:relative}.entrada{position:absolute;top:0;right:0;width:100%;height:100%}\n"] }]
198
- }], ctorParameters: function () { return [{ type: i1.FileFormsService }, { type: i2.HttpService }, { type: i3.MessageService }, { type: i4.UntypedFormBuilder }]; }, propDecorators: { params: [{
198
+ }], ctorParameters: () => [{ type: i1.FileFormsService }, { type: i2.HttpService }, { type: i3.MessageService }, { type: i4.UntypedFormBuilder }], propDecorators: { params: [{
199
199
  type: Input
200
200
  }], fileSave: [{
201
201
  type: Output
202
202
  }], icon: [{
203
203
  type: Input
204
204
  }] } });
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvZmlsZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvZmlsZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sU0FBUyxNQUFNLDJEQUEyRCxDQUFBO0FBQ2pGLE9BQU8sU0FBUyxNQUFNLDJEQUEyRCxDQUFBO0FBQ2pGLE9BQU8sdUJBQXVCLE1BQU0seUVBQXlFLENBQUE7QUFDN0csT0FBTyxVQUFVLE1BQU0sY0FBYyxDQUFDO0FBRXRDLE9BQU8sRUFBc0Isa0JBQWtCLEVBQW9CLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7OztBQU90RyxNQUFNLE9BQU8sa0JBQWtCO0lBK0JuQjtJQUNBO0lBQ0E7SUFDQTtJQWpDVixRQUFRLENBQUM7SUFDVCxJQUFJLENBQUM7SUFDTCxNQUFNLENBQUM7SUFDUCxRQUFRLENBQUM7SUFDVCxTQUFTLENBQUM7SUFDVixXQUFXLENBQUM7SUFDWixJQUFJLENBQUM7SUFFTCxRQUFRLENBQW1CO0lBRTNCLEtBQUssR0FBRyxTQUFTLENBQUM7SUFDbEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixRQUFRLEdBQVksS0FBSyxDQUFDO0lBQzFCLE1BQU0sQ0FBUztJQUVmLFdBQVcsQ0FBcUI7SUFDaEMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUViLElBQUksR0FBRyxNQUFNLENBQUMs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ckIsQ0FBQzt3R0FqTVUsa0JBQWtCOzRGQUFsQixrQkFBa0IsaUlDZi9CLDgzQ0F3QkE7OzRGRFRhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZOytMQTJCYixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTTtnQkFLQyxJQUFJO3NCQUFYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWxlRm9ybXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZmlsZS1mb3Jtcy5zZXJ2aWNlJztcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCBpbWFnZW5QZGYgZnJvbSAnLi4vLi4vLi4vYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvaW1hZ2VuZXMvcGRmJ1xuaW1wb3J0IGltYWdlbkRvYyBmcm9tICcuLi8uLi8uLi9icmFpbmxvcGVyLXVpL2NvbXBvbmVudHMvZmlsZS1pbnB1dC9pbWFnZW5lcy9kb2MnXG5pbXBvcnQgaW1hZ2VuRm9uZG9UcmFuc3BhcmVudGUgZnJvbSAnLi4vLi4vLi4vYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvaW1hZ2VuZXMvZm9uZG9UcmFuc3BhcmVudGUnXG5pbXBvcnQgQ29tcHJlc3NvciBmcm9tICdjb21wcmVzc29yanMnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tZXNzYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpbGUtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzdHlsZUltZztcbiAgdHlwZTtcbiAgYm9yZGVyO1xuICBpbWFnZVNyYztcbiAgc3R5bGVGb3JtO1xuICBzaXplUGljdHVyZTtcbiAgZWRpdDtcblxuICBmb3JtRmlsZTogVW50eXBlZEZvcm1Hcm91cDtcblxuICBjb2xvciA9ICdwcmltYXJ5JztcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgYWNjZXB0OiBzdHJpbmc7XG5cbiAgZmlsZUNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbDtcbiAgbWF4U2l6ZSA9IDE2O1xuXG4gIHNpemUgPSAxMDAwMDA7IC8vdGFtYcOxbyBhIGNvbXByaW1pciBsYXMgaW1hZ2VuZXMgZW4gYml0ZXNcblxuICBmaWxlTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgcGFyYW1zO1xuICBAT3V0cHV0KCkgZmlsZVNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICB0eXBlRmlsZVxuICBwdWJsaWMgZmlsZXM7XG4gIGZpbGU9bnVsbFxuICBASW5wdXQoKWljb24gPSAnZm9sZGVyJ1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZpbGVGb3JtczogRmlsZUZvcm1zU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHAgOiBIdHRwU2VydmljZSxcbiAgICBwcml2YXRlIG1lc3NhZ2UgOiBNZXNzYWdlU2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXJcbiAgKSB7XG4gICAgdGhpcy5mb3JtRmlsZSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgcmVxdWlyZWRmaWxlOiBbXVxuICAgIH0pXG5cbiAgICB0aGlzLmZpbGVDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCh0aGlzLmZpbGVzLCBbXG4gICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkXG4gICAgXSlcbiAgfVxuXG4gIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBmaWxlOiBbXVxuICAgIH0pXG5cbiAgICB0aGlzLnNpemVQaWN0dXJlPXtcbiAgICAgIHdpZHRoOmAke3RoaXMucGFyYW1zLnN0eWxlLndpZHRofWAsXG4gICAgICBoZWlnaHQ6dGhpcy5wYXJhbXMuc3R5bGUuaGVpZ2h0ID8gYCR7dGhpcy5wYXJhbXMuc3R5bGUuaGVpZ2h0fWAgOiAnMjAwcHgnLCBcbiAgICAgIFwiYm9yZGVyLXJhZGl1c1wiOiAnNSUnLFxuICAgICAgYm9yZGVyOmAke3RoaXMucGFyYW1zLnN0eWxlLmJvcmRlcn1gLFxuICAgIH1cblxuICAgIGlmKHRoaXMucGFyYW1zLmVkaXQgPT0gdHJ1ZSl7XG4gICAgICB0aGlzLmVkaXQgPSAnaW1nJ1xuICAgIH1lbHNle1xuICAgICAgdGhpcy5lZGl0ID0gJydcbiAgICB9XG5cbiAgICBsZXQgdHlwZXMgPSBBcnJheS5pc0FycmF5KHRoaXMucGFyYW1zLnR5cGVGaWxlKSA/IHRoaXMucGFyYW1zLnR5cGVGaWxlIDogW3RoaXMucGFyYW1zLnR5cGVGaWxlXTtcbiAgICB0aGlzLnR5cGVGaWxlID0gdHlwZXM7XG4gICAgdGhpcy50eXBlID0gdHlwZXMubWFwKHQgPT4ge1xuICAgICAgaWYgKHQgPT09ICdpbWFnZW4nKSByZXR1cm4gJ2ltYWdlLyonO1xuICAgICAgaWYgKHQgPT09ICdwZGYnKSByZXR1cm4gJy5wZGYnO1xuICAgICAgaWYgKHQgPT09ICdkb2MnKSByZXR1cm4gJy5kb2MsLmRvY3gnO1xuICAgICAgcmV0dXJuICcnO1xuICAgIH0pLmpvaW4oJywnKTtcblxuICAgIHRoaXMuZnVuY3Rpb25UeXBlRmlsZSgpXG4gIH1cblxuICBmdW5jdGlvblR5cGVGaWxlKCl7XG5cbiAgICBpZih0aGlzLnBhcmFtcy5zdHlsZS5zaGFwZSA9PSBcImNpcmN1bGFyXCIpe1xuXG4gICAgICB0aGlzLnNpemVQaWN0dXJlWydib3JkZXItcmFkaXVzJ109XCI1MCVcIlxuICAgICAgdGhpcy5zaXplUGljdHVyZS53aWR0aD1gJHtzY3JlZW4ud2lkdGgqKHRoaXMucGFyYW1zLnN0eWxlLndpZHRoLnJlcGxhY2UoJyUnLCAnJykvMTAwKX1weGBcbiAgICAgIHRoaXMuc2l6ZVBpY3R1cmUuaGVpZ2h0ID0gdGhpcy5zaXplUGljdHVyZS53aWR0aFxuXG4gICAgfVxuXG4gICAgdGhpcy5ib3JkZXIgPXtcbiAgICAgIFwiYm9yZGVyUmFkaXVzXCI6YCR7dGhpcy5zaXplUGljdHVyZVsnYm9yZGVyLXJhZGl1cyddfWBcbiAgICB9XG5cbiAgICB0aGlzLnN0eWxlRm9ybT17XG4gICAgICB3aWR0aDpgJHt0aGlzLnBhcmFtcy5zdHlsZS53aWR0aH1gLFxuICAgICAgaGVpZ2h0OmAke3RoaXMucGFyYW1zLnN0eWxlLmhlaWdodH1gXG4gICAgfVxuXG4gICAgdGhpcy5zdHlsZUltZyA9IHtcbiAgICAgIHdpZHRoOicxMDAlJyxcbiAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgXCJib3JkZXItcmFkaXVzXCI6YCR7dGhpcy5zaXplUGljdHVyZVsnYm9yZGVyLXJhZGl1cyddfWAsXG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHlwZUZpbGUuaW5jbHVkZXMoJ2ltYWdlbicpKSB7XG4gICAgICB0aGlzLmltYWdlU3JjID0gdGhpcy5wYXJhbXMuaW1hZ2VTcmMgfHwgaW1hZ2VuRm9uZG9UcmFuc3BhcmVudGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW1hZ2VTcmMgPSBpbWFnZW5Gb25kb1RyYW5zcGFyZW50ZTtcbiAgICB9XG5cbiAgIH1cblxuICBhc3luYyBmaWxlQ2hhbmdlKCRldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCBmaWxlID0gJGV2ZW50LnRhcmdldFsnZmlsZXMnXVswXTtcbiAgICBpZiAoIWZpbGUpIHJldHVybjtcblxuICAgIHRoaXMuZmlsZU5hbWUgPSBmaWxlLm5hbWU7XG5cbiAgICBpZiAoZmlsZS5zaXplIDwgMTUwMDAwMDApIHtcbiAgICAgIHRoaXMuZmlsZSA9IGZpbGU7XG4gICAgICBjb25zdCBtaW1lID0gZmlsZS50eXBlO1xuICAgICAgY29uc3QgbmFtZSA9IGZpbGUubmFtZS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgICAvLyBOVUVWTzogRGV0ZWN0YXIgdGlwbyBzZWfDum4gYXJjaGl2byBzdWJpZG8geSBsbyBwZXJtaXRpZG9cbiAgICAgIGlmIChtaW1lLnN0YXJ0c1dpdGgoJ2ltYWdlLycpICYmIHRoaXMudHlwZUZpbGUuaW5jbHVkZXMoJ2ltYWdlbicpKSB7XG4gICAgICAgIC8vIEltYWdlblxuICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICByZWFkZXIub25sb2FkID0gZSA9PiB0aGlzLmltYWdlU3JjID0gcmVhZGVyLnJlc3VsdDtcbiAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwodGhpcy5maWxlKTtcbiAgICAgICAgY29uc3QgciA9IGF3YWl0IHRoaXMuY29tcHJlc3NvcigpO1xuICAgICAgICBpZiAociA9PT0gZmFsc2UpIHtcbiAgICAgICAgICB0aGlzLmZpbGVTYXZlLmVtaXQoeyBuZXc6IHRoaXMuZmlsZSB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmZpbGVTYXZlLmVtaXQoeyBuZXc6IHRoaXMuZmlsZSwgY29tcHJlc3NvcjogciB9KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICgobWltZSA9PT0gJ2FwcGxpY2F0aW9uL3BkZicgfHwgbmFtZS5lbmRzV2l0aCgnLnBkZicpKSAmJiB0aGlzLnR5cGVGaWxlLmluY2x1ZGVzKCdwZGYnKSkge1xuICAgICAgICAvLyBQREZcbiAgICAgICAgdGhpcy5pbWFnZVNyYyA9ICcnO1xuICAgICAgICB0aGlzLnN0eWxlSW1nID0ge1xuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgICAgICAgXCJib3JkZXItcmFkaXVzXCI6IGAke3RoaXMuc2l6ZVBpY3R1cmVbJ2JvcmRlci1yYWRpdXMnXX1gLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1pbWFnZVwiOiBgdXJsKCR7aW1hZ2VuUGRmfSlgLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1wb3NpdGlvblwiOiBcImNlbnRlclwiLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1zaXplXCI6IFwiMzAlIDY1JVwiLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1yZXBlYXRcIjogXCJuby1yZXBlYXRcIlxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmZpbGVTYXZlLmVtaXQoeyBuZXc6IHRoaXMuZmlsZSB9KTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIChtaW1lID09PSAnYXBwbGljYXRpb24vbXN3b3JkJyB8fFxuICAgICAgICBtaW1lID09PSAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LndvcmRwcm9jZXNzaW5nbWwuZG9jdW1lbnQnIHx8XG4gICAgICAgIG5hbWUuZW5kc1dpdGgoJy5kb2MnKSB8fCBuYW1lLmVuZHNXaXRoKCcuZG9jeCcpKSAmJiB0aGlzLnR5cGVGaWxlLmluY2x1ZGVzKCdkb2MnKVxuICAgICAgKSB7XG4gICAgICAgIC8vIERPQy9ET0NYXG4gICAgICAgIHRoaXMuaW1hZ2VTcmMgPSAnJzsgXG4gICAgICAgIHRoaXMuc3R5bGVJbWcgPSB7XG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgICBcImJvcmRlci1yYWRpdXNcIjogYCR7dGhpcy5zaXplUGljdHVyZVsnYm9yZGVyLXJhZGl1cyddfWAsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLWltYWdlXCI6IGB1cmwoJHtpbWFnZW5Eb2N9KWAsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLXBvc2l0aW9uXCI6IFwiY2VudGVyXCIsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLXNpemVcIjogXCIzMCUgNjUlXCIsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLXJlcGVhdFwiOiBcIm5vLXJlcGVhdFwiXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuZmlsZVNhdmUuZW1pdCh7IG5ldzogdGhpcy5maWxlIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5tZXNzYWdlLkVycm9yKCdFcnJvcicsICdUaXBvIGRlIGFyY2hpdm8gbm8gc29wb3J0YWRvJyk7XG4gICAgICB9XG4gICAgfWVsc2V7XG4gICAgICB0aGlzLm1lc3NhZ2UuRXJyb3IoJ0Vycm9yJywgJ0FyY2hpdm8gbXV5IHBlc2FkbywgdGFtYcOxbyBtw61uaW1vIDE1IE1CJylcbiAgICB9XG4gIH1cblxuICAgY29tcHJlc3Nvcigpe1xuICAgIGlmKHRoaXMuZmlsZS5zaXplID4gNTAwMDAwICYmIHRoaXMuZmlsZS5zaXplIDwgMTUwMDAwMDApe1xuICAgICAgbGV0IGZhY3RvciA9ICh0aGlzLnNpemUqMTAwKS90aGlzLmZpbGUuc2l6ZVxuICAgICAgbGV0IHkgPSAoKGZhY3RvcioqMykqKDEwKiotNikpLSgwLjAwMDU5KihmYWN0b3IqKjIpKSsoMC4wMzk5KmZhY3RvcilcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSxyZWplY3QpPT57XG4gICAgICAgIG5ldyBDb21wcmVzc29yICh0aGlzLmZpbGUsIHtcbiAgICAgICAgICAgIHF1YWxpdHk6IHksXG4gICAgICAgICAgICBzdWNjZXNzKHJlc3VsdCl7XG4gICAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KVxuICAgICAgICAgICAgfVxuICAgICAgICAgICB9KVxuXG4gICAgICB9KVxuXG4gICAgfWVsc2V7XG4gICAgICByZXR1cm4gKGZhbHNlKVxuICAgIH1cblxuICB9XG5cbiAgc2VsZWN0RmlsZSgkZXZlbnQpe1xuICAgIGNvbnNvbGUubG9nKCRldmVudClcbiAgfVxuXG59XG4iLCI8ZGl2ICAqbmdJZj1cInBhcmFtcy5pbnB1dCA9PSAndmlzdGEnXCIgW2NsYXNzXT0nZWRpdCcgW25nU3R5bGVdPVwic2l6ZVBpY3R1cmVcIj5cbiAgXG4gIDxpbWcgKm5nSWY9XCJpbWFnZVNyY1wiIFtuZ1N0eWxlXT1cInN0eWxlSW1nXCIgc3JjPVwie3t0aGlzLmltYWdlU3JjfX1cIiAvPlxuICA8ZGl2ICpuZ0lmPVwiIWltYWdlU3JjXCIgW25nU3R5bGVdPVwic3R5bGVJbWdcIj48L2Rpdj5cblxuXHQ8ZGl2ICAqbmdJZj1cInBhcmFtcy5lZGl0ID09IHRydWVcIiBjbGFzcz1cImVudHJhZGFcIiBbbmdTdHlsZV09XCJib3JkZXJcIj5cblx0XHQ8aW5wdXQgaWQ9XCJpbnB1dFwiIHR5cGU9XCJmaWxlXCIgdGl0bGU9J1N1YmlyIGFyY2hpdm8nIFthY2NlcHRdPSd0eXBlJ1xuXHRcdFx0c3R5bGU9J3dpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG9wYWNpdHk6IDA7IG92ZXJmbG93OiBoaWRkZW47IHotaW5kZXg6IDE7IGN1cnNvcjogcG9pbnRlcjsnXG5cdFx0XHQoY2hhbmdlKT0nZmlsZUNoYW5nZSgkZXZlbnQpJz5cblx0PC9kaXY+XG5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cInBhcmFtcy5pbnB1dCA9PSAnZm9ybXVsYXJpbydcIj5cbiAgPG1hdC1mb3JtLWZpZWxkIFtuZ1N0eWxlXT1cInN0eWxlRm9ybVwiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiIHN0eWxlPVwiY3Vyc29yOnBvaW50ZXI7XCI+XG4gICAgPG1hdC1sYWJlbD57e3BhcmFtcy5sYWJlbH19PC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IGRpc2FibGVkIHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgW3BsYWNlaG9sZGVyXT1cInBhcmFtcy5sYWJlbFwiIFt2YWx1ZV09XCJmaWxlTmFtZSB8fCAnJ1wiIHJlYWRvbmx5IHN0eWxlPVwicG9pbnRlci1ldmVudHM6bm9uZTsgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcIj5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBtYXRTdWZmaXggdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiLTFcIiBzdHlsZT1cInBvaW50ZXItZXZlbnRzOm5vbmU7XCI+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJ0eXBlRmlsZT09J2ltYWdlbidcIj5hZGRfYV9waG90bzwvbWF0LWljb24+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJ0eXBlRmlsZT09J3BkZidcIj5waWN0dXJlX2FzX3BkZjwvbWF0LWljb24+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJ0eXBlRmlsZT09J2RvYydcIj5pbnNlcnRfZHJpdmVfZmlsZTwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDxpbnB1dCAjZmlsZUlucHV0IGlkPVwiaW5wdXRcIiB0eXBlPVwiZmlsZVwiIHRpdGxlPVwiU3ViaXIgYXJjaGl2b1wiIFthY2NlcHRdPVwidHlwZVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIiAoY2hhbmdlKT1cImZpbGVDaGFuZ2UoJGV2ZW50KVwiPlxuPC9kaXY+XG4iXX0=
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1pbnB1dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvZmlsZS1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvZmlsZS1pbnB1dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRy9FLE9BQU8sU0FBUyxNQUFNLDJEQUEyRCxDQUFBO0FBQ2pGLE9BQU8sU0FBUyxNQUFNLDJEQUEyRCxDQUFBO0FBQ2pGLE9BQU8sdUJBQXVCLE1BQU0seUVBQXlFLENBQUE7QUFDN0csT0FBTyxVQUFVLE1BQU0sY0FBYyxDQUFDO0FBRXRDLE9BQU8sRUFBc0Isa0JBQWtCLEVBQW9CLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7OztBQU90RyxNQUFNLE9BQU8sa0JBQWtCO0lBK0JuQjtJQUNBO0lBQ0E7SUFDQTtJQWpDVixRQUFRLENBQUM7SUFDVCxJQUFJLENBQUM7SUFDTCxNQUFNLENBQUM7SUFDUCxRQUFRLENBQUM7SUFDVCxTQUFTLENBQUM7SUFDVixXQUFXLENBQUM7SUFDWixJQUFJLENBQUM7SUFFTCxRQUFRLENBQW1CO0lBRTNCLEtBQUssR0FBRyxTQUFTLENBQUM7SUFDbEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixRQUFRLEdBQVksS0FBSyxDQUFDO0lBQzFCLE1BQU0sQ0FBUztJQUVmLFdBQVcsQ0FBcUI7SUFDaEMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUViLElBQUksR0FBRyxNQUFNLENBQUMs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QUVQLENBQUMsQ0FBQyxDQUFBO1FBRUosQ0FBQzthQUFJLENBQUM7WUFDSixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEIsQ0FBQztJQUVILENBQUM7SUFFRCxVQUFVLENBQUMsTUFBTTtRQUNmLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDckIsQ0FBQzt3R0FqTVUsa0JBQWtCOzRGQUFsQixrQkFBa0IsaUlDZi9CLDgzQ0F3QkE7OzRGRFRhLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZOzZLQTJCYixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTTtnQkFLQyxJQUFJO3NCQUFYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWxlRm9ybXNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvZmlsZS1mb3Jtcy5zZXJ2aWNlJztcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCBpbWFnZW5QZGYgZnJvbSAnLi4vLi4vLi4vYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvaW1hZ2VuZXMvcGRmJ1xuaW1wb3J0IGltYWdlbkRvYyBmcm9tICcuLi8uLi8uLi9icmFpbmxvcGVyLXVpL2NvbXBvbmVudHMvZmlsZS1pbnB1dC9pbWFnZW5lcy9kb2MnXG5pbXBvcnQgaW1hZ2VuRm9uZG9UcmFuc3BhcmVudGUgZnJvbSAnLi4vLi4vLi4vYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbGUtaW5wdXQvaW1hZ2VuZXMvZm9uZG9UcmFuc3BhcmVudGUnXG5pbXBvcnQgQ29tcHJlc3NvciBmcm9tICdjb21wcmVzc29yanMnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9tZXNzYWdlLnNlcnZpY2UnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpbGUtaW5wdXQnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsZS1pbnB1dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbGUtaW5wdXQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWxlSW5wdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBzdHlsZUltZztcbiAgdHlwZTtcbiAgYm9yZGVyO1xuICBpbWFnZVNyYztcbiAgc3R5bGVGb3JtO1xuICBzaXplUGljdHVyZTtcbiAgZWRpdDtcblxuICBmb3JtRmlsZTogVW50eXBlZEZvcm1Hcm91cDtcblxuICBjb2xvciA9ICdwcmltYXJ5JztcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcbiAgYWNjZXB0OiBzdHJpbmc7XG5cbiAgZmlsZUNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbDtcbiAgbWF4U2l6ZSA9IDE2O1xuXG4gIHNpemUgPSAxMDAwMDA7IC8vdGFtYcOxbyBhIGNvbXByaW1pciBsYXMgaW1hZ2VuZXMgZW4gYml0ZXNcblxuICBmaWxlTmFtZTogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KCkgcGFyYW1zO1xuICBAT3V0cHV0KCkgZmlsZVNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICB0eXBlRmlsZVxuICBwdWJsaWMgZmlsZXM7XG4gIGZpbGU9bnVsbFxuICBASW5wdXQoKWljb24gPSAnZm9sZGVyJ1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZpbGVGb3JtczogRmlsZUZvcm1zU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHAgOiBIdHRwU2VydmljZSxcbiAgICBwcml2YXRlIG1lc3NhZ2UgOiBNZXNzYWdlU2VydmljZSxcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXJcbiAgKSB7XG4gICAgdGhpcy5mb3JtRmlsZSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgcmVxdWlyZWRmaWxlOiBbXVxuICAgIH0pXG5cbiAgICB0aGlzLmZpbGVDb250cm9sID0gbmV3IFVudHlwZWRGb3JtQ29udHJvbCh0aGlzLmZpbGVzLCBbXG4gICAgICBWYWxpZGF0b3JzLnJlcXVpcmVkXG4gICAgXSlcbiAgfVxuXG4gIGZvcm06IFVudHlwZWRGb3JtR3JvdXA7XG4gIG5nT25Jbml0KCk6IHZvaWQge1xuXG4gICAgdGhpcy5mb3JtID0gdGhpcy5mb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICBmaWxlOiBbXVxuICAgIH0pXG5cbiAgICB0aGlzLnNpemVQaWN0dXJlPXtcbiAgICAgIHdpZHRoOmAke3RoaXMucGFyYW1zLnN0eWxlLndpZHRofWAsXG4gICAgICBoZWlnaHQ6dGhpcy5wYXJhbXMuc3R5bGUuaGVpZ2h0ID8gYCR7dGhpcy5wYXJhbXMuc3R5bGUuaGVpZ2h0fWAgOiAnMjAwcHgnLCBcbiAgICAgIFwiYm9yZGVyLXJhZGl1c1wiOiAnNSUnLFxuICAgICAgYm9yZGVyOmAke3RoaXMucGFyYW1zLnN0eWxlLmJvcmRlcn1gLFxuICAgIH1cblxuICAgIGlmKHRoaXMucGFyYW1zLmVkaXQgPT0gdHJ1ZSl7XG4gICAgICB0aGlzLmVkaXQgPSAnaW1nJ1xuICAgIH1lbHNle1xuICAgICAgdGhpcy5lZGl0ID0gJydcbiAgICB9XG5cbiAgICBsZXQgdHlwZXMgPSBBcnJheS5pc0FycmF5KHRoaXMucGFyYW1zLnR5cGVGaWxlKSA/IHRoaXMucGFyYW1zLnR5cGVGaWxlIDogW3RoaXMucGFyYW1zLnR5cGVGaWxlXTtcbiAgICB0aGlzLnR5cGVGaWxlID0gdHlwZXM7XG4gICAgdGhpcy50eXBlID0gdHlwZXMubWFwKHQgPT4ge1xuICAgICAgaWYgKHQgPT09ICdpbWFnZW4nKSByZXR1cm4gJ2ltYWdlLyonO1xuICAgICAgaWYgKHQgPT09ICdwZGYnKSByZXR1cm4gJy5wZGYnO1xuICAgICAgaWYgKHQgPT09ICdkb2MnKSByZXR1cm4gJy5kb2MsLmRvY3gnO1xuICAgICAgcmV0dXJuICcnO1xuICAgIH0pLmpvaW4oJywnKTtcblxuICAgIHRoaXMuZnVuY3Rpb25UeXBlRmlsZSgpXG4gIH1cblxuICBmdW5jdGlvblR5cGVGaWxlKCl7XG5cbiAgICBpZih0aGlzLnBhcmFtcy5zdHlsZS5zaGFwZSA9PSBcImNpcmN1bGFyXCIpe1xuXG4gICAgICB0aGlzLnNpemVQaWN0dXJlWydib3JkZXItcmFkaXVzJ109XCI1MCVcIlxuICAgICAgdGhpcy5zaXplUGljdHVyZS53aWR0aD1gJHtzY3JlZW4ud2lkdGgqKHRoaXMucGFyYW1zLnN0eWxlLndpZHRoLnJlcGxhY2UoJyUnLCAnJykvMTAwKX1weGBcbiAgICAgIHRoaXMuc2l6ZVBpY3R1cmUuaGVpZ2h0ID0gdGhpcy5zaXplUGljdHVyZS53aWR0aFxuXG4gICAgfVxuXG4gICAgdGhpcy5ib3JkZXIgPXtcbiAgICAgIFwiYm9yZGVyUmFkaXVzXCI6YCR7dGhpcy5zaXplUGljdHVyZVsnYm9yZGVyLXJhZGl1cyddfWBcbiAgICB9XG5cbiAgICB0aGlzLnN0eWxlRm9ybT17XG4gICAgICB3aWR0aDpgJHt0aGlzLnBhcmFtcy5zdHlsZS53aWR0aH1gLFxuICAgICAgaGVpZ2h0OmAke3RoaXMucGFyYW1zLnN0eWxlLmhlaWdodH1gXG4gICAgfVxuXG4gICAgdGhpcy5zdHlsZUltZyA9IHtcbiAgICAgIHdpZHRoOicxMDAlJyxcbiAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgICAgXCJib3JkZXItcmFkaXVzXCI6YCR7dGhpcy5zaXplUGljdHVyZVsnYm9yZGVyLXJhZGl1cyddfWAsXG4gICAgfVxuXG4gICAgaWYgKHRoaXMudHlwZUZpbGUuaW5jbHVkZXMoJ2ltYWdlbicpKSB7XG4gICAgICB0aGlzLmltYWdlU3JjID0gdGhpcy5wYXJhbXMuaW1hZ2VTcmMgfHwgaW1hZ2VuRm9uZG9UcmFuc3BhcmVudGU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW1hZ2VTcmMgPSBpbWFnZW5Gb25kb1RyYW5zcGFyZW50ZTtcbiAgICB9XG5cbiAgIH1cblxuICBhc3luYyBmaWxlQ2hhbmdlKCRldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCBmaWxlID0gJGV2ZW50LnRhcmdldFsnZmlsZXMnXVswXTtcbiAgICBpZiAoIWZpbGUpIHJldHVybjtcblxuICAgIHRoaXMuZmlsZU5hbWUgPSBmaWxlLm5hbWU7XG5cbiAgICBpZiAoZmlsZS5zaXplIDwgMTUwMDAwMDApIHtcbiAgICAgIHRoaXMuZmlsZSA9IGZpbGU7XG4gICAgICBjb25zdCBtaW1lID0gZmlsZS50eXBlO1xuICAgICAgY29uc3QgbmFtZSA9IGZpbGUubmFtZS50b0xvd2VyQ2FzZSgpO1xuXG4gICAgICAvLyBOVUVWTzogRGV0ZWN0YXIgdGlwbyBzZWfDum4gYXJjaGl2byBzdWJpZG8geSBsbyBwZXJtaXRpZG9cbiAgICAgIGlmIChtaW1lLnN0YXJ0c1dpdGgoJ2ltYWdlLycpICYmIHRoaXMudHlwZUZpbGUuaW5jbHVkZXMoJ2ltYWdlbicpKSB7XG4gICAgICAgIC8vIEltYWdlblxuICAgICAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgICByZWFkZXIub25sb2FkID0gZSA9PiB0aGlzLmltYWdlU3JjID0gcmVhZGVyLnJlc3VsdDtcbiAgICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwodGhpcy5maWxlKTtcbiAgICAgICAgY29uc3QgciA9IGF3YWl0IHRoaXMuY29tcHJlc3NvcigpO1xuICAgICAgICBpZiAociA9PT0gZmFsc2UpIHtcbiAgICAgICAgICB0aGlzLmZpbGVTYXZlLmVtaXQoeyBuZXc6IHRoaXMuZmlsZSB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmZpbGVTYXZlLmVtaXQoeyBuZXc6IHRoaXMuZmlsZSwgY29tcHJlc3NvcjogciB9KTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmICgobWltZSA9PT0gJ2FwcGxpY2F0aW9uL3BkZicgfHwgbmFtZS5lbmRzV2l0aCgnLnBkZicpKSAmJiB0aGlzLnR5cGVGaWxlLmluY2x1ZGVzKCdwZGYnKSkge1xuICAgICAgICAvLyBQREZcbiAgICAgICAgdGhpcy5pbWFnZVNyYyA9ICcnO1xuICAgICAgICB0aGlzLnN0eWxlSW1nID0ge1xuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgICAgICAgXCJib3JkZXItcmFkaXVzXCI6IGAke3RoaXMuc2l6ZVBpY3R1cmVbJ2JvcmRlci1yYWRpdXMnXX1gLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1pbWFnZVwiOiBgdXJsKCR7aW1hZ2VuUGRmfSlgLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1wb3NpdGlvblwiOiBcImNlbnRlclwiLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1zaXplXCI6IFwiMzAlIDY1JVwiLFxuICAgICAgICAgIFwiYmFja2dyb3VuZC1yZXBlYXRcIjogXCJuby1yZXBlYXRcIlxuICAgICAgICB9O1xuICAgICAgICB0aGlzLmZpbGVTYXZlLmVtaXQoeyBuZXc6IHRoaXMuZmlsZSB9KTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIChtaW1lID09PSAnYXBwbGljYXRpb24vbXN3b3JkJyB8fFxuICAgICAgICBtaW1lID09PSAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LndvcmRwcm9jZXNzaW5nbWwuZG9jdW1lbnQnIHx8XG4gICAgICAgIG5hbWUuZW5kc1dpdGgoJy5kb2MnKSB8fCBuYW1lLmVuZHNXaXRoKCcuZG9jeCcpKSAmJiB0aGlzLnR5cGVGaWxlLmluY2x1ZGVzKCdkb2MnKVxuICAgICAgKSB7XG4gICAgICAgIC8vIERPQy9ET0NYXG4gICAgICAgIHRoaXMuaW1hZ2VTcmMgPSAnJzsgXG4gICAgICAgIHRoaXMuc3R5bGVJbWcgPSB7XG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICAgICAgICBcImJvcmRlci1yYWRpdXNcIjogYCR7dGhpcy5zaXplUGljdHVyZVsnYm9yZGVyLXJhZGl1cyddfWAsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLWltYWdlXCI6IGB1cmwoJHtpbWFnZW5Eb2N9KWAsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLXBvc2l0aW9uXCI6IFwiY2VudGVyXCIsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLXNpemVcIjogXCIzMCUgNjUlXCIsXG4gICAgICAgICAgXCJiYWNrZ3JvdW5kLXJlcGVhdFwiOiBcIm5vLXJlcGVhdFwiXG4gICAgICAgIH07XG4gICAgICAgIHRoaXMuZmlsZVNhdmUuZW1pdCh7IG5ldzogdGhpcy5maWxlIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5tZXNzYWdlLkVycm9yKCdFcnJvcicsICdUaXBvIGRlIGFyY2hpdm8gbm8gc29wb3J0YWRvJyk7XG4gICAgICB9XG4gICAgfWVsc2V7XG4gICAgICB0aGlzLm1lc3NhZ2UuRXJyb3IoJ0Vycm9yJywgJ0FyY2hpdm8gbXV5IHBlc2FkbywgdGFtYcOxbyBtw61uaW1vIDE1IE1CJylcbiAgICB9XG4gIH1cblxuICAgY29tcHJlc3Nvcigpe1xuICAgIGlmKHRoaXMuZmlsZS5zaXplID4gNTAwMDAwICYmIHRoaXMuZmlsZS5zaXplIDwgMTUwMDAwMDApe1xuICAgICAgbGV0IGZhY3RvciA9ICh0aGlzLnNpemUqMTAwKS90aGlzLmZpbGUuc2l6ZVxuICAgICAgbGV0IHkgPSAoKGZhY3RvcioqMykqKDEwKiotNikpLSgwLjAwMDU5KihmYWN0b3IqKjIpKSsoMC4wMzk5KmZhY3RvcilcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSxyZWplY3QpPT57XG4gICAgICAgIG5ldyBDb21wcmVzc29yICh0aGlzLmZpbGUsIHtcbiAgICAgICAgICAgIHF1YWxpdHk6IHksXG4gICAgICAgICAgICBzdWNjZXNzKHJlc3VsdCl7XG4gICAgICAgICAgICAgIHJlc29sdmUocmVzdWx0KVxuICAgICAgICAgICAgfVxuICAgICAgICAgICB9KVxuXG4gICAgICB9KVxuXG4gICAgfWVsc2V7XG4gICAgICByZXR1cm4gKGZhbHNlKVxuICAgIH1cblxuICB9XG5cbiAgc2VsZWN0RmlsZSgkZXZlbnQpe1xuICAgIGNvbnNvbGUubG9nKCRldmVudClcbiAgfVxuXG59XG4iLCI8ZGl2ICAqbmdJZj1cInBhcmFtcy5pbnB1dCA9PSAndmlzdGEnXCIgW2NsYXNzXT0nZWRpdCcgW25nU3R5bGVdPVwic2l6ZVBpY3R1cmVcIj5cbiAgXG4gIDxpbWcgKm5nSWY9XCJpbWFnZVNyY1wiIFtuZ1N0eWxlXT1cInN0eWxlSW1nXCIgc3JjPVwie3t0aGlzLmltYWdlU3JjfX1cIiAvPlxuICA8ZGl2ICpuZ0lmPVwiIWltYWdlU3JjXCIgW25nU3R5bGVdPVwic3R5bGVJbWdcIj48L2Rpdj5cblxuXHQ8ZGl2ICAqbmdJZj1cInBhcmFtcy5lZGl0ID09IHRydWVcIiBjbGFzcz1cImVudHJhZGFcIiBbbmdTdHlsZV09XCJib3JkZXJcIj5cblx0XHQ8aW5wdXQgaWQ9XCJpbnB1dFwiIHR5cGU9XCJmaWxlXCIgdGl0bGU9J1N1YmlyIGFyY2hpdm8nIFthY2NlcHRdPSd0eXBlJ1xuXHRcdFx0c3R5bGU9J3dpZHRoOiAxMDAlOyBoZWlnaHQ6IDEwMCU7IG9wYWNpdHk6IDA7IG92ZXJmbG93OiBoaWRkZW47IHotaW5kZXg6IDE7IGN1cnNvcjogcG9pbnRlcjsnXG5cdFx0XHQoY2hhbmdlKT0nZmlsZUNoYW5nZSgkZXZlbnQpJz5cblx0PC9kaXY+XG5cbjwvZGl2PlxuPGRpdiAqbmdJZj1cInBhcmFtcy5pbnB1dCA9PSAnZm9ybXVsYXJpbydcIj5cbiAgPG1hdC1mb3JtLWZpZWxkIFtuZ1N0eWxlXT1cInN0eWxlRm9ybVwiIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiIHN0eWxlPVwiY3Vyc29yOnBvaW50ZXI7XCI+XG4gICAgPG1hdC1sYWJlbD57e3BhcmFtcy5sYWJlbH19PC9tYXQtbGFiZWw+XG4gICAgPGlucHV0IGRpc2FibGVkIHR5cGU9XCJ0ZXh0XCIgbWF0SW5wdXQgW3BsYWNlaG9sZGVyXT1cInBhcmFtcy5sYWJlbFwiIFt2YWx1ZV09XCJmaWxlTmFtZSB8fCAnJ1wiIHJlYWRvbmx5IHN0eWxlPVwicG9pbnRlci1ldmVudHM6bm9uZTsgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcIj5cbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBtYXRTdWZmaXggdHlwZT1cImJ1dHRvblwiIHRhYmluZGV4PVwiLTFcIiBzdHlsZT1cInBvaW50ZXItZXZlbnRzOm5vbmU7XCI+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJ0eXBlRmlsZT09J2ltYWdlbidcIj5hZGRfYV9waG90bzwvbWF0LWljb24+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJ0eXBlRmlsZT09J3BkZidcIj5waWN0dXJlX2FzX3BkZjwvbWF0LWljb24+XG4gICAgICA8bWF0LWljb24gKm5nSWY9XCJ0eXBlRmlsZT09J2RvYydcIj5pbnNlcnRfZHJpdmVfZmlsZTwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDxpbnB1dCAjZmlsZUlucHV0IGlkPVwiaW5wdXRcIiB0eXBlPVwiZmlsZVwiIHRpdGxlPVwiU3ViaXIgYXJjaGl2b1wiIFthY2NlcHRdPVwidHlwZVwiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIiAoY2hhbmdlKT1cImZpbGVDaGFuZ2UoJGV2ZW50KVwiPlxuPC9kaXY+XG4iXX0=
@@ -213,15 +213,15 @@ export class FiltersComponent {
213
213
  this.applyFilters.emit(this.filtersPost);
214
214
  }
215
215
  }
216
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FiltersComponent, deps: [{ token: i1.FunctionsService }, { token: i2.HttpService }], target: i0.ɵɵFactoryTarget.Component });
217
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FiltersComponent, selector: "app-filters", inputs: { headerFilters: "headerFilters" }, outputs: { applyFilters: "applyFilters" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"headerFilters && headerFilters.length > 0\" style=\"display: flex; width: 100%; flex-wrap: wrap;\" class=\"col-12 mb-2\">\n <div class=\"col-md-4 col-12 pe-3\">\n <mat-form-field >\n <mat-label>Filtros</mat-label>\n <mat-select (selectionChange)=\"selectFilter($event)\" [(ngModel)]=\"headerFiltersValue\">\n <mat-option\n *ngFor=\"let f of headerFilters\"\n value=\"{{ f.labelFilter }}\"\n >\n {{ f.labelFilter }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <div *ngFor=\"let item of headerFiltersSelected\" class=\"col-md-4 col-12 d-flex align-items-center\">\n <mat-form-field *ngIf=\"item.type == 'select'\">\n <mat-label>Filtrar por {{item.labelFilter}}</mat-label>\n <mat-select (selectionChange)=\"selectFilterData($event, item)\" [value]=\"item.value\">\n <app-select-filter\n [placeholder]=\"'Filter'\"\n [displayMember]=\"item.visibleField\"\n [array]=\"item.body\"\n (filteredReturn)=\"item.filteredList = $event\"\n [noResultsMessage]=\"'No hay resultados'\"\n >\n </app-select-filter>\n <mat-option\n *ngFor=\"let data of item.filteredList\"\n value=\"{{ data[item.primaryKey] }}\"\n >\n {{ data[item.visibleField] }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field *ngIf=\"item.type == 'date'\" [formGroup]=\"fecha\">\n <mat-label>{{item.labelFilter}}</mat-label>\n <input (dateInput)=\"selectFilterData($event, item)\" matInput [matDatepicker]=\"Fecha\" autocomplete=\"off\" matInput\n formControlName='fecha' required>\n <mat-datepicker-toggle matSuffix [for]=\"Fecha\">\n </mat-datepicker-toggle>\n <mat-datepicker dateInput #Fecha [touchUi]='movil?true:false'></mat-datepicker>\n </mat-form-field>\n\n <mat-form-field *ngIf=\"item.type == 'dateRange'\">\n <mat-label>{{item.labelFilter}}</mat-label>\n <mat-date-range-input\n [formGroup]=\"campaignOne\"\n [rangePicker]=\"campaignOnePicker\"\n [comparisonStart]=\"campaignTwo.value.start\"\n [comparisonEnd]=\"campaignTwo.value.end\">\n <input matStartDate placeholder=\"Start date\" formControlName=\"start\">\n <input (dateInput)=\"selectFilterData($event, item)\" matEndDate placeholder=\"End date\" formControlName=\"end\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"campaignOnePicker\"></mat-datepicker-toggle>\n <mat-date-range-picker #campaignOnePicker></mat-date-range-picker>\n </mat-form-field>\n\n <div class=\"p-2\" style=\"cursor: pointer\" (click)=\"delteFilter(item)\"><mat-icon>cancel</mat-icon></div>\n\n </div>\n</div>\n", styles: ["mat-form-field{padding:0!important;width:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i9.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i9.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i9.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i9.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i9.MatStartDate, selector: "input[matStartDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i9.MatEndDate, selector: "input[matEndDate]", inputs: ["errorStateMatcher"], outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i9.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "directive", type: i10.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i10.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i10.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i10.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i11.SelectFilterComponent, selector: "app-select-filter", inputs: ["array", "placeholder", "color", "displayMember", "showSpinner", "noResultsMessage", "hasGroup", "groupArrayName"], outputs: ["filteredReturn"] }] });
216
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FiltersComponent, deps: [{ token: i1.FunctionsService }, { token: i2.HttpService }], target: i0.ɵɵFactoryTarget.Component });
217
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FiltersComponent, selector: "app-filters", inputs: { headerFilters: "headerFilters" }, outputs: { applyFilters: "applyFilters" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"headerFilters && headerFilters.length > 0\" style=\"display: flex; width: 100%; flex-wrap: wrap;\" class=\"col-12 mb-2\">\n <div class=\"col-md-4 col-12 pe-3\">\n <mat-form-field >\n <mat-label>Filtros</mat-label>\n <mat-select (selectionChange)=\"selectFilter($event)\" [(ngModel)]=\"headerFiltersValue\">\n <mat-option\n *ngFor=\"let f of headerFilters\"\n value=\"{{ f.labelFilter }}\"\n >\n {{ f.labelFilter }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <div *ngFor=\"let item of headerFiltersSelected\" class=\"col-md-4 col-12 d-flex align-items-center\">\n <mat-form-field *ngIf=\"item.type == 'select'\">\n <mat-label>Filtrar por {{item.labelFilter}}</mat-label>\n <mat-select (selectionChange)=\"selectFilterData($event, item)\" [value]=\"item.value\">\n <app-select-filter\n [placeholder]=\"'Filter'\"\n [displayMember]=\"item.visibleField\"\n [array]=\"item.body\"\n (filteredReturn)=\"item.filteredList = $event\"\n [noResultsMessage]=\"'No hay resultados'\"\n >\n </app-select-filter>\n <mat-option\n *ngFor=\"let data of item.filteredList\"\n value=\"{{ data[item.primaryKey] }}\"\n >\n {{ data[item.visibleField] }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field *ngIf=\"item.type == 'date'\" [formGroup]=\"fecha\">\n <mat-label>{{item.labelFilter}}</mat-label>\n <input (dateInput)=\"selectFilterData($event, item)\" matInput [matDatepicker]=\"Fecha\" autocomplete=\"off\" matInput\n formControlName='fecha' required>\n <mat-datepicker-toggle matSuffix [for]=\"Fecha\">\n </mat-datepicker-toggle>\n <mat-datepicker dateInput #Fecha [touchUi]='movil?true:false'></mat-datepicker>\n </mat-form-field>\n\n <mat-form-field *ngIf=\"item.type == 'dateRange'\">\n <mat-label>{{item.labelFilter}}</mat-label>\n <mat-date-range-input\n [formGroup]=\"campaignOne\"\n [rangePicker]=\"campaignOnePicker\"\n [comparisonStart]=\"campaignTwo.value.start\"\n [comparisonEnd]=\"campaignTwo.value.end\">\n <input matStartDate placeholder=\"Start date\" formControlName=\"start\">\n <input (dateInput)=\"selectFilterData($event, item)\" matEndDate placeholder=\"End date\" formControlName=\"end\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"campaignOnePicker\"></mat-datepicker-toggle>\n <mat-date-range-picker #campaignOnePicker></mat-date-range-picker>\n </mat-form-field>\n\n <div class=\"p-2\" style=\"cursor: pointer\" (click)=\"delteFilter(item)\"><mat-icon>cancel</mat-icon></div>\n\n </div>\n</div>\n", styles: ["mat-form-field{padding:0!important;width:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i8.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "component", type: i9.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i9.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i9.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "component", type: i9.MatDateRangeInput, selector: "mat-date-range-input", inputs: ["rangePicker", "required", "dateFilter", "min", "max", "disabled", "separator", "comparisonStart", "comparisonEnd"], exportAs: ["matDateRangeInput"] }, { kind: "directive", type: i9.MatStartDate, selector: "input[matStartDate]", outputs: ["dateChange", "dateInput"] }, { kind: "directive", type: i9.MatEndDate, selector: "input[matEndDate]", outputs: ["dateChange", "dateInput"] }, { kind: "component", type: i9.MatDateRangePicker, selector: "mat-date-range-picker", exportAs: ["matDateRangePicker"] }, { kind: "directive", type: i10.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i10.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i10.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i10.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i10.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i10.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i10.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i11.SelectFilterComponent, selector: "app-select-filter", inputs: ["array", "placeholder", "color", "displayMember", "showSpinner", "noResultsMessage", "hasGroup", "groupArrayName"], outputs: ["filteredReturn"] }] });
218
218
  }
219
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FiltersComponent, decorators: [{
219
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FiltersComponent, decorators: [{
220
220
  type: Component,
221
221
  args: [{ selector: 'app-filters', template: "<div *ngIf=\"headerFilters && headerFilters.length > 0\" style=\"display: flex; width: 100%; flex-wrap: wrap;\" class=\"col-12 mb-2\">\n <div class=\"col-md-4 col-12 pe-3\">\n <mat-form-field >\n <mat-label>Filtros</mat-label>\n <mat-select (selectionChange)=\"selectFilter($event)\" [(ngModel)]=\"headerFiltersValue\">\n <mat-option\n *ngFor=\"let f of headerFilters\"\n value=\"{{ f.labelFilter }}\"\n >\n {{ f.labelFilter }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n </div>\n\n <div *ngFor=\"let item of headerFiltersSelected\" class=\"col-md-4 col-12 d-flex align-items-center\">\n <mat-form-field *ngIf=\"item.type == 'select'\">\n <mat-label>Filtrar por {{item.labelFilter}}</mat-label>\n <mat-select (selectionChange)=\"selectFilterData($event, item)\" [value]=\"item.value\">\n <app-select-filter\n [placeholder]=\"'Filter'\"\n [displayMember]=\"item.visibleField\"\n [array]=\"item.body\"\n (filteredReturn)=\"item.filteredList = $event\"\n [noResultsMessage]=\"'No hay resultados'\"\n >\n </app-select-filter>\n <mat-option\n *ngFor=\"let data of item.filteredList\"\n value=\"{{ data[item.primaryKey] }}\"\n >\n {{ data[item.visibleField] }}\n </mat-option>\n </mat-select>\n </mat-form-field>\n\n <mat-form-field *ngIf=\"item.type == 'date'\" [formGroup]=\"fecha\">\n <mat-label>{{item.labelFilter}}</mat-label>\n <input (dateInput)=\"selectFilterData($event, item)\" matInput [matDatepicker]=\"Fecha\" autocomplete=\"off\" matInput\n formControlName='fecha' required>\n <mat-datepicker-toggle matSuffix [for]=\"Fecha\">\n </mat-datepicker-toggle>\n <mat-datepicker dateInput #Fecha [touchUi]='movil?true:false'></mat-datepicker>\n </mat-form-field>\n\n <mat-form-field *ngIf=\"item.type == 'dateRange'\">\n <mat-label>{{item.labelFilter}}</mat-label>\n <mat-date-range-input\n [formGroup]=\"campaignOne\"\n [rangePicker]=\"campaignOnePicker\"\n [comparisonStart]=\"campaignTwo.value.start\"\n [comparisonEnd]=\"campaignTwo.value.end\">\n <input matStartDate placeholder=\"Start date\" formControlName=\"start\">\n <input (dateInput)=\"selectFilterData($event, item)\" matEndDate placeholder=\"End date\" formControlName=\"end\">\n </mat-date-range-input>\n <mat-datepicker-toggle matSuffix [for]=\"campaignOnePicker\"></mat-datepicker-toggle>\n <mat-date-range-picker #campaignOnePicker></mat-date-range-picker>\n </mat-form-field>\n\n <div class=\"p-2\" style=\"cursor: pointer\" (click)=\"delteFilter(item)\"><mat-icon>cancel</mat-icon></div>\n\n </div>\n</div>\n", styles: ["mat-form-field{padding:0!important;width:100%}\n"] }]
222
- }], ctorParameters: function () { return [{ type: i1.FunctionsService }, { type: i2.HttpService }]; }, propDecorators: { headerFilters: [{
222
+ }], ctorParameters: () => [{ type: i1.FunctionsService }, { type: i2.HttpService }], propDecorators: { headerFilters: [{
223
223
  type: Input
224
224
  }], applyFilters: [{
225
225
  type: Output
226
226
  }] } });
227
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbHRlcnMvZmlsdGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbHRlcnMvZmlsdGVycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBVyxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBU3RFLE1BQU0sT0FBTyxnQkFBZ0I7SUFnQmpCO0lBQ0E7SUFmRCxhQUFhLEdBQWUsRUFBRSxDQUFBO0lBQzdCLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBRWpELGtCQUFrQixHQUFHLElBQUksQ0FBQTtJQUN6QixxQkFBcUIsR0FBZ0IsRUFBRSxDQUFBO0lBQ3ZDLFdBQVcsQ0FBbUI7SUFDOUIsV0FBVyxDQUFtQjtJQUM5QixLQUFLLENBQW1CO0lBQ3hCLEtBQUssR0FBRyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7SUFHbEMsV0FBVyxHQUFHLEVBQUUsQ0FBQTtJQUVoQixZQUNVLFlBQThCLEVBQzlCLElBQWlCO1FBRGpCLGlCQUFZLEdBQVosWUFBWSxDQUFrQjtRQUM5QixTQUFJLEdBQUosSUFBSSxDQUFhO1FBRXpCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUNoQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQTtJQUN4QixDQUFDO0lBQ0YsS0FBSyxDQUFDLFdBQVcsQ0FBQyxPQUFzQjtRQUN0QyxJQUFLLE9BQU8sRUFBRTtZQUNaLE1BQU0sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBO1NBQ3hCO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFRO1FBQ1osMERBQTBEO1FBQzFELDRCQUE0QjtJQUM5QixDQUFDO0lBRUQsa0JBQWtCLENBQUMsWUFBb0IsRUFBRSxJQUFRLEVBQUUsU0FBUyxHQUFHLElBQUksRUFBRSxhQUFhLEdBQUcsSUFBSSxFQUFFLGFBQWEsR0FBRyxJQUFJO1FBQzdHLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNqQixLQUFLLE1BQU07Z0JBQ1QsSUFBRyxZQUFZLEVBQUM7b0JBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQzt3QkFDZixXQUFXLEVBQUMsYUFBYTt3QkFDekIsSUFBSSxFQUFDLFdBQVc7cUJBQ2pCLENBQUMsQ0FBQTtpQkFDSDtxQkFBSTtvQkFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUE7aUJBQ3ZEO2dCQUNELE1BQUs7WUFDUCxLQUFLLFdBQVc7Z0JBQ2QsSUFBRyxZQUFZLEVBQUM7b0JBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQzt3QkFDZixXQUFXLEVBQUMsZUFBZTt3QkFDM0IsSUFBSSxFQUFDLE1BQU07cUJBQ2QsQ0FBQyxDQUFBO2lCQUNEO3FCQUFJO29CQUNILElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDLEVBQUcsSUFBSSxJQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQTtpQkFDdEg7Z0JBQ0QsTUFBSztZQUVQO2dCQUNFLE1BQU07U0FDVDtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsTUFBTTtRQUNqQixJQUFJLFFBQVEsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDbEYsSUFBRyxDQUFDLFFBQVEsRUFBQztZQUNYLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDdkUsSUFBRyxLQUFLLEVBQUM7Z0JBQ1AsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtnQkFDdEMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRyxFQUFDLElBQUksRUFBQyxLQUFLLENBQUMsSUFBSSxFQUFDLENBQUMsQ0FBQTthQUNsRDtTQUNGO1FBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUE7UUFDaEMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsSUFBSTtRQUNqQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDcEYsSUFBRyxDQUFDLElBQUksQ0FBQztZQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQTtRQUM5RCxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzFFLElBQUcsTUFBTSxDQUFDLEtBQUssRUFBQztZQUNkLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQTtZQUNoQixRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUU7Z0JBQ2pCLEtBQUssUUFBUTtvQkFDWCxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQTtvQkFDcEIsTUFBTTtnQkFDUixLQUFLLE1BQU07b0JBQ1QsS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtvQkFDOUMsTUFBSztnQkFDUCxLQUFLLFdBQVc7b0JBQ2QsS0FBSyxHQUFHLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFBO29CQUM3SSxNQUFLO2dCQUVQO29CQUNFLE1BQU07YUFDVDtZQUNELElBQUcsQ0FBQyxLQUFLO2dCQUFFLE9BQU07WUFDakIsSUFBRyxDQUFDLElBQUksQ0FBQyxFQUFDO2dCQUNSLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQTthQUNsQztpQkFBSTtnQkFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztvQkFDcEIsRUFBRSxFQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUNoQixVQUFVLEVBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUEsSUFBSSxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUEsSUFBSSxDQUFDLFVBQVU7b0JBQzFELElBQUksRUFBQyxJQUFJLENBQUMsSUFBSTtvQkFDZCxLQUFLLEVBQUMsS0FBSztvQkFDWCxXQUFXLEVBQUMsSUFBSSxDQUFDLFdBQVc7aUJBQzdCLENBQUMsQ0FBQTthQUNIO1lBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1NBQ3pDO0lBR0gsQ0FBQztJQUVELFdBQVcsQ0FBQyxJQUFJO1FBQ2QsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQ3BGLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDMUUsSUFBRyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ1QsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUE7WUFDMUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUE7U0FDeEM7UUFDRCxJQUFHLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUE7WUFDNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1NBQ3pDO1FBQ0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUNwQyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQTtRQUNoQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO0lBRUQsU0FBUyxDQUFDLFFBQWUsSUFBSTtRQUMzQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDaEMsS0FBSyxFQUFFLElBQUksa0JBQWtCLENBQUMsS0FBSyxDQUFDO1NBQ3JDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFlLElBQUksRUFBRSxTQUFnQixJQUFJLEVBQUUsU0FBZ0IsSUFBSTtRQUM5RSxJQUFHLElBQUksRUFBQztZQUNOLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQztnQkFDdEMsS0FBSyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDO2dCQUNuQyxHQUFHLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7YUFDbEMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLGdCQUFnQixDQUFDO2dCQUN0QyxLQUFLLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7Z0JBQ25DLEdBQUcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksQ0FBQzthQUNsQyxDQUFDLENBQUM7WUFDSCxPQUFNO1NBQ1A7UUFDRCxJQUFJLElBQUksR0FBRyxDQUFDLENBQUE7UUFDWixJQUFJLElBQUksR0FBRyxFQUFFLENBQUE7UUFDYixJQUFHLENBQUMsTUFBTSxFQUFDO1lBQ1QsTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUE7U0FDcEI7YUFBSTtZQUNILElBQUksR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUE7U0FDeEI7UUFFRCxJQUFHLENBQUMsTUFBTSxFQUFDO1lBQ1QsTUFBTSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUE7U0FDcEI7YUFBSTtZQUNILElBQUksR0FBRyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUE7U0FDeEI7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksZ0JBQWdCLENBQUM7WUFDdEMsS0FBSyxFQUFFLElBQUksa0JBQWtCLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0RixHQUFHLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1NBQ3JGLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQztZQUN0QyxLQUFLLEVBQUUsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3RGLEdBQUcsRUFBRSxJQUFJLGtCQUFrQixDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDckYsQ0FBQyxDQUFDO0lBRUwsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVO1FBQ2QsZ0RBQWdEO1FBQ2hELFdBQVc7UUFDWCxJQUFJO1FBQ0osSUFBSSxXQUFXLEdBQUcsS0FBSyxDQUFBO1FBQ3ZCLEtBQUksSUFBSSxPQUFPLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBQztZQUVwQyxJQUFHLE9BQU8sQ0FBQyxPQUFPLEVBQUM7Z0JBQ2pCLElBQUksR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO2dCQUMzRCxPQUFPLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQzthQUNwQjtpQkFBSyxJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksUUFBUSxFQUFFO2dCQUNsQyxPQUFPLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUE7YUFDNUI7WUFDRCxPQUFPLENBQUMsWUFBWSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDcEMsSUFBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVO2dCQUFFLE9BQU8sQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQTtZQUNqRSxJQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksTUFBTTtnQkFBRSxPQUFPLENBQUMsV0FBVyxHQUFHLE9BQU8sQ0FBQyxXQUFXLElBQUksZUFBZSxDQUFBO1lBQ3ZGLElBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxXQUFXO2dCQUFFLE9BQU8sQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLFdBQVcsSUFBSSxhQUFhLENBQUE7WUFDMUYsSUFBRyxPQUFPLENBQUMsTUFBTSxFQUFFO2dCQUNqQixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFBO2dCQUN4QyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztvQkFDcEIsRUFBRSxFQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO29CQUNuQixVQUFVLEVBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUEsT0FBTyxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUEsT0FBTyxDQUFDLFVBQVU7b0JBQ25FLElBQUksRUFBQyxPQUFPLENBQUMsSUFBSTtvQkFDakIsS0FBSyxFQUFDLE9BQU8sQ0FBQyxLQUFLO29CQUNuQixXQUFXLEVBQUMsT0FBTyxDQUFDLFdBQVc7aUJBQ2hDLENBQUMsQ0FBQTtnQkFDRixJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7Z0JBQ2hILElBQUksT0FBTyxDQUFDLEtBQUssSUFBSSxPQUFPLENBQUMsS0FBSyxJQUFJLEVBQUUsRUFBRTtvQkFDeEMsV0FBVyxHQUFHLElBQUksQ0FBQTtpQkFDbkI7YUFDRjtTQUNGO1FBQ0QsSUFBSSxXQUFXLEVBQUU7WUFDZixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7U0FDekM7SUFDSCxDQUFDO3dHQWxOVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQiwrSkNiN0IsaTJGQStEQTs7NEZEbERhLGdCQUFnQjtrQkFMNUIsU0FBUzsrQkFDRSxhQUFhO2lJQU1kLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0ksWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCB7IEZ1bmN0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mdW5jdGlvbnMuc2VydmljZSc7XG5pbXBvcnQgeyBTY3JlZW5TaXplVXRpbCB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL3NjcmVlbi1zaXplLXV0aWwnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBEb0NoZWNrLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUNvbnRyb2wsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBlbGVtZW50IH0gZnJvbSAncHJvdHJhY3Rvcic7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZpbHRlcnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vZmlsdGVycy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpbHRlcnMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBGaWx0ZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpIGhlYWRlckZpbHRlcnM6IEFycmF5PGFueT4gPSBbXVxuICBAT3V0cHV0KCkgYXBwbHlGaWx0ZXJzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgaGVhZGVyRmlsdGVyc1ZhbHVlID0gXCItMVwiXG4gIGhlYWRlckZpbHRlcnNTZWxlY3RlZCA6IEFycmF5PGFueT4gPSBbXVxuICBjYW1wYWlnbk9uZTogVW50eXBlZEZvcm1Hcm91cDtcbiAgY2FtcGFpZ25Ud286IFVudHlwZWRGb3JtR3JvdXA7XG4gIGZlY2hhOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBtb3ZpbCA9IFNjcmVlblNpemVVdGlsLmlzTW9iaWxlKCk7XG5cblxuICBmaWx0ZXJzUG9zdCA9IFtdXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBmdW5jdGlvbkV0ZXI6IEZ1bmN0aW9uc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5sb2FkRGF0ZXMoKVxuICAgIHRoaXMubG9hZERhdGVzQmV0d2VlbigpXG4gICB9XG4gIGFzeW5jIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoIGNoYW5nZXMpIHtcbiAgICAgIGF3YWl0IHRoaXMubG9hZEZpbHRlcigpXG4gICAgfVxuICB9ICBcblxuICBhc3luYyBuZ09uSW5pdCgpIHtcbiAgICAvLyBpZih0aGlzLmhlYWRlckZpbHRlcnMgJiYgdGhpcy5oZWFkZXJGaWx0ZXJzLmxlbmd0aCA+IDApXG4gICAgLy8gICBhd2FpdCB0aGlzLmxvYWRGaWx0ZXIoKVxuICB9XG5cbiAgaGFuZGxlckZpbHRlcnNEYXRlKGRlbGV0ZUZpbHRlcjpib29sZWFuLCBpdGVtOmFueSwgdmFsdWVEYXRlID0gbnVsbCwgdmFsdWVCZXR3ZWVuMSA9IG51bGwsIHZhbHVlQmV0d2VlbjIgPSBudWxsKXtcbiAgICBzd2l0Y2ggKGl0ZW0udHlwZSkge1xuICAgICAgY2FzZSAnZGF0ZSc6XG4gICAgICAgIGlmKGRlbGV0ZUZpbHRlcil7XG4gICAgICAgICAgdGhpcy5kZWx0ZUZpbHRlcih7XG4gICAgICAgICAgICBsYWJlbEZpbHRlcjonRmVjaGEgZW50cmUnLFxuICAgICAgICAgICAgdHlwZTonZGF0ZVJhbmdlJ1xuICAgICAgICAgIH0pXG4gICAgICAgIH1lbHNle1xuICAgICAgICAgIHRoaXMubG9hZERhdGVzKG5ldyBEYXRlKHZhbHVlRGF0ZSArIFwiVDA1OjAwOjAwLjAwMFpcIikpXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICAgIGNhc2UgJ2RhdGVSYW5nZSc6XG4gICAgICAgIGlmKGRlbGV0ZUZpbHRlcil7XG4gICAgICAgICAgdGhpcy5kZWx0ZUZpbHRlcih7XG4gICAgICAgICAgICBsYWJlbEZpbHRlcjonRmVjaGEgaWd1YWwgYScsXG4gICAgICAgICAgICB0eXBlOidkYXRlJ1xuICAgICAgICB9KVxuICAgICAgICB9ZWxzZXtcbiAgICAgICAgICB0aGlzLmxvYWREYXRlc0JldHdlZW4oZmFsc2UsIG5ldyBEYXRlKHZhbHVlQmV0d2VlbjEgKyBcIlQwNTowMDowMC4wMDBaXCIpICwgbmV3IERhdGUodmFsdWVCZXR3ZWVuMiArIFwiVDA1OjAwOjAwLjAwMFpcIikpXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0RmlsdGVyKCRldmVudCl7XG4gICAgbGV0IHZhbGlkYXRlID0gdGhpcy5oZWFkZXJGaWx0ZXJzU2VsZWN0ZWQuZmluZCh4ID0+IHgubGFiZWxGaWx0ZXIgPT0gJGV2ZW50LnZhbHVlKVxuICAgIGlmKCF2YWxpZGF0ZSl7XG4gICAgICBsZXQgdmFsdWUgPSB0aGlzLmhlYWRlckZpbHRlcnMuZmluZCh4ID0+IHgubGFiZWxGaWx0ZXIgPT0gJGV2ZW50LnZhbHVlKVxuICAgICAgaWYodmFsdWUpe1xuICAgICAgICB0aGlzLmhlYWRlckZpbHRlcnNTZWxlY3RlZC5wdXNoKHZhbHVlKVxuICAgICAgICB0aGlzLmhhbmRsZXJGaWx0ZXJzRGF0ZSh0cnVlICwge3R5cGU6dmFsdWUudHlwZX0pXG4gICAgICB9XG4gICAgfVxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5oZWFkZXJGaWx0ZXJzVmFsdWUgPSBudWxsXG4gICAgfSwgNTAwKTtcbiAgfVxuXG4gIGFzeW5jIHNlbGVjdEZpbHRlckRhdGEoJGV2ZW50LCBpdGVtKXtcbiAgICBsZXQgaSA9IHRoaXMuaGVhZGVyRmlsdGVyc1NlbGVjdGVkLmZpbmRJbmRleCh4ID0+IHgubGFiZWxGaWx0ZXIgPT0gaXRlbS5sYWJlbEZpbHRlcilcbiAgICBpZihpID49IDAgKSB0aGlzLmhlYWRlckZpbHRlcnNTZWxlY3RlZFtpXS52YWx1ZSA9ICRldmVudC52YWx1ZVxuICAgIGxldCBmID0gdGhpcy5maWx0ZXJzUG9zdC5maW5kSW5kZXgoeCA9PiB4LmxhYmVsRmlsdGVyID09IGl0ZW0ubGFiZWxGaWx0ZXIpXG4gICAgaWYoJGV2ZW50LnZhbHVlKXtcbiAgICAgIGxldCB2YWx1ZSA9IG51bGxcbiAgICAgIHN3aXRjaCAoaXRlbS50eXBlKSB7XG4gICAgICAgIGNhc2UgJ3NlbGVjdCc6XG4gICAgICAgICAgdmFsdWUgPSAkZXZlbnQudmFsdWVcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnZGF0ZSc6XG4gICAgICAgICAgdmFsdWUgPSB0aGlzLmZ1bmN0aW9uRXRlci5kYXRlREIoJGV2ZW50LnZhbHVlKVxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIGNhc2UgJ2RhdGVSYW5nZSc6XG4gICAgICAgICAgdmFsdWUgPSBgJHt0aGlzLmZ1bmN0aW9uRXRlci5kYXRlREIodGhpcy5jYW1wYWlnbk9uZS5jb250cm9scy5zdGFydC52YWx1ZSl9LCR7dGhpcy5mdW5jdGlvbkV0ZXIuZGF0ZURCKHRoaXMuY2FtcGFpZ25PbmUuY29udHJvbHMuZW5kLnZhbHVlKX1gXG4gICAgICAgICAgYnJlYWtcblxuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgaWYoIXZhbHVlKSByZXR1cm5cbiAgICAgIGlmKGYgPj0gMCl7XG4gICAgICAgIHRoaXMuZmlsdGVyc1Bvc3RbZl0udmFsdWUgPSB2YWx1ZVxuICAgICAgfWVsc2V7XG4gICAgICAgIHRoaXMuZmlsdGVyc1Bvc3QucHVzaCh7XG4gICAgICAgICAgdE46YnRvYShpdGVtLnROKSxcbiAgICAgICAgICBwcmltYXJ5S2V5Oml0ZW0uZmlsZU5hbWVEYj9pdGVtLmZpbGVOYW1lRGI6aXRlbS5wcmltYXJ5S2V5LFxuICAgICAgICAgIHR5cGU6aXRlbS50eXBlLFxuICAgICAgICAgIHZhbHVlOnZhbHVlLFxuICAgICAgICAgIGxhYmVsRmlsdGVyOml0ZW0ubGFiZWxGaWx0ZXJcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICAgIHRoaXMuYXBwbHlGaWx0ZXJzLmVtaXQodGhpcy5maWx0ZXJzUG9zdClcbiAgICB9XG5cblxuICB9XG5cbiAgZGVsdGVGaWx0ZXIoaXRlbSl7XG4gICAgbGV0IGkgPSB0aGlzLmhlYWRlckZpbHRlcnNTZWxlY3RlZC5maW5kSW5kZXgoeCA9PiB4LmxhYmVsRmlsdGVyID09IGl0ZW0ubGFiZWxGaWx0ZXIpXG4gICAgbGV0IGYgPSB0aGlzLmZpbHRlcnNQb3N0LmZpbmRJbmRleCh4ID0+IHgubGFiZWxGaWx0ZXIgPT0gaXRlbS5sYWJlbEZpbHRlcilcbiAgICBpZihpID49IDApIHtcbiAgICAgIHRoaXMuaGVhZGVyRmlsdGVyc1NlbGVjdGVkW2ldLnZhbHVlID0gXCItMVwiXG4gICAgICB0aGlzLmhlYWRlckZpbHRlcnNTZWxlY3RlZC5zcGxpY2UoaSwgMSlcbiAgICB9XG4gICAgaWYoZiA+PSAwKSB7XG4gICAgICB0aGlzLmZpbHRlcnNQb3N0LnNwbGljZShmLDEpXG4gICAgICB0aGlzLmFwcGx5RmlsdGVycy5lbWl0KHRoaXMuZmlsdGVyc1Bvc3QpXG4gICAgfVxuICAgIHRoaXMuaGFuZGxlckZpbHRlcnNEYXRlKGZhbHNlLCBpdGVtKVxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5oZWFkZXJGaWx0ZXJzVmFsdWUgPSBudWxsXG4gICAgfSwgNTAwKTtcbiAgfVxuXG4gIGxvYWREYXRlcyh2YWx1ZSA6IERhdGUgPSBudWxsKXtcbiAgICB0aGlzLmZlY2hhID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAgZmVjaGE6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodmFsdWUpXG4gICAgfSk7XG4gIH1cblxuICBsb2FkRGF0ZXNCZXR3ZWVuKGluaXQ6Ym9vbGVhbiA9IHRydWUsIHZhbHVlMSA6IERhdGUgPSBudWxsLCB2YWx1ZTIgOiBEYXRlID0gbnVsbCl7XG4gICAgaWYoaW5pdCl7XG4gICAgICB0aGlzLmNhbXBhaWduT25lID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAgICBzdGFydDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsKSxcbiAgICAgICAgZW5kOiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwpLFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuY2FtcGFpZ25Ud28gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICAgIHN0YXJ0OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwpLFxuICAgICAgICBlbmQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCksXG4gICAgICB9KTtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICB2YXIgZGF5MSA9IDFcbiAgICB2YXIgZGF5MiA9IDE1XG4gICAgaWYoIXZhbHVlMSl7XG4gICAgICB2YWx1ZTEgPSBuZXcgRGF0ZSgpXG4gICAgfWVsc2V7XG4gICAgICBkYXkxID0gdmFsdWUxLmdldERhdGUoKVxuICAgIH1cblxuICAgIGlmKCF2YWx1ZTIpe1xuICAgICAgdmFsdWUyID0gbmV3IERhdGUoKVxuICAgIH1lbHNle1xuICAgICAgZGF5MiA9IHZhbHVlMi5nZXREYXRlKClcbiAgICB9XG5cbiAgICB0aGlzLmNhbXBhaWduT25lID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAgc3RhcnQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobmV3IERhdGUodmFsdWUxLmdldEZ1bGxZZWFyKCksIHZhbHVlMS5nZXRNb250aCgpLCBkYXkxKSksXG4gICAgICBlbmQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobmV3IERhdGUodmFsdWUyLmdldEZ1bGxZZWFyKCksIHZhbHVlMi5nZXRNb250aCgpLCBkYXkyKSksXG4gICAgfSk7XG5cbiAgICB0aGlzLmNhbXBhaWduVHdvID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe1xuICAgICAgc3RhcnQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobmV3IERhdGUodmFsdWUxLmdldEZ1bGxZZWFyKCksIHZhbHVlMS5nZXRNb250aCgpLCBkYXkxKSksXG4gICAgICBlbmQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobmV3IERhdGUodmFsdWUxLmdldEZ1bGxZZWFyKCksIHZhbHVlMS5nZXRNb250aCgpLCBkYXkxKSksXG4gICAgfSk7XG5cbiAgfVxuXG4gIGFzeW5jIGxvYWRGaWx0ZXIoKXtcbiAgICAvLyBpZiAodGhpcy5oZWFkZXJGaWx0ZXJzU2VsZWN0ZWQubGVuZ3RoICE9IDApIHtcbiAgICAvLyAgIHJldHVyblxuICAgIC8vIH1cbiAgICBsZXQgYXBwbHlGaWx0ZXIgPSBmYWxzZSBcbiAgICBmb3IobGV0IGVsZW1lbnQgb2YgdGhpcy5oZWFkZXJGaWx0ZXJzKXtcbiAgICAgXG4gICAgICBpZihlbGVtZW50LnVybERhdGEpe1xuICAgICAgICBsZXQgcmVzID0gYXdhaXQgdGhpcy5odHRwLmdldERhdGFCb2R5PGFueT4oZWxlbWVudC51cmxEYXRhKVxuICAgICAgICBlbGVtZW50LmJvZHkgPSByZXM7XG4gICAgICB9ZWxzZSBpZiAoZWxlbWVudC50eXBlID09ICdzZWxlY3QnKSB7ICAgICAgIFxuICAgICAgICBlbGVtZW50LmJvZHkgPSBlbGVtZW50LmRhdGEgICAgICBcbiAgICAgIH1cbiAgICAgIGVsZW1lbnQuZmlsdGVyZWRMaXN0ID0gZWxlbWVudC5ib2R5O1xuICAgICAgaWYoIWVsZW1lbnQucHJpbWFyeUtleSkgZWxlbWVudC5wcmltYXJ5S2V5ID0gZWxlbWVudC52aXNpYmxlRmllbGRcbiAgICAgIGlmKGVsZW1lbnQudHlwZSA9PSBcImRhdGVcIikgZWxlbWVudC5sYWJlbEZpbHRlciA9IGVsZW1lbnQubGFiZWxGaWx0ZXIgPz8gXCJGZWNoYSBpZ3VhbCBhXCJcbiAgICAgIGlmKGVsZW1lbnQudHlwZSA9PSBcImRhdGVSYW5nZVwiKSBlbGVtZW50LmxhYmVsRmlsdGVyID0gZWxlbWVudC5sYWJlbEZpbHRlciA/PyBcIkZlY2hhIGVudHJlXCJcbiAgICAgIGlmKGVsZW1lbnQuYWN0aXZlKSB7XG4gICAgICAgIHRoaXMuaGVhZGVyRmlsdGVyc1NlbGVjdGVkLnB1c2goZWxlbWVudClcbiAgICAgICAgdGhpcy5maWx0ZXJzUG9zdC5wdXNoKHtcbiAgICAgICAgICB0TjpidG9hKGVsZW1lbnQudE4pLFxuICAgICAgICAgIHByaW1hcnlLZXk6ZWxlbWVudC5maWxlTmFtZURiP2VsZW1lbnQuZmlsZU5hbWVEYjplbGVtZW50LnByaW1hcnlLZXksXG4gICAgICAgICAgdHlwZTplbGVtZW50LnR5cGUsXG4gICAgICAgICAgdmFsdWU6ZWxlbWVudC52YWx1ZSxcbiAgICAgICAgICBsYWJlbEZpbHRlcjplbGVtZW50LmxhYmVsRmlsdGVyXG4gICAgICAgIH0pXG4gICAgICAgIHRoaXMuaGFuZGxlckZpbHRlcnNEYXRlKGZhbHNlLCBlbGVtZW50LCBlbGVtZW50LnZhbHVlLCBlbGVtZW50LnZhbHVlLnNwbGl0KCcsJylbMF0sIGVsZW1lbnQudmFsdWUuc3BsaXQoJywnKVsxXSlcbiAgICAgICAgaWYgKGVsZW1lbnQudmFsdWUgJiYgZWxlbWVudC52YWx1ZSAhPSAnJykge1xuICAgICAgICAgIGFwcGx5RmlsdGVyID0gdHJ1ZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChhcHBseUZpbHRlcikge1xuICAgICAgdGhpcy5hcHBseUZpbHRlcnMuZW1pdCh0aGlzLmZpbHRlcnNQb3N0KSAgICAgIFxuICAgIH1cbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cImhlYWRlckZpbHRlcnMgJiYgaGVhZGVyRmlsdGVycy5sZW5ndGggPiAwXCIgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyB3aWR0aDogMTAwJTsgZmxleC13cmFwOiB3cmFwO1wiIGNsYXNzPVwiY29sLTEyIG1iLTJcIj5cbiAgPGRpdiBjbGFzcz1cImNvbC1tZC00IGNvbC0xMiBwZS0zXCI+XG4gICAgPG1hdC1mb3JtLWZpZWxkID5cbiAgICAgIDxtYXQtbGFiZWw+RmlsdHJvczwvbWF0LWxhYmVsPlxuICAgICAgPG1hdC1zZWxlY3QgKHNlbGVjdGlvbkNoYW5nZSk9XCJzZWxlY3RGaWx0ZXIoJGV2ZW50KVwiIFsobmdNb2RlbCldPVwiaGVhZGVyRmlsdGVyc1ZhbHVlXCI+XG4gICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgKm5nRm9yPVwibGV0IGYgb2YgaGVhZGVyRmlsdGVyc1wiXG4gICAgICAgICAgdmFsdWU9XCJ7eyBmLmxhYmVsRmlsdGVyIH19XCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7IGYubGFiZWxGaWx0ZXIgfX1cbiAgICAgICAgPC9tYXQtb3B0aW9uPlxuICAgICAgPC9tYXQtc2VsZWN0PlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDwvZGl2PlxuXG4gIDxkaXYgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaGVhZGVyRmlsdGVyc1NlbGVjdGVkXCIgY2xhc3M9XCJjb2wtbWQtNCBjb2wtMTIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxuICAgICAgPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiaXRlbS50eXBlID09ICdzZWxlY3QnXCI+XG4gICAgICAgIDxtYXQtbGFiZWw+RmlsdHJhciBwb3Ige3tpdGVtLmxhYmVsRmlsdGVyfX08L21hdC1sYWJlbD5cbiAgICAgICAgPG1hdC1zZWxlY3QgKHNlbGVjdGlvbkNoYW5nZSk9XCJzZWxlY3RGaWx0ZXJEYXRhKCRldmVudCwgaXRlbSlcIiBbdmFsdWVdPVwiaXRlbS52YWx1ZVwiPlxuICAgICAgICAgIDxhcHAtc2VsZWN0LWZpbHRlclxuICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidGaWx0ZXInXCJcbiAgICAgICAgICAgIFtkaXNwbGF5TWVtYmVyXT1cIml0ZW0udmlzaWJsZUZpZWxkXCJcbiAgICAgICAgICAgIFthcnJheV09XCJpdGVtLmJvZHlcIlxuICAgICAgICAgICAgKGZpbHRlcmVkUmV0dXJuKT1cIml0ZW0uZmlsdGVyZWRMaXN0ID0gJGV2ZW50XCJcbiAgICAgICAgICAgIFtub1Jlc3VsdHNNZXNzYWdlXT1cIidObyBoYXkgcmVzdWx0YWRvcydcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8L2FwcC1zZWxlY3QtZmlsdGVyPlxuICAgICAgICAgIDxtYXQtb3B0aW9uXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgZGF0YSBvZiBpdGVtLmZpbHRlcmVkTGlzdFwiXG4gICAgICAgICAgICB2YWx1ZT1cInt7IGRhdGFbaXRlbS5wcmltYXJ5S2V5XSB9fVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgZGF0YVtpdGVtLnZpc2libGVGaWVsZF0gfX1cbiAgICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICAgIDwvbWF0LXNlbGVjdD5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG5cbiAgICAgICAgPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiaXRlbS50eXBlID09ICdkYXRlJ1wiIFtmb3JtR3JvdXBdPVwiZmVjaGFcIj5cbiAgICAgICAgICA8bWF0LWxhYmVsPnt7aXRlbS5sYWJlbEZpbHRlcn19PC9tYXQtbGFiZWw+XG4gICAgICAgICAgPGlucHV0IChkYXRlSW5wdXQpPVwic2VsZWN0RmlsdGVyRGF0YSgkZXZlbnQsIGl0ZW0pXCIgbWF0SW5wdXQgW21hdERhdGVwaWNrZXJdPVwiRmVjaGFcIiBhdXRvY29tcGxldGU9XCJvZmZcIiBtYXRJbnB1dFxuICAgICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9J2ZlY2hhJyByZXF1aXJlZD5cbiAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cIkZlY2hhXCI+XG4gICAgICAgICAgPC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgICAgPG1hdC1kYXRlcGlja2VyIGRhdGVJbnB1dCAjRmVjaGEgW3RvdWNoVWldPSdtb3ZpbD90cnVlOmZhbHNlJz48L21hdC1kYXRlcGlja2VyPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiaXRlbS50eXBlID09ICdkYXRlUmFuZ2UnXCI+XG4gICAgICAgIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsRmlsdGVyfX08L21hdC1sYWJlbD5cbiAgICAgICAgPG1hdC1kYXRlLXJhbmdlLWlucHV0XG4gICAgICAgICAgW2Zvcm1Hcm91cF09XCJjYW1wYWlnbk9uZVwiXG4gICAgICAgICAgW3JhbmdlUGlja2VyXT1cImNhbXBhaWduT25lUGlja2VyXCJcbiAgICAgICAgICBbY29tcGFyaXNvblN0YXJ0XT1cImNhbXBhaWduVHdvLnZhbHVlLnN0YXJ0XCJcbiAgICAgICAgICBbY29tcGFyaXNvbkVuZF09XCJjYW1wYWlnblR3by52YWx1ZS5lbmRcIj5cbiAgICAgICAgICA8aW5wdXQgIG1hdFN0YXJ0RGF0ZSBwbGFjZWhvbGRlcj1cIlN0YXJ0IGRhdGVcIiBmb3JtQ29udHJvbE5hbWU9XCJzdGFydFwiPlxuICAgICAgICAgIDxpbnB1dCAoZGF0ZUlucHV0KT1cInNlbGVjdEZpbHRlckRhdGEoJGV2ZW50LCBpdGVtKVwiIG1hdEVuZERhdGUgcGxhY2Vob2xkZXI9XCJFbmQgZGF0ZVwiIGZvcm1Db250cm9sTmFtZT1cImVuZFwiPlxuICAgICAgICA8L21hdC1kYXRlLXJhbmdlLWlucHV0PlxuICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cImNhbXBhaWduT25lUGlja2VyXCI+PC9tYXQtZGF0ZXBpY2tlci10b2dnbGU+XG4gICAgICAgIDxtYXQtZGF0ZS1yYW5nZS1waWNrZXIgI2NhbXBhaWduT25lUGlja2VyPjwvbWF0LWRhdGUtcmFuZ2UtcGlja2VyPlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgPGRpdiBjbGFzcz1cInAtMlwiIHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCIgKGNsaWNrKT1cImRlbHRlRmlsdGVyKGl0ZW0pXCI+PG1hdC1pY29uPmNhbmNlbDwvbWF0LWljb24+PC9kaXY+XG5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbHRlcnMvZmlsdGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL2ZpbHRlcnMvZmlsdGVycy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBVyxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ2xILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBU3RFLE1BQU0sT0FBTyxnQkFBZ0I7SUFnQmpCO0lBQ0E7SUFmRCxhQUFhLEdBQWUsRUFBRSxDQUFBO0lBQzdCLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBRWpELGtCQUFrQixHQUFHLElBQUksQ0FBQTtJQUN6QixxQkFBcUIsR0FBZ0IsRUFBRSxDQUFBO0lBQ3ZDLFdBQVcsQ0FBbUI7SUFDOUIsV0FBVyxDQUFtQjtJQUM5QixLQUFLLENBQW1CO0lBQ3hCLEtBQUssR0FBRyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7SUFHbEMsV0FBVyxHQUFHLEVBQUUsQ0FBQTtJQUVoQixZQUNVLFlBQThCLEVBQzlCLElBQWlCO1FBRGpCLGlCQUFZLEdBQVosWUFBWSxDQUFrQjtRQUM5QixTQUFJLEdBQUosSUFBSSxDQUFhO1FBRXpCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUNoQixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQTtJQUN4QixDQUFD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QUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUNoSCxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLEVBQUUsQ0FBQztvQkFDekMsV0FBVyxHQUFHLElBQUksQ0FBQTtnQkFDcEIsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDMUMsQ0FBQztJQUNILENBQUM7d0dBbE5VLGdCQUFnQjs0RkFBaEIsZ0JBQWdCLCtKQ2I3QixpMkZBK0RBOzs0RkRsRGEsZ0JBQWdCO2tCQUw1QixTQUFTOytCQUNFLGFBQWE7K0dBTWQsYUFBYTtzQkFBckIsS0FBSztnQkFDSSxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9odHRwLnNlcnZpY2UnO1xuaW1wb3J0IHsgRnVuY3Rpb25zU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Z1bmN0aW9ucy5zZXJ2aWNlJztcbmltcG9ydCB7IFNjcmVlblNpemVVdGlsIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvc2NyZWVuLXNpemUtdXRpbCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIERvQ2hlY2ssIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGVsZW1lbnQgfSBmcm9tICdwcm90cmFjdG9yJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtZmlsdGVycycsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWx0ZXJzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmlsdGVycy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpbHRlcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG5cbiAgQElucHV0KCkgaGVhZGVyRmlsdGVyczogQXJyYXk8YW55PiA9IFtdXG4gIEBPdXRwdXQoKSBhcHBseUZpbHRlcnMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBoZWFkZXJGaWx0ZXJzVmFsdWUgPSBcIi0xXCJcbiAgaGVhZGVyRmlsdGVyc1NlbGVjdGVkIDogQXJyYXk8YW55PiA9IFtdXG4gIGNhbXBhaWduT25lOiBVbnR5cGVkRm9ybUdyb3VwO1xuICBjYW1wYWlnblR3bzogVW50eXBlZEZvcm1Hcm91cDtcbiAgZmVjaGE6IFVudHlwZWRGb3JtR3JvdXA7XG4gIG1vdmlsID0gU2NyZWVuU2l6ZVV0aWwuaXNNb2JpbGUoKTtcblxuXG4gIGZpbHRlcnNQb3N0ID0gW11cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGZ1bmN0aW9uRXRlcjogRnVuY3Rpb25zU2VydmljZSxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlLFxuICApIHtcbiAgICB0aGlzLmxvYWREYXRlcygpXG4gICAgdGhpcy5sb2FkRGF0ZXNCZXR3ZWVuKClcbiAgIH1cbiAgYXN5bmMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICggY2hhbmdlcykge1xuICAgICAgYXdhaXQgdGhpcy5sb2FkRmlsdGVyKClcbiAgICB9XG4gIH0gIFxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIC8vIGlmKHRoaXMuaGVhZGVyRmlsdGVycyAmJiB0aGlzLmhlYWRlckZpbHRlcnMubGVuZ3RoID4gMClcbiAgICAvLyAgIGF3YWl0IHRoaXMubG9hZEZpbHRlcigpXG4gIH1cblxuICBoYW5kbGVyRmlsdGVyc0RhdGUoZGVsZXRlRmlsdGVyOmJvb2xlYW4sIGl0ZW06YW55LCB2YWx1ZURhdGUgPSBudWxsLCB2YWx1ZUJldHdlZW4xID0gbnVsbCwgdmFsdWVCZXR3ZWVuMiA9IG51bGwpe1xuICAgIHN3aXRjaCAoaXRlbS50eXBlKSB7XG4gICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgaWYoZGVsZXRlRmlsdGVyKXtcbiAgICAgICAgICB0aGlzLmRlbHRlRmlsdGVyKHtcbiAgICAgICAgICAgIGxhYmVsRmlsdGVyOidGZWNoYSBlbnRyZScsXG4gICAgICAgICAgICB0eXBlOidkYXRlUmFuZ2UnXG4gICAgICAgICAgfSlcbiAgICAgICAgfWVsc2V7XG4gICAgICAgICAgdGhpcy5sb2FkRGF0ZXMobmV3IERhdGUodmFsdWVEYXRlICsgXCJUMDU6MDA6MDAuMDAwWlwiKSlcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgICAgY2FzZSAnZGF0ZVJhbmdlJzpcbiAgICAgICAgaWYoZGVsZXRlRmlsdGVyKXtcbiAgICAgICAgICB0aGlzLmRlbHRlRmlsdGVyKHtcbiAgICAgICAgICAgIGxhYmVsRmlsdGVyOidGZWNoYSBpZ3VhbCBhJyxcbiAgICAgICAgICAgIHR5cGU6J2RhdGUnXG4gICAgICAgIH0pXG4gICAgICAgIH1lbHNle1xuICAgICAgICAgIHRoaXMubG9hZERhdGVzQmV0d2VlbihmYWxzZSwgbmV3IERhdGUodmFsdWVCZXR3ZWVuMSArIFwiVDA1OjAwOjAwLjAwMFpcIikgLCBuZXcgRGF0ZSh2YWx1ZUJldHdlZW4yICsgXCJUMDU6MDA6MDAuMDAwWlwiKSlcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBzZWxlY3RGaWx0ZXIoJGV2ZW50KXtcbiAgICBsZXQgdmFsaWRhdGUgPSB0aGlzLmhlYWRlckZpbHRlcnNTZWxlY3RlZC5maW5kKHggPT4geC5sYWJlbEZpbHRlciA9PSAkZXZlbnQudmFsdWUpXG4gICAgaWYoIXZhbGlkYXRlKXtcbiAgICAgIGxldCB2YWx1ZSA9IHRoaXMuaGVhZGVyRmlsdGVycy5maW5kKHggPT4geC5sYWJlbEZpbHRlciA9PSAkZXZlbnQudmFsdWUpXG4gICAgICBpZih2YWx1ZSl7XG4gICAgICAgIHRoaXMuaGVhZGVyRmlsdGVyc1NlbGVjdGVkLnB1c2godmFsdWUpXG4gICAgICAgIHRoaXMuaGFuZGxlckZpbHRlcnNEYXRlKHRydWUgLCB7dHlwZTp2YWx1ZS50eXBlfSlcbiAgICAgIH1cbiAgICB9XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmhlYWRlckZpbHRlcnNWYWx1ZSA9IG51bGxcbiAgICB9LCA1MDApO1xuICB9XG5cbiAgYXN5bmMgc2VsZWN0RmlsdGVyRGF0YSgkZXZlbnQsIGl0ZW0pe1xuICAgIGxldCBpID0gdGhpcy5oZWFkZXJGaWx0ZXJzU2VsZWN0ZWQuZmluZEluZGV4KHggPT4geC5sYWJlbEZpbHRlciA9PSBpdGVtLmxhYmVsRmlsdGVyKVxuICAgIGlmKGkgPj0gMCApIHRoaXMuaGVhZGVyRmlsdGVyc1NlbGVjdGVkW2ldLnZhbHVlID0gJGV2ZW50LnZhbHVlXG4gICAgbGV0IGYgPSB0aGlzLmZpbHRlcnNQb3N0LmZpbmRJbmRleCh4ID0+IHgubGFiZWxGaWx0ZXIgPT0gaXRlbS5sYWJlbEZpbHRlcilcbiAgICBpZigkZXZlbnQudmFsdWUpe1xuICAgICAgbGV0IHZhbHVlID0gbnVsbFxuICAgICAgc3dpdGNoIChpdGVtLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnc2VsZWN0JzpcbiAgICAgICAgICB2YWx1ZSA9ICRldmVudC52YWx1ZVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgICB2YWx1ZSA9IHRoaXMuZnVuY3Rpb25FdGVyLmRhdGVEQigkZXZlbnQudmFsdWUpXG4gICAgICAgICAgYnJlYWtcbiAgICAgICAgY2FzZSAnZGF0ZVJhbmdlJzpcbiAgICAgICAgICB2YWx1ZSA9IGAke3RoaXMuZnVuY3Rpb25FdGVyLmRhdGVEQih0aGlzLmNhbXBhaWduT25lLmNvbnRyb2xzLnN0YXJ0LnZhbHVlKX0sJHt0aGlzLmZ1bmN0aW9uRXRlci5kYXRlREIodGhpcy5jYW1wYWlnbk9uZS5jb250cm9scy5lbmQudmFsdWUpfWBcbiAgICAgICAgICBicmVha1xuXG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBpZighdmFsdWUpIHJldHVyblxuICAgICAgaWYoZiA+PSAwKXtcbiAgICAgICAgdGhpcy5maWx0ZXJzUG9zdFtmXS52YWx1ZSA9IHZhbHVlXG4gICAgICB9ZWxzZXtcbiAgICAgICAgdGhpcy5maWx0ZXJzUG9zdC5wdXNoKHtcbiAgICAgICAgICB0TjpidG9hKGl0ZW0udE4pLFxuICAgICAgICAgIHByaW1hcnlLZXk6aXRlbS5maWxlTmFtZURiP2l0ZW0uZmlsZU5hbWVEYjppdGVtLnByaW1hcnlLZXksXG4gICAgICAgICAgdHlwZTppdGVtLnR5cGUsXG4gICAgICAgICAgdmFsdWU6dmFsdWUsXG4gICAgICAgICAgbGFiZWxGaWx0ZXI6aXRlbS5sYWJlbEZpbHRlclxuICAgICAgICB9KVxuICAgICAgfVxuICAgICAgdGhpcy5hcHBseUZpbHRlcnMuZW1pdCh0aGlzLmZpbHRlcnNQb3N0KVxuICAgIH1cblxuXG4gIH1cblxuICBkZWx0ZUZpbHRlcihpdGVtKXtcbiAgICBsZXQgaSA9IHRoaXMuaGVhZGVyRmlsdGVyc1NlbGVjdGVkLmZpbmRJbmRleCh4ID0+IHgubGFiZWxGaWx0ZXIgPT0gaXRlbS5sYWJlbEZpbHRlcilcbiAgICBsZXQgZiA9IHRoaXMuZmlsdGVyc1Bvc3QuZmluZEluZGV4KHggPT4geC5sYWJlbEZpbHRlciA9PSBpdGVtLmxhYmVsRmlsdGVyKVxuICAgIGlmKGkgPj0gMCkge1xuICAgICAgdGhpcy5oZWFkZXJGaWx0ZXJzU2VsZWN0ZWRbaV0udmFsdWUgPSBcIi0xXCJcbiAgICAgIHRoaXMuaGVhZGVyRmlsdGVyc1NlbGVjdGVkLnNwbGljZShpLCAxKVxuICAgIH1cbiAgICBpZihmID49IDApIHtcbiAgICAgIHRoaXMuZmlsdGVyc1Bvc3Quc3BsaWNlKGYsMSlcbiAgICAgIHRoaXMuYXBwbHlGaWx0ZXJzLmVtaXQodGhpcy5maWx0ZXJzUG9zdClcbiAgICB9XG4gICAgdGhpcy5oYW5kbGVyRmlsdGVyc0RhdGUoZmFsc2UsIGl0ZW0pXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmhlYWRlckZpbHRlcnNWYWx1ZSA9IG51bGxcbiAgICB9LCA1MDApO1xuICB9XG5cbiAgbG9hZERhdGVzKHZhbHVlIDogRGF0ZSA9IG51bGwpe1xuICAgIHRoaXMuZmVjaGEgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICBmZWNoYTogbmV3IFVudHlwZWRGb3JtQ29udHJvbCh2YWx1ZSlcbiAgICB9KTtcbiAgfVxuXG4gIGxvYWREYXRlc0JldHdlZW4oaW5pdDpib29sZWFuID0gdHJ1ZSwgdmFsdWUxIDogRGF0ZSA9IG51bGwsIHZhbHVlMiA6IERhdGUgPSBudWxsKXtcbiAgICBpZihpbml0KXtcbiAgICAgIHRoaXMuY2FtcGFpZ25PbmUgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICAgIHN0YXJ0OiBuZXcgVW50eXBlZEZvcm1Db250cm9sKG51bGwpLFxuICAgICAgICBlbmQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCksXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5jYW1wYWlnblR3byA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcbiAgICAgICAgc3RhcnQ6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wobnVsbCksXG4gICAgICAgIGVuZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChudWxsKSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHZhciBkYXkxID0gMVxuICAgIHZhciBkYXkyID0gMTVcbiAgICBpZighdmFsdWUxKXtcbiAgICAgIHZhbHVlMSA9IG5ldyBEYXRlKClcbiAgICB9ZWxzZXtcbiAgICAgIGRheTEgPSB2YWx1ZTEuZ2V0RGF0ZSgpXG4gICAgfVxuXG4gICAgaWYoIXZhbHVlMil7XG4gICAgICB2YWx1ZTIgPSBuZXcgRGF0ZSgpXG4gICAgfWVsc2V7XG4gICAgICBkYXkyID0gdmFsdWUyLmdldERhdGUoKVxuICAgIH1cblxuICAgIHRoaXMuY2FtcGFpZ25PbmUgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICBzdGFydDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChuZXcgRGF0ZSh2YWx1ZTEuZ2V0RnVsbFllYXIoKSwgdmFsdWUxLmdldE1vbnRoKCksIGRheTEpKSxcbiAgICAgIGVuZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChuZXcgRGF0ZSh2YWx1ZTIuZ2V0RnVsbFllYXIoKSwgdmFsdWUyLmdldE1vbnRoKCksIGRheTIpKSxcbiAgICB9KTtcblxuICAgIHRoaXMuY2FtcGFpZ25Ud28gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7XG4gICAgICBzdGFydDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChuZXcgRGF0ZSh2YWx1ZTEuZ2V0RnVsbFllYXIoKSwgdmFsdWUxLmdldE1vbnRoKCksIGRheTEpKSxcbiAgICAgIGVuZDogbmV3IFVudHlwZWRGb3JtQ29udHJvbChuZXcgRGF0ZSh2YWx1ZTEuZ2V0RnVsbFllYXIoKSwgdmFsdWUxLmdldE1vbnRoKCksIGRheTEpKSxcbiAgICB9KTtcblxuICB9XG5cbiAgYXN5bmMgbG9hZEZpbHRlcigpe1xuICAgIC8vIGlmICh0aGlzLmhlYWRlckZpbHRlcnNTZWxlY3RlZC5sZW5ndGggIT0gMCkge1xuICAgIC8vICAgcmV0dXJuXG4gICAgLy8gfVxuICAgIGxldCBhcHBseUZpbHRlciA9IGZhbHNlIFxuICAgIGZvcihsZXQgZWxlbWVudCBvZiB0aGlzLmhlYWRlckZpbHRlcnMpe1xuICAgICBcbiAgICAgIGlmKGVsZW1lbnQudXJsRGF0YSl7XG4gICAgICAgIGxldCByZXMgPSBhd2FpdCB0aGlzLmh0dHAuZ2V0RGF0YUJvZHk8YW55PihlbGVtZW50LnVybERhdGEpXG4gICAgICAgIGVsZW1lbnQuYm9keSA9IHJlcztcbiAgICAgIH1lbHNlIGlmIChlbGVtZW50LnR5cGUgPT0gJ3NlbGVjdCcpIHsgICAgICAgXG4gICAgICAgIGVsZW1lbnQuYm9keSA9IGVsZW1lbnQuZGF0YSAgICAgIFxuICAgICAgfVxuICAgICAgZWxlbWVudC5maWx0ZXJlZExpc3QgPSBlbGVtZW50LmJvZHk7XG4gICAgICBpZighZWxlbWVudC5wcmltYXJ5S2V5KSBlbGVtZW50LnByaW1hcnlLZXkgPSBlbGVtZW50LnZpc2libGVGaWVsZFxuICAgICAgaWYoZWxlbWVudC50eXBlID09IFwiZGF0ZVwiKSBlbGVtZW50LmxhYmVsRmlsdGVyID0gZWxlbWVudC5sYWJlbEZpbHRlciA/PyBcIkZlY2hhIGlndWFsIGFcIlxuICAgICAgaWYoZWxlbWVudC50eXBlID09IFwiZGF0ZVJhbmdlXCIpIGVsZW1lbnQubGFiZWxGaWx0ZXIgPSBlbGVtZW50LmxhYmVsRmlsdGVyID8/IFwiRmVjaGEgZW50cmVcIlxuICAgICAgaWYoZWxlbWVudC5hY3RpdmUpIHtcbiAgICAgICAgdGhpcy5oZWFkZXJGaWx0ZXJzU2VsZWN0ZWQucHVzaChlbGVtZW50KVxuICAgICAgICB0aGlzLmZpbHRlcnNQb3N0LnB1c2goe1xuICAgICAgICAgIHROOmJ0b2EoZWxlbWVudC50TiksXG4gICAgICAgICAgcHJpbWFyeUtleTplbGVtZW50LmZpbGVOYW1lRGI/ZWxlbWVudC5maWxlTmFtZURiOmVsZW1lbnQucHJpbWFyeUtleSxcbiAgICAgICAgICB0eXBlOmVsZW1lbnQudHlwZSxcbiAgICAgICAgICB2YWx1ZTplbGVtZW50LnZhbHVlLFxuICAgICAgICAgIGxhYmVsRmlsdGVyOmVsZW1lbnQubGFiZWxGaWx0ZXJcbiAgICAgICAgfSlcbiAgICAgICAgdGhpcy5oYW5kbGVyRmlsdGVyc0RhdGUoZmFsc2UsIGVsZW1lbnQsIGVsZW1lbnQudmFsdWUsIGVsZW1lbnQudmFsdWUuc3BsaXQoJywnKVswXSwgZWxlbWVudC52YWx1ZS5zcGxpdCgnLCcpWzFdKVxuICAgICAgICBpZiAoZWxlbWVudC52YWx1ZSAmJiBlbGVtZW50LnZhbHVlICE9ICcnKSB7XG4gICAgICAgICAgYXBwbHlGaWx0ZXIgPSB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGFwcGx5RmlsdGVyKSB7XG4gICAgICB0aGlzLmFwcGx5RmlsdGVycy5lbWl0KHRoaXMuZmlsdGVyc1Bvc3QpICAgICAgXG4gICAgfVxuICB9XG59XG4iLCI8ZGl2ICpuZ0lmPVwiaGVhZGVyRmlsdGVycyAmJiBoZWFkZXJGaWx0ZXJzLmxlbmd0aCA+IDBcIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IHdpZHRoOiAxMDAlOyBmbGV4LXdyYXA6IHdyYXA7XCIgY2xhc3M9XCJjb2wtMTIgbWItMlwiPlxuICA8ZGl2IGNsYXNzPVwiY29sLW1kLTQgY29sLTEyIHBlLTNcIj5cbiAgICA8bWF0LWZvcm0tZmllbGQgPlxuICAgICAgPG1hdC1sYWJlbD5GaWx0cm9zPC9tYXQtbGFiZWw+XG4gICAgICA8bWF0LXNlbGVjdCAoc2VsZWN0aW9uQ2hhbmdlKT1cInNlbGVjdEZpbHRlcigkZXZlbnQpXCIgWyhuZ01vZGVsKV09XCJoZWFkZXJGaWx0ZXJzVmFsdWVcIj5cbiAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAqbmdGb3I9XCJsZXQgZiBvZiBoZWFkZXJGaWx0ZXJzXCJcbiAgICAgICAgICB2YWx1ZT1cInt7IGYubGFiZWxGaWx0ZXIgfX1cIlxuICAgICAgICA+XG4gICAgICAgICAge3sgZi5sYWJlbEZpbHRlciB9fVxuICAgICAgICA8L21hdC1vcHRpb24+XG4gICAgICA8L21hdC1zZWxlY3Q+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG5cbiAgPGRpdiAqbmdGb3I9XCJsZXQgaXRlbSBvZiBoZWFkZXJGaWx0ZXJzU2VsZWN0ZWRcIiBjbGFzcz1cImNvbC1tZC00IGNvbC0xMiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ3NlbGVjdCdcIj5cbiAgICAgICAgPG1hdC1sYWJlbD5GaWx0cmFyIHBvciB7e2l0ZW0ubGFiZWxGaWx0ZXJ9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8bWF0LXNlbGVjdCAoc2VsZWN0aW9uQ2hhbmdlKT1cInNlbGVjdEZpbHRlckRhdGEoJGV2ZW50LCBpdGVtKVwiIFt2YWx1ZV09XCJpdGVtLnZhbHVlXCI+XG4gICAgICAgICAgPGFwcC1zZWxlY3QtZmlsdGVyXG4gICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0ZpbHRlcidcIlxuICAgICAgICAgICAgW2Rpc3BsYXlNZW1iZXJdPVwiaXRlbS52aXNpYmxlRmllbGRcIlxuICAgICAgICAgICAgW2FycmF5XT1cIml0ZW0uYm9keVwiXG4gICAgICAgICAgICAoZmlsdGVyZWRSZXR1cm4pPVwiaXRlbS5maWx0ZXJlZExpc3QgPSAkZXZlbnRcIlxuICAgICAgICAgICAgW25vUmVzdWx0c01lc3NhZ2VdPVwiJ05vIGhheSByZXN1bHRhZG9zJ1wiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvYXBwLXNlbGVjdC1maWx0ZXI+XG4gICAgICAgICAgPG1hdC1vcHRpb25cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBkYXRhIG9mIGl0ZW0uZmlsdGVyZWRMaXN0XCJcbiAgICAgICAgICAgIHZhbHVlPVwie3sgZGF0YVtpdGVtLnByaW1hcnlLZXldIH19XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyBkYXRhW2l0ZW0udmlzaWJsZUZpZWxkXSB9fVxuICAgICAgICAgIDwvbWF0LW9wdGlvbj5cbiAgICAgICAgPC9tYXQtc2VsZWN0PlxuICAgICAgPC9tYXQtZm9ybS1maWVsZD5cblxuICAgICAgICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ2RhdGUnXCIgW2Zvcm1Hcm91cF09XCJmZWNoYVwiPlxuICAgICAgICAgIDxtYXQtbGFiZWw+e3tpdGVtLmxhYmVsRmlsdGVyfX08L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXQgKGRhdGVJbnB1dCk9XCJzZWxlY3RGaWx0ZXJEYXRhKCRldmVudCwgaXRlbSlcIiBtYXRJbnB1dCBbbWF0RGF0ZXBpY2tlcl09XCJGZWNoYVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIG1hdElucHV0XG4gICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT0nZmVjaGEnIHJlcXVpcmVkPlxuICAgICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IFtmb3JdPVwiRmVjaGFcIj5cbiAgICAgICAgICA8L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cbiAgICAgICAgICA8bWF0LWRhdGVwaWNrZXIgZGF0ZUlucHV0ICNGZWNoYSBbdG91Y2hVaV09J21vdmlsP3RydWU6ZmFsc2UnPjwvbWF0LWRhdGVwaWNrZXI+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJpdGVtLnR5cGUgPT0gJ2RhdGVSYW5nZSdcIj5cbiAgICAgICAgPG1hdC1sYWJlbD57e2l0ZW0ubGFiZWxGaWx0ZXJ9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8bWF0LWRhdGUtcmFuZ2UtaW5wdXRcbiAgICAgICAgICBbZm9ybUdyb3VwXT1cImNhbXBhaWduT25lXCJcbiAgICAgICAgICBbcmFuZ2VQaWNrZXJdPVwiY2FtcGFpZ25PbmVQaWNrZXJcIlxuICAgICAgICAgIFtjb21wYXJpc29uU3RhcnRdPVwiY2FtcGFpZ25Ud28udmFsdWUuc3RhcnRcIlxuICAgICAgICAgIFtjb21wYXJpc29uRW5kXT1cImNhbXBhaWduVHdvLnZhbHVlLmVuZFwiPlxuICAgICAgICAgIDxpbnB1dCAgbWF0U3RhcnREYXRlIHBsYWNlaG9sZGVyPVwiU3RhcnQgZGF0ZVwiIGZvcm1Db250cm9sTmFtZT1cInN0YXJ0XCI+XG4gICAgICAgICAgPGlucHV0IChkYXRlSW5wdXQpPVwic2VsZWN0RmlsdGVyRGF0YSgkZXZlbnQsIGl0ZW0pXCIgbWF0RW5kRGF0ZSBwbGFjZWhvbGRlcj1cIkVuZCBkYXRlXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW5kXCI+XG4gICAgICAgIDwvbWF0LWRhdGUtcmFuZ2UtaW5wdXQ+XG4gICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IFtmb3JdPVwiY2FtcGFpZ25PbmVQaWNrZXJcIj48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cbiAgICAgICAgPG1hdC1kYXRlLXJhbmdlLXBpY2tlciAjY2FtcGFpZ25PbmVQaWNrZXI+PC9tYXQtZGF0ZS1yYW5nZS1waWNrZXI+XG4gICAgICA8L21hdC1mb3JtLWZpZWxkPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwicC0yXCIgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXJcIiAoY2xpY2spPVwiZGVsdGVGaWx0ZXIoaXRlbSlcIj48bWF0LWljb24+Y2FuY2VsPC9tYXQtaWNvbj48L2Rpdj5cblxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -76,14 +76,14 @@ export class TemplateFuelComponent {
76
76
  this.message.closeLoading();
77
77
  });
78
78
  }
79
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TemplateFuelComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i1.MatDialog }, { token: i2.MessageService }, { token: i3.FuelOrderPdfService }], target: i0.ɵɵFactoryTarget.Component });
80
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TemplateFuelComponent, selector: "app-template-fuel", ngImport: i0, template: "<mat-dialog-content id=\"templateFO\" #templateFO>\n <div class=\"d-flex flex-column w-100 white-background\">\n\n <!-- Encabezado -->\n <div class=\"borde w-100 d-flex flex-row align-items-center header-section\">\n <div class=\"d-flex flex-column align-items-center text-content\" style=\"width:80%\">\n <h2 class=\"text-header text-uppercase wrap-text\">{{data.name}}</h2>\n <h2 class=\"text-header wrap-text\">NIT: {{data.nit}}</h2>\n <div class=\"w-100 d-flex flex-row justify-content-evenly\">\n <h3 class=\"text-header wrap-text\">{{data.address}}</h3>\n <h3 class=\"text-header wrap-text\">TEL: {{data.telephone}}</h3>\n </div>\n </div>\n <div style=\"width:20%\">\n <div class=\"img w-100\" [style.background-image]=\"'url(' + data.image + ')'\">\n </div>\n </div>\n </div>\n\n <div class=\"borde container-headers\">\n <h2>Orden de combustible</h2>\n <h2 class=\"wrap-text\">N\u00B0: {{data.consecutive}}</h2>\n </div>\n\n <!-- Cuerpo -->\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">\u00C1rea:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\n <h2 class=\"wrap-text\">{{data.area}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">C\u00F3digo:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.code}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Fecha:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.date}}</h2>\n </div>\n </div>\n\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Operario:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\n <h2 class=\"wrap-text\">{{data.responsible}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Od\u00F3metro:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:44%\">\n <h2 class=\"wrap-text\">{{data.odometer}}</h2>\n </div>\n <!-- <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Referencia Factura:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.invoiceReference}}</h2>\n </div> -->\n </div>\n\n <div class=\"borde container-headers\">\n <h3>Datos del proveedor</h3>\n </div>\n\n <div class=\"borde flexible-row\">\n <div class=\"border-r container-text\" style=\"width:15%\">\n <h2 class=\"fw-bold\">Lugar:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:35%\">\n <h2 class=\"wrap-text\">{{data.namePlace}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:15%\">\n <h2 class=\"fw-bold\">Direcci\u00F3n:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:35%\">\n <h2 class=\"wrap-text\">{{data.addressPlace}}</h2>\n </div>\n </div>\n\n <div class=\"borde container-headers\">\n <h3>Detalles del servicio</h3>\n </div>\n\n <div class=\"borde w-100 description-section\">\n <h3 class=\"wrap-text text-start\">{{data.detalle}}</h3>\n <h3 class=\"wrap-text text-start\">Descripci\u00F3n: {{data.description}}</h3>\n </div>\n\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:35%\">\n <h2 class=\"fw-bold\">AUTORIZADA POR:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:65%\">\n <h2 class=\"wrap-text\">{{data.approved_by}}</h2>\n </div>\n </div>\n\n <!-- piso -->\n <div class=\"borde d-flex flex-column align-items-center justify-content-center w-100 footer-section\">\n <h2>Favor adjuntar la orden de venta o factura</h2>\n <h2 class=\"wrap-text\">{{data.mail}}</h2>\n </div>\n\n </div>\n</mat-dialog-content>\n\n<div class=\"download-container\">\n <button (click)=\"generatePdfWithHtml2Canvas()\" color='primary' mat-raised-button style=\"margin-right: 10px;\">\n Generar PDF\n </button>\n</div>", styles: [".img{background-size:100%!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;height:22mm!important;margin:0!important;padding:0!important}h2{font-size:1rem!important;line-height:1.2!important;margin:0!important;padding:0!important;text-align:center!important}h3{line-height:1.2!important;margin:0!important;padding:0!important;text-align:center!important}.text-header{line-height:1.5!important;font-weight:700!important}.text-uppercase{text-transform:uppercase!important}.wrap-text{white-space:pre-wrap!important}.text-content{padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.borde{border:1px solid blue!important}.border-r{border-right:1px solid blue!important;min-height:100%!important;align-self:stretch!important}.container-text{display:flex!important;justify-content:center!important;align-items:center!important;min-height:inherit!important}.container-headers{display:flex!important;align-items:center!important;justify-content:space-evenly!important;width:100%!important;min-height:8mm!important;background:#f0f4ff9c!important;padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.container-headers h2,.container-headers h3{font-weight:700!important}.flexible-row{display:flex!important;flex-direction:row!important;align-items:stretch!important;min-height:11mm!important}.header-section{min-height:25mm!important}.footer-section{min-height:14mm!important;background:#f0f4ff59!important;padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.description-section{min-height:20mm!important;padding:10px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.w-100{width:100%!important}.text-start{text-align:start!important}.white-background{background-color:#fff!important}.download-container{display:flex!important;justify-content:center!important;margin-top:15px!important}\n"], dependencies: [{ kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] });
79
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TemplateFuelComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i1.MatDialog }, { token: i2.MessageService }, { token: i3.FuelOrderPdfService }], target: i0.ɵɵFactoryTarget.Component });
80
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TemplateFuelComponent, selector: "app-template-fuel", ngImport: i0, template: "<mat-dialog-content id=\"templateFO\" #templateFO>\n <div class=\"d-flex flex-column w-100 white-background\">\n\n <!-- Encabezado -->\n <div class=\"borde w-100 d-flex flex-row align-items-center header-section\">\n <div class=\"d-flex flex-column align-items-center text-content\" style=\"width:80%\">\n <h2 class=\"text-header text-uppercase wrap-text\">{{data.name}}</h2>\n <h2 class=\"text-header wrap-text\">NIT: {{data.nit}}</h2>\n <div class=\"w-100 d-flex flex-row justify-content-evenly\">\n <h3 class=\"text-header wrap-text\">{{data.address}}</h3>\n <h3 class=\"text-header wrap-text\">TEL: {{data.telephone}}</h3>\n </div>\n </div>\n <div style=\"width:20%\">\n <div class=\"img w-100\" [style.background-image]=\"'url(' + data.image + ')'\">\n </div>\n </div>\n </div>\n\n <div class=\"borde container-headers\">\n <h2>Orden de combustible</h2>\n <h2 class=\"wrap-text\">N\u00B0: {{data.consecutive}}</h2>\n </div>\n\n <!-- Cuerpo -->\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">\u00C1rea:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\n <h2 class=\"wrap-text\">{{data.area}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">C\u00F3digo:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.code}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Fecha:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.date}}</h2>\n </div>\n </div>\n\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Operario:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\n <h2 class=\"wrap-text\">{{data.responsible}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Od\u00F3metro:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:44%\">\n <h2 class=\"wrap-text\">{{data.odometer}}</h2>\n </div>\n <!-- <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Referencia Factura:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.invoiceReference}}</h2>\n </div> -->\n </div>\n\n <div class=\"borde container-headers\">\n <h3>Datos del proveedor</h3>\n </div>\n\n <div class=\"borde flexible-row\">\n <div class=\"border-r container-text\" style=\"width:15%\">\n <h2 class=\"fw-bold\">Lugar:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:35%\">\n <h2 class=\"wrap-text\">{{data.namePlace}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:15%\">\n <h2 class=\"fw-bold\">Direcci\u00F3n:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:35%\">\n <h2 class=\"wrap-text\">{{data.addressPlace}}</h2>\n </div>\n </div>\n\n <div class=\"borde container-headers\">\n <h3>Detalles del servicio</h3>\n </div>\n\n <div class=\"borde w-100 description-section\">\n <h3 class=\"wrap-text text-start\">{{data.detalle}}</h3>\n <h3 class=\"wrap-text text-start\">Descripci\u00F3n: {{data.description}}</h3>\n </div>\n\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:35%\">\n <h2 class=\"fw-bold\">AUTORIZADA POR:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:65%\">\n <h2 class=\"wrap-text\">{{data.approved_by}}</h2>\n </div>\n </div>\n\n <!-- piso -->\n <div class=\"borde d-flex flex-column align-items-center justify-content-center w-100 footer-section\">\n <h2>Favor adjuntar la orden de venta o factura</h2>\n <h2 class=\"wrap-text\">{{data.mail}}</h2>\n </div>\n\n </div>\n</mat-dialog-content>\n\n<div class=\"download-container\">\n <button (click)=\"generatePdfWithHtml2Canvas()\" color='primary' mat-raised-button style=\"margin-right: 10px;\">\n Generar PDF\n </button>\n</div>", styles: [".img{background-size:100%!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;height:22mm!important;margin:0!important;padding:0!important}h2{font-size:1rem!important;line-height:1.2!important;margin:0!important;padding:0!important;text-align:center!important}h3{line-height:1.2!important;margin:0!important;padding:0!important;text-align:center!important}.text-header{line-height:1.5!important;font-weight:700!important}.text-uppercase{text-transform:uppercase!important}.wrap-text{white-space:pre-wrap!important}.text-content{padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.borde{border:1px solid blue!important}.border-r{border-right:1px solid blue!important;min-height:100%!important;align-self:stretch!important}.container-text{display:flex!important;justify-content:center!important;align-items:center!important;min-height:inherit!important}.container-headers{display:flex!important;align-items:center!important;justify-content:space-evenly!important;width:100%!important;min-height:8mm!important;background:#f0f4ff9c!important;padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.container-headers h2,.container-headers h3{font-weight:700!important}.flexible-row{display:flex!important;flex-direction:row!important;align-items:stretch!important;min-height:11mm!important}.header-section{min-height:25mm!important}.footer-section{min-height:14mm!important;background:#f0f4ff59!important;padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.description-section{min-height:20mm!important;padding:10px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.w-100{width:100%!important}.text-start{text-align:start!important}.white-background{background-color:#fff!important}.download-container{display:flex!important;justify-content:center!important;margin-top:15px!important}\n"], dependencies: [{ kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }] });
81
81
  }
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TemplateFuelComponent, decorators: [{
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TemplateFuelComponent, decorators: [{
83
83
  type: Component,
84
84
  args: [{ selector: 'app-template-fuel', template: "<mat-dialog-content id=\"templateFO\" #templateFO>\n <div class=\"d-flex flex-column w-100 white-background\">\n\n <!-- Encabezado -->\n <div class=\"borde w-100 d-flex flex-row align-items-center header-section\">\n <div class=\"d-flex flex-column align-items-center text-content\" style=\"width:80%\">\n <h2 class=\"text-header text-uppercase wrap-text\">{{data.name}}</h2>\n <h2 class=\"text-header wrap-text\">NIT: {{data.nit}}</h2>\n <div class=\"w-100 d-flex flex-row justify-content-evenly\">\n <h3 class=\"text-header wrap-text\">{{data.address}}</h3>\n <h3 class=\"text-header wrap-text\">TEL: {{data.telephone}}</h3>\n </div>\n </div>\n <div style=\"width:20%\">\n <div class=\"img w-100\" [style.background-image]=\"'url(' + data.image + ')'\">\n </div>\n </div>\n </div>\n\n <div class=\"borde container-headers\">\n <h2>Orden de combustible</h2>\n <h2 class=\"wrap-text\">N\u00B0: {{data.consecutive}}</h2>\n </div>\n\n <!-- Cuerpo -->\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">\u00C1rea:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\n <h2 class=\"wrap-text\">{{data.area}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">C\u00F3digo:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.code}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Fecha:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.date}}</h2>\n </div>\n </div>\n\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Operario:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:32%\">\n <h2 class=\"wrap-text\">{{data.responsible}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Od\u00F3metro:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:44%\">\n <h2 class=\"wrap-text\">{{data.odometer}}</h2>\n </div>\n <!-- <div class=\"border-r container-text\" style=\"width:12%\">\n <h2 class=\"fw-bold\">Referencia Factura:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:16%\">\n <h2 class=\"wrap-text\">{{data.invoiceReference}}</h2>\n </div> -->\n </div>\n\n <div class=\"borde container-headers\">\n <h3>Datos del proveedor</h3>\n </div>\n\n <div class=\"borde flexible-row\">\n <div class=\"border-r container-text\" style=\"width:15%\">\n <h2 class=\"fw-bold\">Lugar:</h2>\n </div>\n <div class=\"border-r container-text text-content\" style=\"width:35%\">\n <h2 class=\"wrap-text\">{{data.namePlace}}</h2>\n </div>\n <div class=\"border-r container-text\" style=\"width:15%\">\n <h2 class=\"fw-bold\">Direcci\u00F3n:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:35%\">\n <h2 class=\"wrap-text\">{{data.addressPlace}}</h2>\n </div>\n </div>\n\n <div class=\"borde container-headers\">\n <h3>Detalles del servicio</h3>\n </div>\n\n <div class=\"borde w-100 description-section\">\n <h3 class=\"wrap-text text-start\">{{data.detalle}}</h3>\n <h3 class=\"wrap-text text-start\">Descripci\u00F3n: {{data.description}}</h3>\n </div>\n\n <div class=\"borde w-100 flexible-row\">\n <div class=\"border-r container-text\" style=\"width:35%\">\n <h2 class=\"fw-bold\">AUTORIZADA POR:</h2>\n </div>\n <div class=\"container-text text-content\" style=\"width:65%\">\n <h2 class=\"wrap-text\">{{data.approved_by}}</h2>\n </div>\n </div>\n\n <!-- piso -->\n <div class=\"borde d-flex flex-column align-items-center justify-content-center w-100 footer-section\">\n <h2>Favor adjuntar la orden de venta o factura</h2>\n <h2 class=\"wrap-text\">{{data.mail}}</h2>\n </div>\n\n </div>\n</mat-dialog-content>\n\n<div class=\"download-container\">\n <button (click)=\"generatePdfWithHtml2Canvas()\" color='primary' mat-raised-button style=\"margin-right: 10px;\">\n Generar PDF\n </button>\n</div>", styles: [".img{background-size:100%!important;background-repeat:no-repeat!important;background-position:center!important;background-size:contain!important;height:22mm!important;margin:0!important;padding:0!important}h2{font-size:1rem!important;line-height:1.2!important;margin:0!important;padding:0!important;text-align:center!important}h3{line-height:1.2!important;margin:0!important;padding:0!important;text-align:center!important}.text-header{line-height:1.5!important;font-weight:700!important}.text-uppercase{text-transform:uppercase!important}.wrap-text{white-space:pre-wrap!important}.text-content{padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.borde{border:1px solid blue!important}.border-r{border-right:1px solid blue!important;min-height:100%!important;align-self:stretch!important}.container-text{display:flex!important;justify-content:center!important;align-items:center!important;min-height:inherit!important}.container-headers{display:flex!important;align-items:center!important;justify-content:space-evenly!important;width:100%!important;min-height:8mm!important;background:#f0f4ff9c!important;padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.container-headers h2,.container-headers h3{font-weight:700!important}.flexible-row{display:flex!important;flex-direction:row!important;align-items:stretch!important;min-height:11mm!important}.header-section{min-height:25mm!important}.footer-section{min-height:14mm!important;background:#f0f4ff59!important;padding:5px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.description-section{min-height:20mm!important;padding:10px!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.w-100{width:100%!important}.text-start{text-align:start!important}.white-background{background-color:#fff!important}.download-container{display:flex!important;justify-content:center!important;margin-top:15px!important}\n"] }]
85
- }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
85
+ }], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
86
86
  type: Inject,
87
87
  args: [MAT_DIALOG_DATA]
88
- }] }, { type: i1.MatDialog }, { type: i2.MessageService }, { type: i3.FuelOrderPdfService }]; } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtZnVlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL3JlcG9ydC90ZW1wbGF0ZS1mdWVsL3RlbXBsYXRlLWZ1ZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2JyYWlubG9wZXItdWkvY29tcG9uZW50cy9yZXBvcnQvdGVtcGxhdGUtZnVlbC90ZW1wbGF0ZS1mdWVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDOUIsT0FBTyxXQUFXLE1BQU0sYUFBYSxDQUFDO0FBQ3RDLE9BQU8sRUFBMkIsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7OztBQU9wRixNQUFNLE9BQU8scUJBQXFCO0lBeUJ2QjtJQUN5QjtJQUN4QjtJQUNEO0lBQ0M7SUEzQlYsSUFBSSxHQUFHO1FBQ0wsSUFBSSxFQUFFLEVBQUU7UUFDUixHQUFHLEVBQUUsRUFBRTtRQUNQLE9BQU8sRUFBRSxFQUFFO1FBQ1gsU0FBUyxFQUFFLEVBQUU7UUFDYixJQUFJLEVBQUUsRUFBRTtRQUNSLEtBQUssRUFBRSxFQUFFO1FBQ1QsSUFBSSxFQUFFLEVBQUU7UUFDUixJQUFJLEVBQUUsRUFBRTtRQUNSLFdBQVcsRUFBRSxFQUFFO1FBQ2YsUUFBUSxFQUFFLEVBQUU7UUFDWixXQUFXLEVBQUUsRUFBRTtRQUNmLE9BQU8sRUFBQyxFQUFFO1FBQ1YsV0FBVyxFQUFFLEVBQUU7UUFDZixXQUFXLEVBQUUsRUFBRTtRQUNmLFNBQVMsRUFBRSxFQUFFO1FBQ2IsWUFBWSxFQUFFLEVBQUU7UUFDaEIsSUFBSSxFQUFFLEVBQUU7UUFDUixRQUFRLEVBQUMsRUFBRTtRQUNYLGdCQUFnQixFQUFFLEVBQUU7S0FDckIsQ0FBQTtJQUVELFlBQ1MsU0FBOEMsRUFDckIsU0FBUyxFQUNqQyxNQUFnQixFQUNqQixPQUF1QixFQUN0QixtQkFBd0M7UUFKekMsY0FBUyxHQUFULFNBQVMsQ0FBcUM7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBQTtRQUNqQyxXQUFNLEdBQU4sTUFBTSxDQUFVO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3RCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7SUFDOUMsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFBO0lBQ2pDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBQztZQUMzQixJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztTQUNyQztJQUNILENBQUM7SUFFTSwwQkFBMEI7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFBO1FBQ3JELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbkQsTUFBTSxHQUFHLEdBQUcsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN2QyxNQUFNLE9BQU8sR0FBRztZQUNkLFVBQVUsRUFBRSxPQUFPO1lBQ25CLEtBQUssRUFBRSxDQUFDO1NBQ1QsQ0FBQztRQUNGLFdBQVcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDO2FBQ3ZCLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2hCLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7WUFFM0MsdUJBQXVCO1lBQ3ZCLE1BQU0sT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNuQixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbkIsTUFBTSxRQUFRLEdBQUksR0FBVyxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3RELE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxHQUFFLENBQUMsR0FBRyxPQUFPLENBQUM7WUFDL0QsTUFBTSxTQUFTLEdBQUcsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUM7WUFDaEUsR0FBRyxDQUFDLFFBQVEsQ0FDVixHQUFHLEVBQ0gsS0FBSyxFQUNMLE9BQU8sRUFDUCxPQUFPLEVBQ1AsUUFBUSxFQUNSLFNBQVMsRUFDVCxTQUFTLEVBQ1QsTUFBTSxDQUNQLENBQUM7WUFDRixPQUFPLEdBQUcsQ0FBQztRQUNiLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ25CLDREQUE0RDtZQUMzRCxTQUFTLENBQUMsTUFBTSxDQUFDLGtCQUFrQixFQUFFLEVBQUMsUUFBUSxFQUFFLGlCQUFpQixFQUFDLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFBO1lBQ3RCLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUE7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQTlFVSxxQkFBcUIsOENBMEJ0QixlQUFlOzRGQTFCZCxxQkFBcUIseURDYmxDLHlwS0FxSE07OzRGRHhHTyxxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsbUJBQW1COzswQkE4QjFCLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvbWVzc2FnZS5zZXJ2aWNlJztcbmltcG9ydCB7IEdlbmVyYXRlUGRmU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL2dlbmVyYXRlLXBkZi5zZXJ2aWNlJztcbmltcG9ydCB7IEZ1ZWxPcmRlclBkZlNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9mdWVsLW9yZGVyLXBkZi5zZXJ2aWNlJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGpzUERGIH0gZnJvbSAnanNwZGYnO1xuaW1wb3J0IGh0bWwyY2FudmFzIGZyb20gJ2h0bWwyY2FudmFzJztcbmltcG9ydCB7TWF0RGlhbG9nLCAgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtdGVtcGxhdGUtZnVlbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS1mdWVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdGVtcGxhdGUtZnVlbC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlRnVlbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgZGF0YSA9IHtcbiAgICBuYW1lOiAnJyxcbiAgICBuaXQ6ICcnLFxuICAgIGFkZHJlc3M6ICcnLFxuICAgIHRlbGVwaG9uZTogJycsXG4gICAgbWFpbDogJycsXG4gICAgaW1hZ2U6ICcnLFxuICAgIGNvZGU6ICcnLFxuICAgIGRhdGU6ICcnLFxuICAgIHJlc3BvbnNpYmxlOiAnJyxcbiAgICBpZF9wbGFjZTogJycsXG4gICAgYXBwcm92ZWRfYnk6ICcnLFxuICAgIGRldGFsbGU6JycsXG4gICAgZGVzY3JpcHRpb246ICcnLFxuICAgIGNvbnNlY3V0aXZlOiAnJyxcbiAgICBuYW1lUGxhY2U6ICcnLFxuICAgIGFkZHJlc3NQbGFjZTogJycsXG4gICAgYXJlYTogJycsXG4gICAgb2RvbWV0ZXI6JycsXG4gICAgaW52b2ljZVJlZmVyZW5jZTogJydcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxUZW1wbGF0ZUZ1ZWxDb21wb25lbnQ+LFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YU1vZGFsLFxuICAgIHByaXZhdGUgZGlhbG9nOk1hdERpYWxvZyxcbiAgICBwdWJsaWMgbWVzc2FnZTogTWVzc2FnZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBGdWVsT3JkZXJQZGZTZXJ2aWNlOiBGdWVsT3JkZXJQZGZTZXJ2aWNlXG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhID0gdGhpcy5kYXRhTW9kYWwuZGF0YVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCl7XG4gICAgaWYodGhpcy5kYXRhTW9kYWwuYXV0b0dlbmVyYXRlKXtcbiAgICAgICAgdGhpcy5nZW5lcmF0ZVBkZldpdGhIdG1sMkNhbnZhcygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZW5lcmF0ZVBkZldpdGhIdG1sMkNhbnZhcygpOiB2b2lkIHtcbiAgICB0aGlzLm1lc3NhZ2Uub3BlbkxvYWRpbmcoXCJDYXJnYW5kb1wiLCBcIkdlbmVyYW5kbyBQREZcIilcbiAgICBjb25zdCBEQVRBID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RlbXBsYXRlRk8nKTtcbiAgICBjb25zdCBkb2MgPSBuZXcganNQREYoJ3AnLCAncHQnLCAnYTQnKTtcbiAgICBjb25zdCBvcHRpb25zID0ge1xuICAgICAgYmFja2dyb3VuZDogJ3doaXRlJyxcbiAgICAgIHNjYWxlOiAzXG4gICAgfTtcbiAgICBodG1sMmNhbnZhcyhEQVRBLCBvcHRpb25zKVxuICAgICAgLnRoZW4oKGNhbnZhcykgPT4ge1xuICAgICAgIGNvbnN0IGltZyA9IGNhbnZhcy50b0RhdGFVUkwoJ2ltYWdlL1BORycpO1xuXG4gICAgICAvL2FkZCBpbWcgY2FudmFzIHRvIHBkZlxuICAgICAgY29uc3QgYnVmZmVyWCA9IDE1O1xuICAgICAgY29uc3QgYnVmZmVyWSA9IDE1O1xuICAgICAgY29uc3QgaW1nUHJvcHMgPSAoZG9jIGFzIGFueSkuZ2V0SW1hZ2VQcm9wZXJ0aWVzKGltZyk7XG4gICAgICBjb25zdCBwZGZXaWR0aCA9IGRvYy5pbnRlcm5hbC5wYWdlU2l6ZS5nZXRXaWR0aCgpIC0yICogYnVmZmVyWDtcbiAgICAgIGNvbnN0IHBkZkhlaWdodCA9IChpbWdQcm9wcy5oZWlnaHQgKiBwZGZXaWR0aCkgLyBpbWdQcm9wcy53aWR0aDtcbiAgICAgIGRvYy5hZGRJbWFnZShcbiAgICAgICAgaW1nLFxuICAgICAgICAnUE5HJyxcbiAgICAgICAgYnVmZmVyWCxcbiAgICAgICAgYnVmZmVyWSxcbiAgICAgICAgcGRmV2lkdGgsXG4gICAgICAgIHBkZkhlaWdodCxcbiAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAnRkFTVCdcbiAgICAgICk7XG4gICAgICByZXR1cm4gZG9jO1xuICAgIH0pXG4gICAgLnRoZW4oKGRvY1Jlc3VsdCkgPT4ge1xuICAgICAvL2RvY1Jlc3VsdC5zYXZlKGAke25ldyBEYXRlKCkudG9JU09TdHJpbmcoKX1fcmVwb3J0ZS5wZGZgKTtcbiAgICAgIGRvY1Jlc3VsdC5vdXRwdXQoJ2RhdGF1cmxuZXd3aW5kb3cnLCB7ZmlsZW5hbWU6ICdmdWVrcmVwb3J0ZS5wZGYnfSk7XG4gICAgICB0aGlzLmRpYWxvZy5jbG9zZUFsbCgpXG4gICAgICB0aGlzLm1lc3NhZ2UuY2xvc2VMb2FkaW5nKClcbiAgICB9KTtcbiAgfVxuXG59XG4iLCI8bWF0LWRpYWxvZy1jb250ZW50IGlkPVwidGVtcGxhdGVGT1wiICN0ZW1wbGF0ZUZPPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gdy0xMDAgd2hpdGUtYmFja2dyb3VuZFwiPlxuXG4gICAgICAgIDwhLS0gRW5jYWJlemFkbyAgLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSB3LTEwMCBkLWZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGhlYWRlci1zZWN0aW9uXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjgwJVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHQtaGVhZGVyIHRleHQtdXBwZXJjYXNlIHdyYXAtdGV4dFwiPnt7ZGF0YS5uYW1lfX08L2gyPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cInRleHQtaGVhZGVyIHdyYXAtdGV4dFwiPk5JVDoge3tkYXRhLm5pdH19PC9oMj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgZC1mbGV4IGZsZXgtcm93IGp1c3RpZnktY29udGVudC1ldmVubHlcIj5cbiAgICAgICAgICAgICAgICAgICAgPGgzIGNsYXNzPVwidGV4dC1oZWFkZXIgd3JhcC10ZXh0XCI+e3tkYXRhLmFkZHJlc3N9fTwvaDM+XG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRleHQtaGVhZGVyIHdyYXAtdGV4dFwiPlRFTDoge3tkYXRhLnRlbGVwaG9uZX19PC9oMz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOjIwJVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbWcgdy0xMDBcIiBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCIndXJsKCcgKyBkYXRhLmltYWdlICsgJyknXCI+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIGNvbnRhaW5lci1oZWFkZXJzXCI+XG4gICAgICAgICAgICA8aDI+T3JkZW4gZGUgY29tYnVzdGlibGU8L2gyPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+TsKwOiB7e2RhdGEuY29uc2VjdXRpdmV9fTwvaDI+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gQ3VlcnBvIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgdy0xMDAgZmxleGlibGUtcm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjEyJVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj7DgXJlYTo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHQgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDozMiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEuYXJlYX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJmdy1ib2xkXCI+Q8OzZGlnbzo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHQgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDoxNiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEuY29kZX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJmdy1ib2xkXCI+RmVjaGE6PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MTYlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLmRhdGV9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIHctMTAwIGZsZXhpYmxlLXJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJmdy1ib2xkXCI+T3BlcmFyaW86PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MzIlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLnJlc3BvbnNpYmxlfX08L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjEyJVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5PZMOzbWV0cm86PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6NDQlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLm9kb21ldGVyfX08L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MTIlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPlJlZmVyZW5jaWEgRmFjdHVyYTo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLXRleHQgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDoxNiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEuaW52b2ljZVJlZmVyZW5jZX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PiAtLT5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIGNvbnRhaW5lci1oZWFkZXJzXCI+XG4gICAgICAgICAgICA8aDM+RGF0b3MgZGVsIHByb3ZlZWRvcjwvaDM+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSBmbGV4aWJsZS1yb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MTUlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPkx1Z2FyOjwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjM1JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5uYW1lUGxhY2V9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MTUlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPkRpcmVjY2nDs246PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MzUlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLmFkZHJlc3NQbGFjZX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgY29udGFpbmVyLWhlYWRlcnNcIj5cbiAgICAgICAgICAgIDxoMz5EZXRhbGxlcyBkZWwgc2VydmljaW88L2gzPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgdy0xMDAgZGVzY3JpcHRpb24tc2VjdGlvblwiPlxuICAgICAgICAgICAgPGgzIGNsYXNzPVwid3JhcC10ZXh0IHRleHQtc3RhcnRcIj57e2RhdGEuZGV0YWxsZX19PC9oMz5cbiAgICAgICAgICAgIDxoMyBjbGFzcz1cIndyYXAtdGV4dCB0ZXh0LXN0YXJ0XCI+RGVzY3JpcGNpw7NuOiB7e2RhdGEuZGVzY3JpcHRpb259fTwvaDM+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSB3LTEwMCBmbGV4aWJsZS1yb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MzUlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPkFVVE9SSVpBREEgUE9SOjwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjY1JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5hcHByb3ZlZF9ieX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tIHBpc28gLS0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSBkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgdy0xMDAgZm9vdGVyLXNlY3Rpb25cIj5cbiAgICAgICAgICAgIDxoMj5GYXZvciBhZGp1bnRhciBsYSBvcmRlbiBkZSB2ZW50YSBvIGZhY3R1cmE8L2gyPlxuICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLm1haWx9fTwvaDI+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgPC9kaXY+XG48L21hdC1kaWFsb2ctY29udGVudD5cblxuPGRpdiBjbGFzcz1cImRvd25sb2FkLWNvbnRhaW5lclwiPlxuICAgIDxidXR0b24gKGNsaWNrKT1cImdlbmVyYXRlUGRmV2l0aEh0bWwyQ2FudmFzKClcIiBjb2xvcj0ncHJpbWFyeScgbWF0LXJhaXNlZC1idXR0b24gc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDEwcHg7XCI+XG4gICAgICAgIEdlbmVyYXIgUERGXG4gICAgPC9idXR0b24+XG48L2Rpdj4iXX0=
88
+ }] }, { type: i1.MatDialog }, { type: i2.MessageService }, { type: i3.FuelOrderPdfService }] });
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtZnVlbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL21vZHVsZXMvYnJhaW5sb3Blci11aS9jb21wb25lbnRzL3JlcG9ydC90ZW1wbGF0ZS1mdWVsL3RlbXBsYXRlLWZ1ZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9tb2R1bGVzL2JyYWlubG9wZXItdWkvY29tcG9uZW50cy9yZXBvcnQvdGVtcGxhdGUtZnVlbC90ZW1wbGF0ZS1mdWVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDOUIsT0FBTyxXQUFXLE1BQU0sYUFBYSxDQUFDO0FBQ3RDLE9BQU8sRUFBMkIsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7OztBQU9wRixNQUFNLE9BQU8scUJBQXFCO0lBeUJ2QjtJQUN5QjtJQUN4QjtJQUNEO0lBQ0M7SUEzQlYsSUFBSSxHQUFHO1FBQ0wsSUFBSSxFQUFFLEVBQUU7UUFDUixHQUFHLEVBQUUsRUFBRTtRQUNQLE9BQU8sRUFBRSxFQUFFO1FBQ1gsU0FBUyxFQUFFLEVBQUU7UUFDYixJQUFJLEVBQUUsRUFBRTtRQUNSLEtBQUssRUFBRSxFQUFFO1FBQ1QsSUFBSSxFQUFFLEVBQUU7UUFDUixJQUFJLEVBQUUsRUFBRTtRQUNSLFdBQVcsRUFBRSxFQUFFO1FBQ2YsUUFBUSxFQUFFLEVBQUU7UUFDWixXQUFXLEVBQUUsRUFBRTtRQUNmLE9BQU8sRUFBQyxFQUFFO1FBQ1YsV0FBVyxFQUFFLEVBQUU7UUFDZixXQUFXLEVBQUUsRUFBRTtRQUNmLFNBQVMsRUFBRSxFQUFFO1FBQ2IsWUFBWSxFQUFFLEVBQUU7UUFDaEIsSUFBSSxFQUFFLEVBQUU7UUFDUixRQUFRLEVBQUMsRUFBRTtRQUNYLGdCQUFnQixFQUFFLEVBQUU7S0FDckIsQ0FBQTtJQUVELFlBQ1MsU0FBOEMsRUFDckIsU0FBUyxFQUNqQyxNQUFnQixFQUNqQixPQUF1QixFQUN0QixtQkFBd0M7UUFKekMsY0FBUyxHQUFULFNBQVMsQ0FBcUM7UUFDckIsY0FBUyxHQUFULFNBQVMsQ0FBQTtRQUNqQyxXQUFNLEdBQU4sTUFBTSxDQUFVO1FBQ2pCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3RCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7SUFDOUMsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFBO0lBQ2pDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBQyxDQUFDO1lBQzVCLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRU0sMEJBQTBCO1FBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQTtRQUNyRCxNQUFNLElBQUksR0FBRyxRQUFRLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ25ELE1BQU0sR0FBRyxHQUFHLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDdkMsTUFBTSxPQUFPLEdBQUc7WUFDZCxVQUFVLEVBQUUsT0FBTztZQUNuQixLQUFLLEVBQUUsQ0FBQztTQUNULENBQUM7UUFDRixXQUFXLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQzthQUN2QixJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUNoQixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBRTNDLHVCQUF1QjtZQUN2QixNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDbkIsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ25CLE1BQU0sUUFBUSxHQUFJLEdBQVcsQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN0RCxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsR0FBRSxDQUFDLEdBQUcsT0FBTyxDQUFDO1lBQy9ELE1BQU0sU0FBUyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDO1lBQ2hFLEdBQUcsQ0FBQyxRQUFRLENBQ1YsR0FBRyxFQUNILEtBQUssRUFDTCxPQUFPLEVBQ1AsT0FBTyxFQUNQLFFBQVEsRUFDUixTQUFTLEVBQ1QsU0FBUyxFQUNULE1BQU0sQ0FDUCxDQUFDO1lBQ0YsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUM7YUFDRCxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNuQiw0REFBNEQ7WUFDM0QsU0FBUyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxFQUFDLFFBQVEsRUFBRSxpQkFBaUIsRUFBQyxDQUFDLENBQUM7WUFDcEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQTtZQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFBO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0E5RVUscUJBQXFCLDhDQTBCdEIsZUFBZTs0RkExQmQscUJBQXFCLHlEQ2JsQyx5cEtBcUhNOzs0RkR4R08scUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG1CQUFtQjs7MEJBOEIxQixNQUFNOzJCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL21lc3NhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBHZW5lcmF0ZVBkZlNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9nZW5lcmF0ZS1wZGYuc2VydmljZSc7XG5pbXBvcnQgeyBGdWVsT3JkZXJQZGZTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvZnVlbC1vcmRlci1wZGYuc2VydmljZSc7XG5pbXBvcnQgeyBDb21wb25lbnQsIEluamVjdCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBqc1BERiB9IGZyb20gJ2pzcGRmJztcbmltcG9ydCBodG1sMmNhbnZhcyBmcm9tICdodG1sMmNhbnZhcyc7XG5pbXBvcnQge01hdERpYWxvZywgIE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXRlbXBsYXRlLWZ1ZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUtZnVlbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RlbXBsYXRlLWZ1ZWwuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZUZ1ZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuXG4gIGRhdGEgPSB7XG4gICAgbmFtZTogJycsXG4gICAgbml0OiAnJyxcbiAgICBhZGRyZXNzOiAnJyxcbiAgICB0ZWxlcGhvbmU6ICcnLFxuICAgIG1haWw6ICcnLFxuICAgIGltYWdlOiAnJyxcbiAgICBjb2RlOiAnJyxcbiAgICBkYXRlOiAnJyxcbiAgICByZXNwb25zaWJsZTogJycsXG4gICAgaWRfcGxhY2U6ICcnLFxuICAgIGFwcHJvdmVkX2J5OiAnJyxcbiAgICBkZXRhbGxlOicnLFxuICAgIGRlc2NyaXB0aW9uOiAnJyxcbiAgICBjb25zZWN1dGl2ZTogJycsXG4gICAgbmFtZVBsYWNlOiAnJyxcbiAgICBhZGRyZXNzUGxhY2U6ICcnLFxuICAgIGFyZWE6ICcnLFxuICAgIG9kb21ldGVyOicnLFxuICAgIGludm9pY2VSZWZlcmVuY2U6ICcnXG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8VGVtcGxhdGVGdWVsQ29tcG9uZW50PixcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGFNb2RhbCxcbiAgICBwcml2YXRlIGRpYWxvZzpNYXREaWFsb2csXG4gICAgcHVibGljIG1lc3NhZ2U6IE1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgRnVlbE9yZGVyUGRmU2VydmljZTogRnVlbE9yZGVyUGRmU2VydmljZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YSA9IHRoaXMuZGF0YU1vZGFsLmRhdGFcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpe1xuICAgIGlmKHRoaXMuZGF0YU1vZGFsLmF1dG9HZW5lcmF0ZSl7XG4gICAgICAgIHRoaXMuZ2VuZXJhdGVQZGZXaXRoSHRtbDJDYW52YXMoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2VuZXJhdGVQZGZXaXRoSHRtbDJDYW52YXMoKTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlLm9wZW5Mb2FkaW5nKFwiQ2FyZ2FuZG9cIiwgXCJHZW5lcmFuZG8gUERGXCIpXG4gICAgY29uc3QgREFUQSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0ZW1wbGF0ZUZPJyk7XG4gICAgY29uc3QgZG9jID0gbmV3IGpzUERGKCdwJywgJ3B0JywgJ2E0Jyk7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHtcbiAgICAgIGJhY2tncm91bmQ6ICd3aGl0ZScsXG4gICAgICBzY2FsZTogM1xuICAgIH07XG4gICAgaHRtbDJjYW52YXMoREFUQSwgb3B0aW9ucylcbiAgICAgIC50aGVuKChjYW52YXMpID0+IHtcbiAgICAgICBjb25zdCBpbWcgPSBjYW52YXMudG9EYXRhVVJMKCdpbWFnZS9QTkcnKTtcblxuICAgICAgLy9hZGQgaW1nIGNhbnZhcyB0byBwZGZcbiAgICAgIGNvbnN0IGJ1ZmZlclggPSAxNTtcbiAgICAgIGNvbnN0IGJ1ZmZlclkgPSAxNTtcbiAgICAgIGNvbnN0IGltZ1Byb3BzID0gKGRvYyBhcyBhbnkpLmdldEltYWdlUHJvcGVydGllcyhpbWcpO1xuICAgICAgY29uc3QgcGRmV2lkdGggPSBkb2MuaW50ZXJuYWwucGFnZVNpemUuZ2V0V2lkdGgoKSAtMiAqIGJ1ZmZlclg7XG4gICAgICBjb25zdCBwZGZIZWlnaHQgPSAoaW1nUHJvcHMuaGVpZ2h0ICogcGRmV2lkdGgpIC8gaW1nUHJvcHMud2lkdGg7XG4gICAgICBkb2MuYWRkSW1hZ2UoXG4gICAgICAgIGltZyxcbiAgICAgICAgJ1BORycsXG4gICAgICAgIGJ1ZmZlclgsXG4gICAgICAgIGJ1ZmZlclksXG4gICAgICAgIHBkZldpZHRoLFxuICAgICAgICBwZGZIZWlnaHQsXG4gICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgJ0ZBU1QnXG4gICAgICApO1xuICAgICAgcmV0dXJuIGRvYztcbiAgICB9KVxuICAgIC50aGVuKChkb2NSZXN1bHQpID0+IHtcbiAgICAgLy9kb2NSZXN1bHQuc2F2ZShgJHtuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCl9X3JlcG9ydGUucGRmYCk7XG4gICAgICBkb2NSZXN1bHQub3V0cHV0KCdkYXRhdXJsbmV3d2luZG93Jywge2ZpbGVuYW1lOiAnZnVla3JlcG9ydGUucGRmJ30pO1xuICAgICAgdGhpcy5kaWFsb2cuY2xvc2VBbGwoKVxuICAgICAgdGhpcy5tZXNzYWdlLmNsb3NlTG9hZGluZygpXG4gICAgfSk7XG4gIH1cblxufVxuIiwiPG1hdC1kaWFsb2ctY29udGVudCBpZD1cInRlbXBsYXRlRk9cIiAjdGVtcGxhdGVGTz5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIHctMTAwIHdoaXRlLWJhY2tncm91bmRcIj5cblxuICAgICAgICA8IS0tIEVuY2FiZXphZG8gIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgdy0xMDAgZC1mbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciBoZWFkZXItc2VjdGlvblwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDo4MCVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ0ZXh0LWhlYWRlciB0ZXh0LXVwcGVyY2FzZSB3cmFwLXRleHRcIj57e2RhdGEubmFtZX19PC9oMj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ0ZXh0LWhlYWRlciB3cmFwLXRleHRcIj5OSVQ6IHt7ZGF0YS5uaXR9fTwvaDI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctMTAwIGQtZmxleCBmbGV4LXJvdyBqdXN0aWZ5LWNvbnRlbnQtZXZlbmx5XCI+XG4gICAgICAgICAgICAgICAgICAgIDxoMyBjbGFzcz1cInRleHQtaGVhZGVyIHdyYXAtdGV4dFwiPnt7ZGF0YS5hZGRyZXNzfX08L2gzPlxuICAgICAgICAgICAgICAgICAgICA8aDMgY2xhc3M9XCJ0ZXh0LWhlYWRlciB3cmFwLXRleHRcIj5URUw6IHt7ZGF0YS50ZWxlcGhvbmV9fTwvaDM+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDoyMCVcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW1nIHctMTAwXCIgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgZGF0YS5pbWFnZSArICcpJ1wiPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSBjb250YWluZXItaGVhZGVyc1wiPlxuICAgICAgICAgICAgPGgyPk9yZGVuIGRlIGNvbWJ1c3RpYmxlPC9oMj5cbiAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPk7CsDoge3tkYXRhLmNvbnNlY3V0aXZlfX08L2gyPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tIEN1ZXJwbyAtLT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIHctMTAwIGZsZXhpYmxlLXJvd1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJmdy1ib2xkXCI+w4FyZWE6PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MzIlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLmFyZWF9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MTIlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPkPDs2RpZ286PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MTYlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLmNvZGV9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MTIlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPkZlY2hhOjwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjE2JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5kYXRlfX08L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSB3LTEwMCBmbGV4aWJsZS1yb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dFwiIHN0eWxlPVwid2lkdGg6MTIlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwiZnctYm9sZFwiPk9wZXJhcmlvOjwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXItciBjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjMyJVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5yZXNwb25zaWJsZX19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci1yIGNvbnRhaW5lci10ZXh0XCIgc3R5bGU9XCJ3aWR0aDoxMiVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJmdy1ib2xkXCI+T2TDs21ldHJvOjwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjQ0JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5vZG9tZXRlcn19PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjEyJVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5SZWZlcmVuY2lhIEZhY3R1cmE6PC9oMj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci10ZXh0IHRleHQtY29udGVudFwiIHN0eWxlPVwid2lkdGg6MTYlXCI+XG4gICAgICAgICAgICAgICAgPGgyIGNsYXNzPVwid3JhcC10ZXh0XCI+e3tkYXRhLmludm9pY2VSZWZlcmVuY2V9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj4gLS0+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZSBjb250YWluZXItaGVhZGVyc1wiPlxuICAgICAgICAgICAgPGgzPkRhdG9zIGRlbCBwcm92ZWVkb3I8L2gzPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgZmxleGlibGUtcm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjE1JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5MdWdhcjo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHQgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDozNSVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEubmFtZVBsYWNlfX08L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjE1JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5EaXJlY2Npw7NuOjwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItdGV4dCB0ZXh0LWNvbnRlbnRcIiBzdHlsZT1cIndpZHRoOjM1JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5hZGRyZXNzUGxhY2V9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIGNvbnRhaW5lci1oZWFkZXJzXCI+XG4gICAgICAgICAgICA8aDM+RGV0YWxsZXMgZGVsIHNlcnZpY2lvPC9oMz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJvcmRlIHctMTAwIGRlc2NyaXB0aW9uLXNlY3Rpb25cIj5cbiAgICAgICAgICAgIDxoMyBjbGFzcz1cIndyYXAtdGV4dCB0ZXh0LXN0YXJ0XCI+e3tkYXRhLmRldGFsbGV9fTwvaDM+XG4gICAgICAgICAgICA8aDMgY2xhc3M9XCJ3cmFwLXRleHQgdGV4dC1zdGFydFwiPkRlc2NyaXBjacOzbjoge3tkYXRhLmRlc2NyaXB0aW9ufX08L2gzPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgdy0xMDAgZmxleGlibGUtcm93XCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyLXIgY29udGFpbmVyLXRleHRcIiBzdHlsZT1cIndpZHRoOjM1JVwiPlxuICAgICAgICAgICAgICAgIDxoMiBjbGFzcz1cImZ3LWJvbGRcIj5BVVRPUklaQURBIFBPUjo8L2gyPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLXRleHQgdGV4dC1jb250ZW50XCIgc3R5bGU9XCJ3aWR0aDo2NSVcIj5cbiAgICAgICAgICAgICAgICA8aDIgY2xhc3M9XCJ3cmFwLXRleHRcIj57e2RhdGEuYXBwcm92ZWRfYnl9fTwvaDI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPCEtLSBwaXNvIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGUgZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHctMTAwIGZvb3Rlci1zZWN0aW9uXCI+XG4gICAgICAgICAgICA8aDI+RmF2b3IgYWRqdW50YXIgbGEgb3JkZW4gZGUgdmVudGEgbyBmYWN0dXJhPC9oMj5cbiAgICAgICAgICAgIDxoMiBjbGFzcz1cIndyYXAtdGV4dFwiPnt7ZGF0YS5tYWlsfX08L2gyPlxuICAgICAgICA8L2Rpdj5cblxuICAgIDwvZGl2PlxuPC9tYXQtZGlhbG9nLWNvbnRlbnQ+XG5cbjxkaXYgY2xhc3M9XCJkb3dubG9hZC1jb250YWluZXJcIj5cbiAgICA8YnV0dG9uIChjbGljayk9XCJnZW5lcmF0ZVBkZldpdGhIdG1sMkNhbnZhcygpXCIgY29sb3I9J3ByaW1hcnknIG1hdC1yYWlzZWQtYnV0dG9uIHN0eWxlPVwibWFyZ2luLXJpZ2h0OiAxMHB4O1wiPlxuICAgICAgICBHZW5lcmFyIFBERlxuICAgIDwvYnV0dG9uPlxuPC9kaXY+Il19