@eui/components 14.0.15 → 14.0.16-snapshot-1675721483519

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 (44) hide show
  1. package/docs/dependencies.html +6 -8
  2. package/docs/js/menu-wc_es5.js +1 -1
  3. package/docs/js/search/search_index.js +2 -2
  4. package/esm2020/eui-block-document/eui-block-document.component.mjs +2 -2
  5. package/esm2020/eui-timepicker/eui-timepicker.component.mjs +2 -2
  6. package/esm2020/legacy/ux-block-document/ux-block-document.component.mjs +2 -2
  7. package/esm2020/legacy/ux-dynamic-message-box/ux-dynamic-message-box.component.mjs +2 -2
  8. package/esm2020/legacy/ux-dynamic-modal/ux-dynamic-modal.component.mjs +3 -3
  9. package/esm2020/legacy/ux-message-box/ux-message-box.component.mjs +2 -2
  10. package/esm2020/legacy/ux-modal/ux-modal.component.mjs +2 -2
  11. package/esm2020/legacy/ux-timepicker/ux-timepicker.component.mjs +2 -2
  12. package/fesm2015/eui-components-eui-block-document.mjs +2 -2
  13. package/fesm2015/eui-components-eui-block-document.mjs.map +1 -1
  14. package/fesm2015/eui-components-eui-timepicker.mjs +2 -2
  15. package/fesm2015/eui-components-eui-timepicker.mjs.map +1 -1
  16. package/fesm2015/eui-components-legacy-ux-block-document.mjs +2 -2
  17. package/fesm2015/eui-components-legacy-ux-block-document.mjs.map +1 -1
  18. package/fesm2015/eui-components-legacy-ux-dynamic-message-box.mjs +2 -2
  19. package/fesm2015/eui-components-legacy-ux-dynamic-message-box.mjs.map +1 -1
  20. package/fesm2015/eui-components-legacy-ux-dynamic-modal.mjs +2 -2
  21. package/fesm2015/eui-components-legacy-ux-dynamic-modal.mjs.map +1 -1
  22. package/fesm2015/eui-components-legacy-ux-message-box.mjs +2 -2
  23. package/fesm2015/eui-components-legacy-ux-message-box.mjs.map +1 -1
  24. package/fesm2015/eui-components-legacy-ux-modal.mjs +2 -2
  25. package/fesm2015/eui-components-legacy-ux-modal.mjs.map +1 -1
  26. package/fesm2015/eui-components-legacy-ux-timepicker.mjs +2 -2
  27. package/fesm2015/eui-components-legacy-ux-timepicker.mjs.map +1 -1
  28. package/fesm2020/eui-components-eui-block-document.mjs +2 -2
  29. package/fesm2020/eui-components-eui-block-document.mjs.map +1 -1
  30. package/fesm2020/eui-components-eui-timepicker.mjs +2 -2
  31. package/fesm2020/eui-components-eui-timepicker.mjs.map +1 -1
  32. package/fesm2020/eui-components-legacy-ux-block-document.mjs +2 -2
  33. package/fesm2020/eui-components-legacy-ux-block-document.mjs.map +1 -1
  34. package/fesm2020/eui-components-legacy-ux-dynamic-message-box.mjs +2 -2
  35. package/fesm2020/eui-components-legacy-ux-dynamic-message-box.mjs.map +1 -1
  36. package/fesm2020/eui-components-legacy-ux-dynamic-modal.mjs +2 -2
  37. package/fesm2020/eui-components-legacy-ux-dynamic-modal.mjs.map +1 -1
  38. package/fesm2020/eui-components-legacy-ux-message-box.mjs +2 -2
  39. package/fesm2020/eui-components-legacy-ux-message-box.mjs.map +1 -1
  40. package/fesm2020/eui-components-legacy-ux-modal.mjs +2 -2
  41. package/fesm2020/eui-components-legacy-ux-modal.mjs.map +1 -1
  42. package/fesm2020/eui-components-legacy-ux-timepicker.mjs +2 -2
  43. package/fesm2020/eui-components-legacy-ux-timepicker.mjs.map +1 -1
  44. package/package.json +2 -2
@@ -17,10 +17,10 @@ export class EuiBlockDocumentComponent extends BaseDirective {
17
17
  }
18
18
  }
19
19
  /** @nocollapse */ EuiBlockDocumentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EuiBlockDocumentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
20
- /** @nocollapse */ EuiBlockDocumentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: EuiBlockDocumentComponent, selector: "eui-block-document", inputs: { isBlocked: "isBlocked" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"eui-block-document__loader\" aria-label=\"eUI Block Document\"></div>\n", styles: [".eui-block-document__loader{display:none}.eui-block-document--blocked .eui-block-document__loader{bottom:0;display:block;left:0;margin:auto;overflow:show;position:fixed;right:0;top:0;z-index:var(--eui-base-z-index-block-document)}.eui-block-document--blocked .eui-block-document__loader:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%}.eui-block-document--blocked .eui-block-document__loader:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.eui-block-document--blocked .eui-block-document__loader:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);bottom:15px;content:\"\";display:block;height:150px;left:50%;margin:-100px 0 0 -100px;position:relative;right:15px;top:50%;width:150px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
20
+ /** @nocollapse */ EuiBlockDocumentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: EuiBlockDocumentComponent, selector: "eui-block-document", inputs: { isBlocked: "isBlocked" }, host: { properties: { "class": "this.cssClasses" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"eui-block-document__loader\" aria-label=\"eUI Block Document\"></div>\n", styles: [".eui-block-document__loader{display:none}.eui-block-document--blocked .eui-block-document__loader{display:block;inset:0;margin:auto;overflow:show;position:fixed;z-index:var(--eui-base-z-index-block-document)}.eui-block-document--blocked .eui-block-document__loader:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%}.eui-block-document--blocked .eui-block-document__loader:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.eui-block-document--blocked .eui-block-document__loader:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);content:\"\";display:block;height:150px;inset:50% 15px 15px 50%;margin:-100px 0 0 -100px;position:relative;width:150px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
21
21
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EuiBlockDocumentComponent, decorators: [{
22
22
  type: Component,
23
- args: [{ selector: 'eui-block-document', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"eui-block-document__loader\" aria-label=\"eUI Block Document\"></div>\n", styles: [".eui-block-document__loader{display:none}.eui-block-document--blocked .eui-block-document__loader{bottom:0;display:block;left:0;margin:auto;overflow:show;position:fixed;right:0;top:0;z-index:var(--eui-base-z-index-block-document)}.eui-block-document--blocked .eui-block-document__loader:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%}.eui-block-document--blocked .eui-block-document__loader:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.eui-block-document--blocked .eui-block-document__loader:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);bottom:15px;content:\"\";display:block;height:150px;left:50%;margin:-100px 0 0 -100px;position:relative;right:15px;top:50%;width:150px}\n"] }]
23
+ args: [{ selector: 'eui-block-document', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"eui-block-document__loader\" aria-label=\"eUI Block Document\"></div>\n", styles: [".eui-block-document__loader{display:none}.eui-block-document--blocked .eui-block-document__loader{display:block;inset:0;margin:auto;overflow:show;position:fixed;z-index:var(--eui-base-z-index-block-document)}.eui-block-document--blocked .eui-block-document__loader:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%}.eui-block-document--blocked .eui-block-document__loader:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.eui-block-document--blocked .eui-block-document__loader:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);content:\"\";display:block;height:150px;inset:50% 15px 15px 50%;margin:-100px 0 0 -100px;position:relative;width:150px}\n"] }]
24
24
  }], ctorParameters: function () { return []; }, propDecorators: { isBlocked: [{
25
25
  type: Input
26
26
  }], cssClasses: [{
@@ -224,10 +224,10 @@ export class EuiTimepickerComponent {
224
224
  }
225
225
  }
226
226
  /** @nocollapse */ EuiTimepickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EuiTimepickerComponent, deps: [{ token: DYNAMIC_COMPONENT_CONFIG, optional: true }, { token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
227
- /** @nocollapse */ EuiTimepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: EuiTimepickerComponent, selector: "eui-timepicker", inputs: { isreadOnly: "isreadOnly", isOneInputField: "isOneInputField", hasSeconds: "hasSeconds", timeMask: "timeMask" }, viewQueries: [{ propertyName: "inputHoursElement", first: true, predicate: ["inputrefhours"], descendants: true, read: ElementRef }, { propertyName: "inputMinsElement", first: true, predicate: ["inputrefmins"], descendants: true, read: ElementRef }, { propertyName: "inputSecsElement", first: true, predicate: ["inputrefsecs"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"eui-timepicker\" [class.eui-timepicker--centered]=\"isDatetimepicker\">\n <ng-container *ngIf=\"isOneInputField; else multipleInputs\">\n <input\n [class.eui-timepicker__input--one-field]=\"isDatetimepicker\"\n euiInputText\n mask=\"{{ timeMask }}\"\n [leadZeroDateTime]=\"true\"\n placeholder=\"{{ timeMask }}\"\n aria-label=\"Time Input Field\"\n [formControl]=\"oneInputFormControl\"\n (focusout)=\"onFocusOut()\"\n [dropSpecialCharacters]=\"false\"\n [readOnly]=\"isreadOnly\">\n </ng-container>\n\n <ng-template #multipleInputs>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" class=\"eui-timepicker__chevron\" tabindex=\"-1\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Hours\" (click)=\"changeHours(1)\"></span>\n </a>\n <input #inputrefhours\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"HH\"\n [ngModel]=\"hours\"\n (keyup)=\"updateHours($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Hours\"\n (keydown.ArrowUp)=\"changeHours(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeHours(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Hours\" (click)=\"changeHours(-1)\"></span>\n </a>\n </div>\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Minutes\" (click)=\"changeMinutes(1)\"></span>\n </a>\n <input #inputrefmins\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"MM\"\n [ngModel]=\"mins\"\n (keyup)=\"updateMinutes($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Minutes\"\n (keydown.ArrowUp)=\"changeMinutes(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeMinutes(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Minutes\" (click)=\"changeMinutes(-1)\"></span>\n </a>\n </div>\n <ng-container *ngIf=\"hasSeconds\">\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Seconds\" (click)=\"changeSeconds(1)\"></span>\n </a>\n <input #inputrefsecs\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"SS\"\n [ngModel]=\"secs\"\n (keyup)=\"updateSeconds($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Seconds\"\n (keydown.ArrowUp)=\"changeSeconds(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeSeconds(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Seconds\" (click)=\"changeSeconds(-1)\"></span>\n </a>\n </div>\n </ng-container>\n </ng-template>\n</div>\n", styles: [".eui-timepicker{align-items:center;display:flex}.eui-timepicker--centered{justify-content:center}.eui-timepicker__input-container{width:calc(4 * var(--eui-base-spacing-m))}.eui-timepicker__input{text-align:center;width:100%}.eui-timepicker__input--one-field{width:calc(6 * var(--eui-base-spacing-m));margin-bottom:var(--eui-base-spacing-2xs)}.eui-timepicker__spacer{text-align:center;width:var(--eui-base-spacing-m)}.eui-timepicker__chevron:not([href]){color:var(--eui-base-color-grey-25);display:flex;justify-content:center;padding:var(--eui-base-spacing-xs);-webkit-text-decoration-line:none!important;text-decoration-line:none!important}.eui-timepicker__chevron:not([href]):hover{color:var(--eui-base-color-primary-100)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.EuiInputNumberComponent, selector: "input[euiInputNumber]:not([euiInputCheckBox])", inputs: ["min", "max", "leadingZero", "isInvalid", "fractionDigits", "digits", "fillFraction", "roundUp", "noFormat", "styleClass", "value"] }, { kind: "component", type: i4.EuiInputTextComponent, selector: "input[euiInputText]", inputs: ["class", "isInvalid"] }, { kind: "directive", type: i5.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "triggerOnMaskChange"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }], encapsulation: i0.ViewEncapsulation.None });
227
+ /** @nocollapse */ EuiTimepickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: EuiTimepickerComponent, selector: "eui-timepicker", inputs: { isreadOnly: "isreadOnly", isOneInputField: "isOneInputField", hasSeconds: "hasSeconds", timeMask: "timeMask" }, viewQueries: [{ propertyName: "inputHoursElement", first: true, predicate: ["inputrefhours"], descendants: true, read: ElementRef }, { propertyName: "inputMinsElement", first: true, predicate: ["inputrefmins"], descendants: true, read: ElementRef }, { propertyName: "inputSecsElement", first: true, predicate: ["inputrefsecs"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"eui-timepicker\" [class.eui-timepicker--centered]=\"isDatetimepicker\">\n <ng-container *ngIf=\"isOneInputField; else multipleInputs\">\n <input\n [class.eui-timepicker__input--one-field]=\"isDatetimepicker\"\n euiInputText\n mask=\"{{ timeMask }}\"\n [leadZeroDateTime]=\"true\"\n placeholder=\"{{ timeMask }}\"\n aria-label=\"Time Input Field\"\n [formControl]=\"oneInputFormControl\"\n (focusout)=\"onFocusOut()\"\n [dropSpecialCharacters]=\"false\"\n [readOnly]=\"isreadOnly\">\n </ng-container>\n\n <ng-template #multipleInputs>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" class=\"eui-timepicker__chevron\" tabindex=\"-1\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Hours\" (click)=\"changeHours(1)\"></span>\n </a>\n <input #inputrefhours\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"HH\"\n [ngModel]=\"hours\"\n (keyup)=\"updateHours($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Hours\"\n (keydown.ArrowUp)=\"changeHours(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeHours(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Hours\" (click)=\"changeHours(-1)\"></span>\n </a>\n </div>\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Minutes\" (click)=\"changeMinutes(1)\"></span>\n </a>\n <input #inputrefmins\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"MM\"\n [ngModel]=\"mins\"\n (keyup)=\"updateMinutes($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Minutes\"\n (keydown.ArrowUp)=\"changeMinutes(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeMinutes(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Minutes\" (click)=\"changeMinutes(-1)\"></span>\n </a>\n </div>\n <ng-container *ngIf=\"hasSeconds\">\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Seconds\" (click)=\"changeSeconds(1)\"></span>\n </a>\n <input #inputrefsecs\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"SS\"\n [ngModel]=\"secs\"\n (keyup)=\"updateSeconds($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Seconds\"\n (keydown.ArrowUp)=\"changeSeconds(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeSeconds(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Seconds\" (click)=\"changeSeconds(-1)\"></span>\n </a>\n </div>\n </ng-container>\n </ng-template>\n</div>\n", styles: [".eui-timepicker{align-items:center;display:flex}.eui-timepicker--centered{justify-content:center}.eui-timepicker__input-container{width:calc(4 * var(--eui-base-spacing-m))}.eui-timepicker__input{text-align:center;width:100%}.eui-timepicker__input--one-field{width:calc(6 * var(--eui-base-spacing-m));margin-bottom:var(--eui-base-spacing-2xs)}.eui-timepicker__spacer{text-align:center;width:var(--eui-base-spacing-m)}.eui-timepicker__chevron:not([href]){color:var(--eui-base-color-grey-25);display:flex;justify-content:center;padding:var(--eui-base-spacing-xs);text-decoration-line:none!important}.eui-timepicker__chevron:not([href]):hover{color:var(--eui-base-color-primary-100)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.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: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.EuiInputNumberComponent, selector: "input[euiInputNumber]:not([euiInputCheckBox])", inputs: ["min", "max", "leadingZero", "isInvalid", "fractionDigits", "digits", "fillFraction", "roundUp", "noFormat", "styleClass", "value"] }, { kind: "component", type: i4.EuiInputTextComponent, selector: "input[euiInputText]", inputs: ["class", "isInvalid"] }, { kind: "directive", type: i5.MaskDirective, selector: "input[mask], textarea[mask]", inputs: ["mask", "specialCharacters", "patterns", "prefix", "suffix", "thousandSeparator", "decimalMarker", "dropSpecialCharacters", "hiddenInput", "showMaskTyped", "placeHolderCharacter", "shownMaskExpression", "showTemplate", "clearIfNotMatch", "validation", "separatorLimit", "allowNegativeNumbers", "leadZeroDateTime", "triggerOnMaskChange"], outputs: ["maskFilled"], exportAs: ["mask", "ngxMask"] }], encapsulation: i0.ViewEncapsulation.None });
228
228
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: EuiTimepickerComponent, decorators: [{
229
229
  type: Component,
230
- args: [{ selector: 'eui-timepicker', encapsulation: ViewEncapsulation.None, template: "<div class=\"eui-timepicker\" [class.eui-timepicker--centered]=\"isDatetimepicker\">\n <ng-container *ngIf=\"isOneInputField; else multipleInputs\">\n <input\n [class.eui-timepicker__input--one-field]=\"isDatetimepicker\"\n euiInputText\n mask=\"{{ timeMask }}\"\n [leadZeroDateTime]=\"true\"\n placeholder=\"{{ timeMask }}\"\n aria-label=\"Time Input Field\"\n [formControl]=\"oneInputFormControl\"\n (focusout)=\"onFocusOut()\"\n [dropSpecialCharacters]=\"false\"\n [readOnly]=\"isreadOnly\">\n </ng-container>\n\n <ng-template #multipleInputs>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" class=\"eui-timepicker__chevron\" tabindex=\"-1\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Hours\" (click)=\"changeHours(1)\"></span>\n </a>\n <input #inputrefhours\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"HH\"\n [ngModel]=\"hours\"\n (keyup)=\"updateHours($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Hours\"\n (keydown.ArrowUp)=\"changeHours(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeHours(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Hours\" (click)=\"changeHours(-1)\"></span>\n </a>\n </div>\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Minutes\" (click)=\"changeMinutes(1)\"></span>\n </a>\n <input #inputrefmins\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"MM\"\n [ngModel]=\"mins\"\n (keyup)=\"updateMinutes($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Minutes\"\n (keydown.ArrowUp)=\"changeMinutes(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeMinutes(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Minutes\" (click)=\"changeMinutes(-1)\"></span>\n </a>\n </div>\n <ng-container *ngIf=\"hasSeconds\">\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Seconds\" (click)=\"changeSeconds(1)\"></span>\n </a>\n <input #inputrefsecs\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"SS\"\n [ngModel]=\"secs\"\n (keyup)=\"updateSeconds($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Seconds\"\n (keydown.ArrowUp)=\"changeSeconds(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeSeconds(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Seconds\" (click)=\"changeSeconds(-1)\"></span>\n </a>\n </div>\n </ng-container>\n </ng-template>\n</div>\n", styles: [".eui-timepicker{align-items:center;display:flex}.eui-timepicker--centered{justify-content:center}.eui-timepicker__input-container{width:calc(4 * var(--eui-base-spacing-m))}.eui-timepicker__input{text-align:center;width:100%}.eui-timepicker__input--one-field{width:calc(6 * var(--eui-base-spacing-m));margin-bottom:var(--eui-base-spacing-2xs)}.eui-timepicker__spacer{text-align:center;width:var(--eui-base-spacing-m)}.eui-timepicker__chevron:not([href]){color:var(--eui-base-color-grey-25);display:flex;justify-content:center;padding:var(--eui-base-spacing-xs);-webkit-text-decoration-line:none!important;text-decoration-line:none!important}.eui-timepicker__chevron:not([href]):hover{color:var(--eui-base-color-primary-100)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"] }]
230
+ args: [{ selector: 'eui-timepicker', encapsulation: ViewEncapsulation.None, template: "<div class=\"eui-timepicker\" [class.eui-timepicker--centered]=\"isDatetimepicker\">\n <ng-container *ngIf=\"isOneInputField; else multipleInputs\">\n <input\n [class.eui-timepicker__input--one-field]=\"isDatetimepicker\"\n euiInputText\n mask=\"{{ timeMask }}\"\n [leadZeroDateTime]=\"true\"\n placeholder=\"{{ timeMask }}\"\n aria-label=\"Time Input Field\"\n [formControl]=\"oneInputFormControl\"\n (focusout)=\"onFocusOut()\"\n [dropSpecialCharacters]=\"false\"\n [readOnly]=\"isreadOnly\">\n </ng-container>\n\n <ng-template #multipleInputs>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" class=\"eui-timepicker__chevron\" tabindex=\"-1\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Hours\" (click)=\"changeHours(1)\"></span>\n </a>\n <input #inputrefhours\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"HH\"\n [ngModel]=\"hours\"\n (keyup)=\"updateHours($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Hours\"\n (keydown.ArrowUp)=\"changeHours(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeHours(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Hours\" (click)=\"changeHours(-1)\"></span>\n </a>\n </div>\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Minutes\" (click)=\"changeMinutes(1)\"></span>\n </a>\n <input #inputrefmins\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"MM\"\n [ngModel]=\"mins\"\n (keyup)=\"updateMinutes($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Minutes\"\n (keydown.ArrowUp)=\"changeMinutes(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeMinutes(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Minutes\" (click)=\"changeMinutes(-1)\"></span>\n </a>\n </div>\n <ng-container *ngIf=\"hasSeconds\">\n <div class=\"eui-timepicker__spacer\">:</div>\n <div class=\"eui-timepicker__input-container\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-up\" role=\"img\" aria-label=\"Increase Seconds\" (click)=\"changeSeconds(1)\"></span>\n </a>\n <input #inputrefsecs\n euiInputNumber\n [leadingZero]=\"2\"\n [digits]=\"2\"\n [fractionDigits]=\"0\"\n class=\"eui-timepicker__input\"\n placeholder=\"SS\"\n [ngModel]=\"secs\"\n (keyup)=\"updateSeconds($event)\"\n [readOnly]=\"isreadOnly\"\n aria-label=\"Seconds\"\n (keydown.ArrowUp)=\"changeSeconds(1); $event.preventDefault()\"\n (keydown.ArrowDown)=\"changeSeconds(-1); $event.preventDefault()\">\n <a *ngIf=\"!isreadOnly\" tabindex=\"-1\" class=\"eui-timepicker__chevron\">\n <span class=\"eui-icon eui-icon-fw eui-icon-chevron-down\" role=\"img\" aria-label=\"Decrease Seconds\" (click)=\"changeSeconds(-1)\"></span>\n </a>\n </div>\n </ng-container>\n </ng-template>\n</div>\n", styles: [".eui-timepicker{align-items:center;display:flex}.eui-timepicker--centered{justify-content:center}.eui-timepicker__input-container{width:calc(4 * var(--eui-base-spacing-m))}.eui-timepicker__input{text-align:center;width:100%}.eui-timepicker__input--one-field{width:calc(6 * var(--eui-base-spacing-m));margin-bottom:var(--eui-base-spacing-2xs)}.eui-timepicker__spacer{text-align:center;width:var(--eui-base-spacing-m)}.eui-timepicker__chevron:not([href]){color:var(--eui-base-color-grey-25);display:flex;justify-content:center;padding:var(--eui-base-spacing-xs);text-decoration-line:none!important}.eui-timepicker__chevron:not([href]):hover{color:var(--eui-base-color-primary-100)}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}\n"] }]
231
231
  }], ctorParameters: function () { return [{ type: i6.EuiDateTimePickerConfig, decorators: [{
232
232
  type: Optional
233
233
  }, {
@@ -8,10 +8,10 @@ export class UxBlockDocumentComponent {
8
8
  }
9
9
  }
10
10
  /** @nocollapse */ UxBlockDocumentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UxBlockDocumentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
11
- /** @nocollapse */ UxBlockDocumentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UxBlockDocumentComponent, selector: "ux-block-document", inputs: { isBlocked: "isBlocked", e2eAttr: "e2eAttr" }, ngImport: i0, template: "<div class=\"ux-block-document\" [ngStyle]=\"{display: isBlocked ? 'block' : 'none'}\" attr.data-e2e=\"{{ e2eAttr }}\">\n <div class=\"ux-block-document-loading\"></div>\n</div>\n", styles: [".ux-block-document-loading{bottom:0;left:0;margin:auto;overflow:show;position:fixed;right:0;top:0;z-index:9999}.ux-block-document-loading:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%;transform:translateZ(0);display:inline-block;vertical-align:middle;-webkit-tap-highlight-color:rgba(0,0,0,0);animation-name:eui-anim--fadeIn;animation-duration:var(--eui-base-animation-duration-fast);-webkit-backface-visibility:visible;backface-visibility:visible;transition-timing-function:ease}@keyframes eui-anim--fadeIn{0%{offset:0;opacity:0;visibility:visible}to{offset:1;opacity:1}}.ux-block-document-loading:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.ux-block-document-loading:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);bottom:15px;content:\"\";display:block;height:150px;left:50%;margin:-100px 0 0 -100px;position:relative;right:15px;top:50%;width:150px}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], encapsulation: i0.ViewEncapsulation.None });
11
+ /** @nocollapse */ UxBlockDocumentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UxBlockDocumentComponent, selector: "ux-block-document", inputs: { isBlocked: "isBlocked", e2eAttr: "e2eAttr" }, ngImport: i0, template: "<div class=\"ux-block-document\" [ngStyle]=\"{display: isBlocked ? 'block' : 'none'}\" attr.data-e2e=\"{{ e2eAttr }}\">\n <div class=\"ux-block-document-loading\"></div>\n</div>\n", styles: [".ux-block-document-loading{inset:0;margin:auto;overflow:show;position:fixed;z-index:9999}.ux-block-document-loading:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%;transform:translateZ(0);display:inline-block;vertical-align:middle;-webkit-tap-highlight-color:rgba(0,0,0,0);animation-name:eui-anim--fadeIn;animation-duration:var(--eui-base-animation-duration-fast);-webkit-backface-visibility:visible;backface-visibility:visible;transition-timing-function:ease}@keyframes eui-anim--fadeIn{0%{offset:0;opacity:0;visibility:visible}to{offset:1;opacity:1}}.ux-block-document-loading:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.ux-block-document-loading:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);content:\"\";display:block;height:150px;inset:50% 15px 15px 50%;margin:-100px 0 0 -100px;position:relative;width:150px}\n"], dependencies: [{ kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], encapsulation: i0.ViewEncapsulation.None });
12
12
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UxBlockDocumentComponent, decorators: [{
13
13
  type: Component,
14
- args: [{ selector: 'ux-block-document', encapsulation: ViewEncapsulation.None, template: "<div class=\"ux-block-document\" [ngStyle]=\"{display: isBlocked ? 'block' : 'none'}\" attr.data-e2e=\"{{ e2eAttr }}\">\n <div class=\"ux-block-document-loading\"></div>\n</div>\n", styles: [".ux-block-document-loading{bottom:0;left:0;margin:auto;overflow:show;position:fixed;right:0;top:0;z-index:9999}.ux-block-document-loading:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%;transform:translateZ(0);display:inline-block;vertical-align:middle;-webkit-tap-highlight-color:rgba(0,0,0,0);animation-name:eui-anim--fadeIn;animation-duration:var(--eui-base-animation-duration-fast);-webkit-backface-visibility:visible;backface-visibility:visible;transition-timing-function:ease}@keyframes eui-anim--fadeIn{0%{offset:0;opacity:0;visibility:visible}to{offset:1;opacity:1}}.ux-block-document-loading:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.ux-block-document-loading:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);bottom:15px;content:\"\";display:block;height:150px;left:50%;margin:-100px 0 0 -100px;position:relative;right:15px;top:50%;width:150px}\n"] }]
14
+ args: [{ selector: 'ux-block-document', encapsulation: ViewEncapsulation.None, template: "<div class=\"ux-block-document\" [ngStyle]=\"{display: isBlocked ? 'block' : 'none'}\" attr.data-e2e=\"{{ e2eAttr }}\">\n <div class=\"ux-block-document-loading\"></div>\n</div>\n", styles: [".ux-block-document-loading{inset:0;margin:auto;overflow:show;position:fixed;z-index:9999}.ux-block-document-loading:before{background-color:#0006;content:\"\";display:block;height:100%;left:0;position:fixed;top:0;width:100%;transform:translateZ(0);display:inline-block;vertical-align:middle;-webkit-tap-highlight-color:rgba(0,0,0,0);animation-name:eui-anim--fadeIn;animation-duration:var(--eui-base-animation-duration-fast);-webkit-backface-visibility:visible;backface-visibility:visible;transition-timing-function:ease}@keyframes eui-anim--fadeIn{0%{offset:0;opacity:0;visibility:visible}to{offset:1;opacity:1}}.ux-block-document-loading:not(:required){background-color:transparent;border:0;color:transparent;font:0/0 a;text-shadow:none}.ux-block-document-loading:not(:required):after{animation:spin 1s linear infinite;border:10px solid transparent;border-radius:50%;border-top-color:var(--eui-base-color-primary-75);content:\"\";display:block;height:150px;inset:50% 15px 15px 50%;margin:-100px 0 0 -100px;position:relative;width:150px}\n"] }]
15
15
  }], propDecorators: { isBlocked: [{
16
16
  type: Input
17
17
  }], e2eAttr: [{
@@ -50,10 +50,10 @@ export class UxDynamicMessageBoxComponent {
50
50
  }
51
51
  }
52
52
  /** @nocollapse */ UxDynamicMessageBoxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UxDynamicMessageBoxComponent, deps: [{ token: i1.TranslateService }, { token: DYNAMIC_COMPONENT_CONFIG }, { token: i2.UxDynamicComponentService }], target: i0.ɵɵFactoryTarget.Component });
53
- /** @nocollapse */ UxDynamicMessageBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UxDynamicMessageBoxComponent, selector: "ux-dynamic-message-box", inputs: { e2eAttr: "e2eAttr" }, viewQueries: [{ propertyName: "uxMessageBoxBody", first: true, predicate: ["uxmessageboxbody"], descendants: true }], ngImport: i0, template: '<div #uxmessageboxbody id="{{config.id}}" attr.data-e2e="{{ e2eAttr }}"></div>', isInline: true, styles: [".ux-message-box .ux-modal__header{padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-message-box .ux-modal__header-title{font-size:var(--eui-base-font-size-xl)}.ux-message-box .ux-modal__body{overflow:hidden}.ux-message-box .ux-modal__footer{background-color:var(--eui-base-color-grey-5);padding:var(--eui-base-spacing-s)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:first-child){margin-left:var(--eui-base-spacing-2xs)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:last-child){margin-right:var(--eui-base-spacing-2xs)}.ux-message-box .ux-message-box__body-icon:before{color:var(--eui-base-color-white);content:\"\";font-family:eui-icons,sans-serif;font-size:calc(3rem / var(--eui-base-scale-factor));left:var(--eui-base-spacing-xl);line-height:1;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:3.5rem}.ux-message-box .ux-message-box__body-content{margin-left:6rem}.ux-message-box--warning .ux-modal__content{border:1px solid var(--eui-base-color-warning-100)}.ux-message-box--warning .ux-modal__header-title{color:var(--eui-base-color-warning-110)}.ux-message-box--warning .ux-message-box__body-icon:before{color:var(--eui-base-color-warning-100);content:\"\\f071\"}.ux-message-box--danger .ux-modal__content{border:1px solid var(--eui-base-color-danger-100)}.ux-message-box--danger .ux-modal__header-title{color:var(--eui-base-color-danger-110)}.ux-message-box--danger .ux-message-box__body-icon:before{color:var(--eui-base-color-danger-100);content:\"\\f00d\"}.ux-message-box--success .ux-modal__content{border:1px solid var(--eui-base-color-success-100)}.ux-message-box--success .ux-modal__header-title{color:var(--eui-base-color-success-110)}.ux-message-box--success .ux-message-box__body-icon:before{color:var(--eui-base-color-success-100);content:\"\\f00c\"}.ux-message-box--info .ux-modal__content{border:1px solid var(--eui-base-color-info-100)}.ux-message-box--info .ux-modal__header-title{color:var(--eui-base-color-info-110)}.ux-message-box--info .ux-message-box__body-icon:before{color:var(--eui-base-color-info-100);content:\"\\e90e\"}.ux-message-box--question .ux-modal__content{border:1px solid var(--eui-base-color-primary-100)}.ux-message-box--question .ux-modal__header-title{color:var(--eui-base-color-primary-110)}.ux-message-box--question .ux-message-box__body-icon:before{color:var(--eui-base-color-primary-100);content:\"\\f128\"}.ux-modal .ux-modal.ux-message-box .ux-modal__dialog{max-width:33%}.ux-modal .ux-modal.ux-message-box .ux-modal__content{height:12.5rem}.ux-modal{bottom:0;left:0;outline:0;overflow:hidden;position:fixed;right:0;top:0;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"], encapsulation: i0.ViewEncapsulation.None });
53
+ /** @nocollapse */ UxDynamicMessageBoxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UxDynamicMessageBoxComponent, selector: "ux-dynamic-message-box", inputs: { e2eAttr: "e2eAttr" }, viewQueries: [{ propertyName: "uxMessageBoxBody", first: true, predicate: ["uxmessageboxbody"], descendants: true }], ngImport: i0, template: '<div #uxmessageboxbody id="{{config.id}}" attr.data-e2e="{{ e2eAttr }}"></div>', isInline: true, styles: [".ux-message-box .ux-modal__header{padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-message-box .ux-modal__header-title{font-size:var(--eui-base-font-size-xl)}.ux-message-box .ux-modal__body{overflow:hidden}.ux-message-box .ux-modal__footer{background-color:var(--eui-base-color-grey-5);padding:var(--eui-base-spacing-s)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:first-child){margin-left:var(--eui-base-spacing-2xs)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:last-child){margin-right:var(--eui-base-spacing-2xs)}.ux-message-box .ux-message-box__body-icon:before{color:var(--eui-base-color-white);content:\"\";font-family:eui-icons,sans-serif;font-size:calc(3rem / var(--eui-base-scale-factor));left:var(--eui-base-spacing-xl);line-height:1;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:3.5rem}.ux-message-box .ux-message-box__body-content{margin-left:6rem}.ux-message-box--warning .ux-modal__content{border:1px solid var(--eui-base-color-warning-100)}.ux-message-box--warning .ux-modal__header-title{color:var(--eui-base-color-warning-110)}.ux-message-box--warning .ux-message-box__body-icon:before{color:var(--eui-base-color-warning-100);content:\"\\f071\"}.ux-message-box--danger .ux-modal__content{border:1px solid var(--eui-base-color-danger-100)}.ux-message-box--danger .ux-modal__header-title{color:var(--eui-base-color-danger-110)}.ux-message-box--danger .ux-message-box__body-icon:before{color:var(--eui-base-color-danger-100);content:\"\\f00d\"}.ux-message-box--success .ux-modal__content{border:1px solid var(--eui-base-color-success-100)}.ux-message-box--success .ux-modal__header-title{color:var(--eui-base-color-success-110)}.ux-message-box--success .ux-message-box__body-icon:before{color:var(--eui-base-color-success-100);content:\"\\f00c\"}.ux-message-box--info .ux-modal__content{border:1px solid var(--eui-base-color-info-100)}.ux-message-box--info .ux-modal__header-title{color:var(--eui-base-color-info-110)}.ux-message-box--info .ux-message-box__body-icon:before{color:var(--eui-base-color-info-100);content:\"\\e90e\"}.ux-message-box--question .ux-modal__content{border:1px solid var(--eui-base-color-primary-100)}.ux-message-box--question .ux-modal__header-title{color:var(--eui-base-color-primary-110)}.ux-message-box--question .ux-message-box__body-icon:before{color:var(--eui-base-color-primary-100);content:\"\\f128\"}.ux-modal .ux-modal.ux-message-box .ux-modal__dialog{max-width:33%}.ux-modal .ux-modal.ux-message-box .ux-modal__content{height:12.5rem}.ux-modal{inset:0;outline:0;overflow:hidden;position:fixed;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"], encapsulation: i0.ViewEncapsulation.None });
54
54
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UxDynamicMessageBoxComponent, decorators: [{
55
55
  type: Component,
56
- args: [{ selector: 'ux-dynamic-message-box', template: '<div #uxmessageboxbody id="{{config.id}}" attr.data-e2e="{{ e2eAttr }}"></div>', encapsulation: ViewEncapsulation.None, styles: [".ux-message-box .ux-modal__header{padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-message-box .ux-modal__header-title{font-size:var(--eui-base-font-size-xl)}.ux-message-box .ux-modal__body{overflow:hidden}.ux-message-box .ux-modal__footer{background-color:var(--eui-base-color-grey-5);padding:var(--eui-base-spacing-s)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:first-child){margin-left:var(--eui-base-spacing-2xs)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:last-child){margin-right:var(--eui-base-spacing-2xs)}.ux-message-box .ux-message-box__body-icon:before{color:var(--eui-base-color-white);content:\"\";font-family:eui-icons,sans-serif;font-size:calc(3rem / var(--eui-base-scale-factor));left:var(--eui-base-spacing-xl);line-height:1;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:3.5rem}.ux-message-box .ux-message-box__body-content{margin-left:6rem}.ux-message-box--warning .ux-modal__content{border:1px solid var(--eui-base-color-warning-100)}.ux-message-box--warning .ux-modal__header-title{color:var(--eui-base-color-warning-110)}.ux-message-box--warning .ux-message-box__body-icon:before{color:var(--eui-base-color-warning-100);content:\"\\f071\"}.ux-message-box--danger .ux-modal__content{border:1px solid var(--eui-base-color-danger-100)}.ux-message-box--danger .ux-modal__header-title{color:var(--eui-base-color-danger-110)}.ux-message-box--danger .ux-message-box__body-icon:before{color:var(--eui-base-color-danger-100);content:\"\\f00d\"}.ux-message-box--success .ux-modal__content{border:1px solid var(--eui-base-color-success-100)}.ux-message-box--success .ux-modal__header-title{color:var(--eui-base-color-success-110)}.ux-message-box--success .ux-message-box__body-icon:before{color:var(--eui-base-color-success-100);content:\"\\f00c\"}.ux-message-box--info .ux-modal__content{border:1px solid var(--eui-base-color-info-100)}.ux-message-box--info .ux-modal__header-title{color:var(--eui-base-color-info-110)}.ux-message-box--info .ux-message-box__body-icon:before{color:var(--eui-base-color-info-100);content:\"\\e90e\"}.ux-message-box--question .ux-modal__content{border:1px solid var(--eui-base-color-primary-100)}.ux-message-box--question .ux-modal__header-title{color:var(--eui-base-color-primary-110)}.ux-message-box--question .ux-message-box__body-icon:before{color:var(--eui-base-color-primary-100);content:\"\\f128\"}.ux-modal .ux-modal.ux-message-box .ux-modal__dialog{max-width:33%}.ux-modal .ux-modal.ux-message-box .ux-modal__content{height:12.5rem}.ux-modal{bottom:0;left:0;outline:0;overflow:hidden;position:fixed;right:0;top:0;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"] }]
56
+ args: [{ selector: 'ux-dynamic-message-box', template: '<div #uxmessageboxbody id="{{config.id}}" attr.data-e2e="{{ e2eAttr }}"></div>', encapsulation: ViewEncapsulation.None, styles: [".ux-message-box .ux-modal__header{padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-message-box .ux-modal__header-title{font-size:var(--eui-base-font-size-xl)}.ux-message-box .ux-modal__body{overflow:hidden}.ux-message-box .ux-modal__footer{background-color:var(--eui-base-color-grey-5);padding:var(--eui-base-spacing-s)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:first-child){margin-left:var(--eui-base-spacing-2xs)}.ux-message-box .ux-modal__footer>uxmodalfooter>:not(:last-child){margin-right:var(--eui-base-spacing-2xs)}.ux-message-box .ux-message-box__body-icon:before{color:var(--eui-base-color-white);content:\"\";font-family:eui-icons,sans-serif;font-size:calc(3rem / var(--eui-base-scale-factor));left:var(--eui-base-spacing-xl);line-height:1;position:absolute;text-align:center;top:50%;transform:translateY(-50%);width:3.5rem}.ux-message-box .ux-message-box__body-content{margin-left:6rem}.ux-message-box--warning .ux-modal__content{border:1px solid var(--eui-base-color-warning-100)}.ux-message-box--warning .ux-modal__header-title{color:var(--eui-base-color-warning-110)}.ux-message-box--warning .ux-message-box__body-icon:before{color:var(--eui-base-color-warning-100);content:\"\\f071\"}.ux-message-box--danger .ux-modal__content{border:1px solid var(--eui-base-color-danger-100)}.ux-message-box--danger .ux-modal__header-title{color:var(--eui-base-color-danger-110)}.ux-message-box--danger .ux-message-box__body-icon:before{color:var(--eui-base-color-danger-100);content:\"\\f00d\"}.ux-message-box--success .ux-modal__content{border:1px solid var(--eui-base-color-success-100)}.ux-message-box--success .ux-modal__header-title{color:var(--eui-base-color-success-110)}.ux-message-box--success .ux-message-box__body-icon:before{color:var(--eui-base-color-success-100);content:\"\\f00c\"}.ux-message-box--info .ux-modal__content{border:1px solid var(--eui-base-color-info-100)}.ux-message-box--info .ux-modal__header-title{color:var(--eui-base-color-info-110)}.ux-message-box--info .ux-message-box__body-icon:before{color:var(--eui-base-color-info-100);content:\"\\e90e\"}.ux-message-box--question .ux-modal__content{border:1px solid var(--eui-base-color-primary-100)}.ux-message-box--question .ux-modal__header-title{color:var(--eui-base-color-primary-110)}.ux-message-box--question .ux-message-box__body-icon:before{color:var(--eui-base-color-primary-100);content:\"\\f128\"}.ux-modal .ux-modal.ux-message-box .ux-modal__dialog{max-width:33%}.ux-modal .ux-modal.ux-message-box .ux-modal__content{height:12.5rem}.ux-modal{inset:0;outline:0;overflow:hidden;position:fixed;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"] }]
57
57
  }], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: i3.UxDynamicMessageBoxConfig, decorators: [{
58
58
  type: Inject,
59
59
  args: [DYNAMIC_COMPONENT_CONFIG]
@@ -138,10 +138,10 @@ export class UxDynamicModalComponent {
138
138
  }
139
139
  }
140
140
  /** @nocollapse */ UxDynamicModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UxDynamicModalComponent, deps: [{ token: DYNAMIC_COMPONENT_CONFIG }, { token: i1.UxDynamicComponentService }], target: i0.ɵɵFactoryTarget.Component });
141
- /** @nocollapse */ UxDynamicModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UxDynamicModalComponent, selector: "ux-dynamic-modal", inputs: { e2eAttr: "e2eAttr" }, queries: [{ propertyName: "customFooterContent", first: true, predicate: i0.forwardRef(function () { return UxDynamicModalFooterTagDirective; }), descendants: true }, { propertyName: "customHeaderContent", first: true, predicate: i0.forwardRef(function () { return UxDynamicModalHeaderTagDirective; }), descendants: true }, { propertyName: "customMessageBoxFooterContent", first: true, predicate: i0.forwardRef(function () { return UxDynamicMessageBoxFooterTagDirective; }), descendants: true }], viewQueries: [{ propertyName: "uxModalEl", first: true, predicate: ["modal"], descendants: true }, { propertyName: "uxModalBody", first: true, predicate: ["uxmodalbody"], descendants: true }, { propertyName: "vcCloseButton", first: true, predicate: ["closeButton"], descendants: true }], ngImport: i0, template: "<div id=\"{{config.id}}\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" #modal\n class=\"modal ux-modal {{ config.styleClass }} {{ stateClasses }} eui-u-anim\"\n role=\"dialog\"\n [class.eui-u-anim--slideInDown]=\"!config.isMessageBox\"\n [class.eui-u-anim--flipInY]=\"config.isMessageBox\"\n [class.ux-modal--full-height]=\"config.isSizeFullHeight\"\n [class.ux-modal--medium-height]=\"config.isSizeMediumHeight\"\n [class.ux-modal--draggable]=\"config.isDraggable\"\n [class.eui-u-anim--fast]=\"!config.isMessageBox\"\n [class.eui-u-anim--medium]=\"config.isMessageBox\" \n (keydown)=\"closeModalOnEscape($event)\"\n tabIndex=\"-1\"\n [style.display]=\"'block'\"\n attr.data-e2e=\"{{ e2eAttr }}\">\n\n <div class=\"modal-dialog ux-modal__dialog\" role=\"document\" [style.max-width]=\"config.customWidth\">\n <div class=\"modal-content ux-modal__content\" [class.ux-u-overflow-visible]=\"config.isOverflowVisible\" cdkDrag [cdkDragDisabled]=\"!config.isDraggable\">\n <div class=\"modal-header ux-modal__header\" cdkDragHandle>\n <ng-template [ngIf]=\"customHeaderContent\">\n <ng-content select=\"uxModalHeader\"></ng-content>\n </ng-template>\n <ng-template [ngIf]=\"!customHeaderContent\">\n <h5 class=\"modal-title ux-modal__header-title\">{{ config.titleLabel }}</h5>\n </ng-template>\n <button *ngIf=\"config.isShowCloseButton\" #closeButton\n type=\"button\"\n class=\"ux-modal__header-close\"\n data-dismiss=\"modal\"\n aria-label=\"Close\"\n (click)=\"close($event)\">\n <span class=\"eui-icon eui-icon-close-m\"></span>\n </button>\n </div>\n <div #uxmodalbody class=\"modal-body ux-modal__body {{ config.bodyStyleClass }}\"\n [class.ux-modal--no-padding]=\"config.hasNoBodyPadding\"\n [class.ux-u-overflow-visible]=\"config.isOverflowVisible\">\n <span [outerHTML]=\"config.content\" *ngIf=\"!config.isMessageBox\"></span>\n\n <div class=\"ux-message-box__body\" *ngIf=\"config.isMessageBox\">\n <div class=\"ux-message-box__body-icon\"></div>\n <div class=\"ux-message-box__body-content\">\n <span [outerHTML]=\"config.content\"></span>\n </div>\n </div>\n\n </div>\n\n <div *ngIf=\"config.isFooterVisible\" class=\"modal-footer ux-modal__footer {{ config.footerStyleClass }}\"\n [class.ux-modal__footer--custom-alignment]=\"config.customFooterContent\">\n\n <uxDynamicModalFooter *ngIf=\"config.customFooterContent && !config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicModalFooter>\n\n <uxDynamicMessageBoxFooter *ngIf=\"config.customFooterContent && config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicMessageBoxFooter>\n\n <ng-template [ngIf]=\"!config.customFooterContent\">\n <ng-template [ngIf]=\"!config.isMessageBox\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.dismissActionDisabled\"\n (click)=\"onDismissActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.dismissIconClass}}\"></span>\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.acceptActionDisabled\"\n (click)=\"onAcceptActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.acceptIconClass}}\"></span>\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n\n <ng-template [ngIf]=\"config.isMessageBox\">\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'confirmation'\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n (click)=\"onClick(false)\">\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n (click)=\"onClick(true)\">\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'ok'\">\n <button type=\"button\" class=\"ux-button ux-button--secondary\" (click)=\"onClick(true)\">OK</button>\n </ng-template>\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-backdrop show\" [style.display]=\"'block'\" (focus)=\"close($event)\"></div>\n", styles: [".ux-modal{bottom:0;left:0;outline:0;overflow:hidden;position:fixed;right:0;top:0;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(function () { return i3.UxButtonComponent; }), selector: "ux-button", inputs: ["type", "styleClass", "typeClass", "iconClass", "isOutline", "isSecondary", "isSmall", "isLarge", "isBlock", "isFlat", "isLineWrap", "tabindex", "ariaLabel", "isDisabled", "e2eAttr"] }, { kind: "component", type: i0.forwardRef(function () { return i4.UxLayoutHorizontalComponent; }), selector: "ux-layout-horizontal", inputs: ["styleClass", "e2eAttr"] }, { kind: "directive", type: i0.forwardRef(function () { return i4.UxLayoutHorizontalLeftTagDirective; }), selector: "uxLayoutHorizontalLeft" }, { kind: "directive", type: i0.forwardRef(function () { return i4.UxLayoutHorizontalRightTagDirective; }), selector: "uxLayoutHorizontalRight" }, { kind: "directive", type: i0.forwardRef(function () { return i5.CdkTrapFocus; }), selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i0.forwardRef(function () { return i6.CdkDrag; }), selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i0.forwardRef(function () { return i6.CdkDragHandle; }), selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: i0.forwardRef(function () { return UxDynamicModalFooterTagDirective; }), selector: "uxDynamicModalFooter" }, { kind: "directive", type: i0.forwardRef(function () { return UxDynamicMessageBoxFooterTagDirective; }), selector: "uxDynamicMessageBoxFooter" }], encapsulation: i0.ViewEncapsulation.None });
141
+ /** @nocollapse */ UxDynamicModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UxDynamicModalComponent, selector: "ux-dynamic-modal", inputs: { e2eAttr: "e2eAttr" }, queries: [{ propertyName: "customFooterContent", first: true, predicate: i0.forwardRef(function () { return UxDynamicModalFooterTagDirective; }), descendants: true }, { propertyName: "customHeaderContent", first: true, predicate: i0.forwardRef(function () { return UxDynamicModalHeaderTagDirective; }), descendants: true }, { propertyName: "customMessageBoxFooterContent", first: true, predicate: i0.forwardRef(function () { return UxDynamicMessageBoxFooterTagDirective; }), descendants: true }], viewQueries: [{ propertyName: "uxModalEl", first: true, predicate: ["modal"], descendants: true }, { propertyName: "uxModalBody", first: true, predicate: ["uxmodalbody"], descendants: true }, { propertyName: "vcCloseButton", first: true, predicate: ["closeButton"], descendants: true }], ngImport: i0, template: "<div id=\"{{config.id}}\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" #modal\n class=\"modal ux-modal {{ config.styleClass }} {{ stateClasses }} eui-u-anim\"\n role=\"dialog\"\n [class.eui-u-anim--slideInDown]=\"!config.isMessageBox\"\n [class.eui-u-anim--flipInY]=\"config.isMessageBox\"\n [class.ux-modal--full-height]=\"config.isSizeFullHeight\"\n [class.ux-modal--medium-height]=\"config.isSizeMediumHeight\"\n [class.ux-modal--draggable]=\"config.isDraggable\"\n [class.eui-u-anim--fast]=\"!config.isMessageBox\"\n [class.eui-u-anim--medium]=\"config.isMessageBox\" \n (keydown)=\"closeModalOnEscape($event)\"\n tabIndex=\"-1\"\n [style.display]=\"'block'\"\n attr.data-e2e=\"{{ e2eAttr }}\">\n\n <div class=\"modal-dialog ux-modal__dialog\" role=\"document\" [style.max-width]=\"config.customWidth\">\n <div class=\"modal-content ux-modal__content\" [class.ux-u-overflow-visible]=\"config.isOverflowVisible\" cdkDrag [cdkDragDisabled]=\"!config.isDraggable\">\n <div class=\"modal-header ux-modal__header\" cdkDragHandle>\n <ng-template [ngIf]=\"customHeaderContent\">\n <ng-content select=\"uxModalHeader\"></ng-content>\n </ng-template>\n <ng-template [ngIf]=\"!customHeaderContent\">\n <h5 class=\"modal-title ux-modal__header-title\">{{ config.titleLabel }}</h5>\n </ng-template>\n <button *ngIf=\"config.isShowCloseButton\" #closeButton\n type=\"button\"\n class=\"ux-modal__header-close\"\n data-dismiss=\"modal\"\n aria-label=\"Close\"\n (click)=\"close($event)\">\n <span class=\"eui-icon eui-icon-close-m\"></span>\n </button>\n </div>\n <div #uxmodalbody class=\"modal-body ux-modal__body {{ config.bodyStyleClass }}\"\n [class.ux-modal--no-padding]=\"config.hasNoBodyPadding\"\n [class.ux-u-overflow-visible]=\"config.isOverflowVisible\">\n <span [outerHTML]=\"config.content\" *ngIf=\"!config.isMessageBox\"></span>\n\n <div class=\"ux-message-box__body\" *ngIf=\"config.isMessageBox\">\n <div class=\"ux-message-box__body-icon\"></div>\n <div class=\"ux-message-box__body-content\">\n <span [outerHTML]=\"config.content\"></span>\n </div>\n </div>\n\n </div>\n\n <div *ngIf=\"config.isFooterVisible\" class=\"modal-footer ux-modal__footer {{ config.footerStyleClass }}\"\n [class.ux-modal__footer--custom-alignment]=\"config.customFooterContent\">\n\n <uxDynamicModalFooter *ngIf=\"config.customFooterContent && !config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicModalFooter>\n\n <uxDynamicMessageBoxFooter *ngIf=\"config.customFooterContent && config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicMessageBoxFooter>\n\n <ng-template [ngIf]=\"!config.customFooterContent\">\n <ng-template [ngIf]=\"!config.isMessageBox\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.dismissActionDisabled\"\n (click)=\"onDismissActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.dismissIconClass}}\"></span>\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.acceptActionDisabled\"\n (click)=\"onAcceptActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.acceptIconClass}}\"></span>\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n\n <ng-template [ngIf]=\"config.isMessageBox\">\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'confirmation'\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n (click)=\"onClick(false)\">\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n (click)=\"onClick(true)\">\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'ok'\">\n <button type=\"button\" class=\"ux-button ux-button--secondary\" (click)=\"onClick(true)\">OK</button>\n </ng-template>\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-backdrop show\" [style.display]=\"'block'\" (focus)=\"close($event)\"></div>\n", styles: [".ux-modal{inset:0;outline:0;overflow:hidden;position:fixed;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i0.forwardRef(function () { return i3.UxButtonComponent; }), selector: "ux-button", inputs: ["type", "styleClass", "typeClass", "iconClass", "isOutline", "isSecondary", "isSmall", "isLarge", "isBlock", "isFlat", "isLineWrap", "tabindex", "ariaLabel", "isDisabled", "e2eAttr"] }, { kind: "component", type: i0.forwardRef(function () { return i4.UxLayoutHorizontalComponent; }), selector: "ux-layout-horizontal", inputs: ["styleClass", "e2eAttr"] }, { kind: "directive", type: i0.forwardRef(function () { return i4.UxLayoutHorizontalLeftTagDirective; }), selector: "uxLayoutHorizontalLeft" }, { kind: "directive", type: i0.forwardRef(function () { return i4.UxLayoutHorizontalRightTagDirective; }), selector: "uxLayoutHorizontalRight" }, { kind: "directive", type: i0.forwardRef(function () { return i5.CdkTrapFocus; }), selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i0.forwardRef(function () { return i6.CdkDrag; }), selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i0.forwardRef(function () { return i6.CdkDragHandle; }), selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "directive", type: i0.forwardRef(function () { return UxDynamicModalFooterTagDirective; }), selector: "uxDynamicModalFooter" }, { kind: "directive", type: i0.forwardRef(function () { return UxDynamicMessageBoxFooterTagDirective; }), selector: "uxDynamicMessageBoxFooter" }], encapsulation: i0.ViewEncapsulation.None });
142
142
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UxDynamicModalComponent, decorators: [{
143
143
  type: Component,
144
- args: [{ selector: 'ux-dynamic-modal', encapsulation: ViewEncapsulation.None, template: "<div id=\"{{config.id}}\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" #modal\n class=\"modal ux-modal {{ config.styleClass }} {{ stateClasses }} eui-u-anim\"\n role=\"dialog\"\n [class.eui-u-anim--slideInDown]=\"!config.isMessageBox\"\n [class.eui-u-anim--flipInY]=\"config.isMessageBox\"\n [class.ux-modal--full-height]=\"config.isSizeFullHeight\"\n [class.ux-modal--medium-height]=\"config.isSizeMediumHeight\"\n [class.ux-modal--draggable]=\"config.isDraggable\"\n [class.eui-u-anim--fast]=\"!config.isMessageBox\"\n [class.eui-u-anim--medium]=\"config.isMessageBox\" \n (keydown)=\"closeModalOnEscape($event)\"\n tabIndex=\"-1\"\n [style.display]=\"'block'\"\n attr.data-e2e=\"{{ e2eAttr }}\">\n\n <div class=\"modal-dialog ux-modal__dialog\" role=\"document\" [style.max-width]=\"config.customWidth\">\n <div class=\"modal-content ux-modal__content\" [class.ux-u-overflow-visible]=\"config.isOverflowVisible\" cdkDrag [cdkDragDisabled]=\"!config.isDraggable\">\n <div class=\"modal-header ux-modal__header\" cdkDragHandle>\n <ng-template [ngIf]=\"customHeaderContent\">\n <ng-content select=\"uxModalHeader\"></ng-content>\n </ng-template>\n <ng-template [ngIf]=\"!customHeaderContent\">\n <h5 class=\"modal-title ux-modal__header-title\">{{ config.titleLabel }}</h5>\n </ng-template>\n <button *ngIf=\"config.isShowCloseButton\" #closeButton\n type=\"button\"\n class=\"ux-modal__header-close\"\n data-dismiss=\"modal\"\n aria-label=\"Close\"\n (click)=\"close($event)\">\n <span class=\"eui-icon eui-icon-close-m\"></span>\n </button>\n </div>\n <div #uxmodalbody class=\"modal-body ux-modal__body {{ config.bodyStyleClass }}\"\n [class.ux-modal--no-padding]=\"config.hasNoBodyPadding\"\n [class.ux-u-overflow-visible]=\"config.isOverflowVisible\">\n <span [outerHTML]=\"config.content\" *ngIf=\"!config.isMessageBox\"></span>\n\n <div class=\"ux-message-box__body\" *ngIf=\"config.isMessageBox\">\n <div class=\"ux-message-box__body-icon\"></div>\n <div class=\"ux-message-box__body-content\">\n <span [outerHTML]=\"config.content\"></span>\n </div>\n </div>\n\n </div>\n\n <div *ngIf=\"config.isFooterVisible\" class=\"modal-footer ux-modal__footer {{ config.footerStyleClass }}\"\n [class.ux-modal__footer--custom-alignment]=\"config.customFooterContent\">\n\n <uxDynamicModalFooter *ngIf=\"config.customFooterContent && !config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicModalFooter>\n\n <uxDynamicMessageBoxFooter *ngIf=\"config.customFooterContent && config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicMessageBoxFooter>\n\n <ng-template [ngIf]=\"!config.customFooterContent\">\n <ng-template [ngIf]=\"!config.isMessageBox\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.dismissActionDisabled\"\n (click)=\"onDismissActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.dismissIconClass}}\"></span>\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.acceptActionDisabled\"\n (click)=\"onAcceptActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.acceptIconClass}}\"></span>\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n\n <ng-template [ngIf]=\"config.isMessageBox\">\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'confirmation'\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n (click)=\"onClick(false)\">\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n (click)=\"onClick(true)\">\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'ok'\">\n <button type=\"button\" class=\"ux-button ux-button--secondary\" (click)=\"onClick(true)\">OK</button>\n </ng-template>\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-backdrop show\" [style.display]=\"'block'\" (focus)=\"close($event)\"></div>\n", styles: [".ux-modal{bottom:0;left:0;outline:0;overflow:hidden;position:fixed;right:0;top:0;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"] }]
144
+ args: [{ selector: 'ux-dynamic-modal', encapsulation: ViewEncapsulation.None, template: "<div id=\"{{config.id}}\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\" #modal\n class=\"modal ux-modal {{ config.styleClass }} {{ stateClasses }} eui-u-anim\"\n role=\"dialog\"\n [class.eui-u-anim--slideInDown]=\"!config.isMessageBox\"\n [class.eui-u-anim--flipInY]=\"config.isMessageBox\"\n [class.ux-modal--full-height]=\"config.isSizeFullHeight\"\n [class.ux-modal--medium-height]=\"config.isSizeMediumHeight\"\n [class.ux-modal--draggable]=\"config.isDraggable\"\n [class.eui-u-anim--fast]=\"!config.isMessageBox\"\n [class.eui-u-anim--medium]=\"config.isMessageBox\" \n (keydown)=\"closeModalOnEscape($event)\"\n tabIndex=\"-1\"\n [style.display]=\"'block'\"\n attr.data-e2e=\"{{ e2eAttr }}\">\n\n <div class=\"modal-dialog ux-modal__dialog\" role=\"document\" [style.max-width]=\"config.customWidth\">\n <div class=\"modal-content ux-modal__content\" [class.ux-u-overflow-visible]=\"config.isOverflowVisible\" cdkDrag [cdkDragDisabled]=\"!config.isDraggable\">\n <div class=\"modal-header ux-modal__header\" cdkDragHandle>\n <ng-template [ngIf]=\"customHeaderContent\">\n <ng-content select=\"uxModalHeader\"></ng-content>\n </ng-template>\n <ng-template [ngIf]=\"!customHeaderContent\">\n <h5 class=\"modal-title ux-modal__header-title\">{{ config.titleLabel }}</h5>\n </ng-template>\n <button *ngIf=\"config.isShowCloseButton\" #closeButton\n type=\"button\"\n class=\"ux-modal__header-close\"\n data-dismiss=\"modal\"\n aria-label=\"Close\"\n (click)=\"close($event)\">\n <span class=\"eui-icon eui-icon-close-m\"></span>\n </button>\n </div>\n <div #uxmodalbody class=\"modal-body ux-modal__body {{ config.bodyStyleClass }}\"\n [class.ux-modal--no-padding]=\"config.hasNoBodyPadding\"\n [class.ux-u-overflow-visible]=\"config.isOverflowVisible\">\n <span [outerHTML]=\"config.content\" *ngIf=\"!config.isMessageBox\"></span>\n\n <div class=\"ux-message-box__body\" *ngIf=\"config.isMessageBox\">\n <div class=\"ux-message-box__body-icon\"></div>\n <div class=\"ux-message-box__body-content\">\n <span [outerHTML]=\"config.content\"></span>\n </div>\n </div>\n\n </div>\n\n <div *ngIf=\"config.isFooterVisible\" class=\"modal-footer ux-modal__footer {{ config.footerStyleClass }}\"\n [class.ux-modal__footer--custom-alignment]=\"config.customFooterContent\">\n\n <uxDynamicModalFooter *ngIf=\"config.customFooterContent && !config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicModalFooter>\n\n <uxDynamicMessageBoxFooter *ngIf=\"config.customFooterContent && config.isMessageBox\">\n <ux-layout-horizontal>\n <uxLayoutHorizontalLeft *ngIf=\"config.customFooterContent.left\">\n <ux-button *ngFor=\"let button of config.customFooterContent.left.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalLeft>\n <uxLayoutHorizontalRight *ngIf=\"config.customFooterContent.right\">\n <ux-button *ngFor=\"let button of config.customFooterContent.right.buttons\"\n type=\"{{ button.type }}\"\n styleClass=\"{{ button.styleClass }}\"\n typeClass=\"{{ button.typeClass }}\"\n iconClass=\"{{ button.iconClass }}\"\n [isOutline]=\"button.isOutline\"\n [isSecondary]=\"button.isSecondary\"\n [isSmall]=\"button.isSmall\"\n [isLarge]=\"button.isLarge\"\n [isBlock]=\"button.isBlock\"\n [isFlat]=\"button.isFlat\"\n [isDisabled]=\"button.isDisabled\"\n (click)=\"customFooterButtonClick(button)\">{{ button.label }}</ux-button>\n </uxLayoutHorizontalRight>\n </ux-layout-horizontal>\n </uxDynamicMessageBoxFooter>\n\n <ng-template [ngIf]=\"!config.customFooterContent\">\n <ng-template [ngIf]=\"!config.isMessageBox\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.dismissActionDisabled\"\n (click)=\"onDismissActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.dismissIconClass}}\"></span>\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n [class.ux-button--with-label]=\"config.isShowActionIcons\"\n [disabled]=\"config.acceptActionDisabled\"\n (click)=\"onAcceptActionClick($event)\">\n <span *ngIf=\"config.isShowActionIcons\" class=\"ux-button__icon {{config.acceptIconClass}}\"></span>\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n\n <ng-template [ngIf]=\"config.isMessageBox\">\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'confirmation'\">\n <button type=\"button\"\n class=\"ux-button ux-button--secondary\"\n (click)=\"onClick(false)\">\n {{ config.dismissLabel }}\n </button>\n <button type=\"button\"\n class=\"ux-button ux-button--primary\"\n (click)=\"onClick(true)\">\n {{ config.acceptLabel }}\n </button>\n </ng-template>\n <ng-template [ngIf]=\"config.messageBoxType && config.messageBoxType === 'ok'\">\n <button type=\"button\" class=\"ux-button ux-button--secondary\" (click)=\"onClick(true)\">OK</button>\n </ng-template>\n </ng-template>\n </ng-template>\n </div>\n </div>\n </div>\n</div>\n<div class=\"modal-backdrop show\" [style.display]=\"'block'\" (focus)=\"close($event)\"></div>\n", styles: [".ux-modal{inset:0;outline:0;overflow:hidden;position:fixed;z-index:var(--eui-base-z-index-modal)}.ux-modal__content{background-clip:padding-box;background-color:var(--eui-base-color-white);border:1px solid var(--eui-base-color-grey-10);border-radius:var(--eui-base-border-radius);display:flex;flex-direction:column;max-height:100%;outline:0;overflow:auto;pointer-events:auto;position:relative;width:100%;box-shadow:var(--eui-base-shadow-24)}.ux-modal__dialog{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:1.75rem auto;margin-bottom:0;margin-top:0;max-width:50%;pointer-events:none;position:relative;width:auto}.ux-modal__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-10);border-top-left-radius:var(--eui-border-radius-base);border-top-right-radius:var(--eui-border-radius-base);display:flex;justify-content:space-between;min-height:calc(4 * var(--eui-base-spacing-m));padding:var(--eui-base-spacing-s) var(--eui-base-spacing-m)}.ux-modal--draggable .ux-modal__header{cursor:move}.ux-modal__header-title{font-size:var(--eui-base-font-size-xl);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700}.ux-modal__body{flex:1 1 auto;overflow:auto;padding:var(--eui-base-spacing-m);position:relative}.ux-modal__body.ux-modal--no-padding{padding:0}.ux-modal__footer{background-color:var(--eui-base-color-grey-5);border-top:1px solid var(--eui-base-color-grey-10);justify-content:flex-end;padding:var(--eui-base-spacing-s);align-items:center;display:flex;width:100%}.ux-modal__footer--custom-alignment{display:block}.ux-modal__footer button:not(:last-child){margin-right:var(--eui-base-spacing-xs)}.ux-modal__header-close{background-color:transparent;border:none;box-shadow:none;color:var(--eui-base-color-grey-25);font-size:var(--eui-base-font-size-2xl);margin-right:calc(-1 * var(--eui-base-spacing-s));outline:0;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-xs)}.ux-modal__header-close:hover{color:var(--eui-base-color-text)}.ux-modal__header-close:active,.ux-modal__header-close:focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:-2px;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}.ux-modal__header-close.disabled{display:none}uxmodalheader{display:flex;width:100%}.ux-modal--small .ux-modal__dialog{max-width:33%}.ux-modal--large .ux-modal__dialog{max-width:75%}.ux-modal--full-screen .ux-modal__content{height:98%;margin:1.5%;width:97%}.ux-modal--full-screen .ux-modal__dialog{height:100%;max-height:100%;max-width:100%;width:100%}.ux-modal--full-height{max-height:100%}.ux-modal--full-height .ux-modal__dialog{height:100%}.ux-modal--full-height .ux-modal__content{height:95%}.ux-modal--full-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.ux-modal--medium-height{max-height:100%}.ux-modal--medium-height .ux-modal__dialog{height:100%}.ux-modal--medium-height .ux-modal__content{height:50%}.ux-modal--medium-height .ux-modal__body{overflow-x:hidden;overflow-y:scroll}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-open .cdk-overlay-container{z-index:var(--eui-base-z-index-cdk-overlay-container)}.modal-backdrop{background-color:#00000080;height:100vh;left:0;opacity:0;position:fixed;top:0;transition:opacity .5s cubic-bezier(.25,.8,.25,1);width:100vw;z-index:var(--eui-base-z-index-modal-backdrop)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--eui-base-disabled-opacity)}@media screen and (max-width: 995px){.ux-modal__dialog,.ux-modal__dialog[style],.ux-modal--small .ux-modal__dialog,.ux-modal--big .ux-modal__dialog,.ux-modal--full-screen .ux-modal__dialog{margin-left:1.5%;max-width:100%!important;width:97%!important}}\n"] }]
145
145
  }], ctorParameters: function () { return [{ type: i7.UxDynamicModalConfig, decorators: [{
146
146
  type: Inject,
147
147
  args: [DYNAMIC_COMPONENT_CONFIG]
@@ -249,4 +249,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
249
249
  ],
250
250
  }]
251
251
  }] });
252
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXgtZHluYW1pYy1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9sZWdhY3kvdXgtZHluYW1pYy1tb2RhbC91eC1keW5hbWljLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xlZ2FjeS91eC1keW5hbWljLW1vZGFsL3V4LWR5bmFtaWMtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFFVCxZQUFZLEVBQ1osU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFHUixTQUFTLEVBQ1QsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUl4RCxPQUFPLEVBQUUsdUJBQXVCLEVBQWtCLE1BQU0sa0NBQWtDLENBQUM7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7OztBQVFuRSxNQUFNLE9BQU8sdUJBQXVCO0lBeUJoQyxZQUNzQyx3QkFBOEMsRUFDeEUseUJBQW9EO1FBQXBELDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUF6QnZELFlBQU8sR0FBVyxrQkFBa0IsQ0FBQztRQUV2QyxpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQWN6QixzQkFBaUIsR0FJckIsSUFB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RCxtQkFBbUI7QUFpQ25CLE1BQU0sT0FBTyw2QkFBNkI7OzhJQUE3Qiw2QkFBNkI7K0lBQTdCLDZCQUE2QixpQkE3TjdCLHVCQUF1QixFQThLdkIsOEJBQThCLEVBSTlCLGdDQUFnQyxFQUloQyxnQ0FBZ0MsRUFJaEMscUNBQXFDLGFBTTFDLFlBQVk7UUFDWix1QkFBdUI7UUFDdkIsd0JBQXdCO1FBQ3hCLFVBQVU7UUFDVixjQUFjLGFBcE1ULHVCQUF1QixFQThLdkIsOEJBQThCLEVBSTlCLGdDQUFnQyxFQUloQyxnQ0FBZ0MsRUFJaEMscUNBQXFDOytJQW1DckMsNkJBQTZCLGFBTjNCO1FBQ1AscUJBQXFCO1FBQ3JCLHlCQUF5QjtLQUM1QixZQTFCRyxZQUFZO1FBQ1osdUJBQXVCO1FBQ3ZCLHdCQUF3QjtRQUN4QixVQUFVO1FBQ1YsY0FBYzs0RkF5QlQsNkJBQTZCO2tCQS9CekMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsVUFBVTt3QkFDVixjQUFjO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsdUJBQXVCO3dCQUN2Qiw4QkFBOEI7d0JBQzlCLGdDQUFnQzt3QkFDaEMsZ0NBQWdDO3dCQUNoQyxxQ0FBcUM7cUJBQ3hDO29CQUNELFlBQVksRUFBRTt3QkFDVix1QkFBdUI7d0JBQ3ZCLDhCQUE4Qjt3QkFDOUIsZ0NBQWdDO3dCQUNoQyxnQ0FBZ0M7d0JBQ2hDLHFDQUFxQztxQkFDeEM7b0JBQ0QsZUFBZSxFQUFFO3dCQUNiLHVCQUF1QjtxQkFDMUI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQLHFCQUFxQjt3QkFDckIseUJBQXlCO3FCQUM1QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBDb21wb25lbnRSZWYsXG4gICAgQ29udGVudENoaWxkLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nTW9kdWxlLFxuICAgIE9uRGVzdHJveSxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEWU5BTUlDX0NPTVBPTkVOVF9DT05GSUcsIFV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2UgfSBmcm9tICdAZXVpL2NvcmUnO1xuaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuXG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIERvbVBvcnRhbE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVXhEeW5hbWljTW9kYWxDb25maWcgfSBmcm9tICcuL3V4LWR5bmFtaWMtbW9kYWwuY29uZmlnLm1vZGVsJztcbmltcG9ydCB7IFV4QnV0dG9uQ29tcG9uZW50TW9kdWxlLCBVeEJ1dHRvbkNvbmZpZyB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9sZWdhY3kvdXgtYnV0dG9uJztcbmltcG9ydCB7IFV4TGF5b3V0SG9yaXpvbnRhbE1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9sZWdhY3kvbGF5b3V0JztcbmltcG9ydCB7IFV4RHluYW1pY01vZGFsU2VydmljZSB9IGZyb20gJy4vdXgtZHluYW1pYy1tb2RhbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd1eC1keW5hbWljLW1vZGFsJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdXgtZHluYW1pYy1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgQElucHV0KCkgZTJlQXR0cjogc3RyaW5nID0gJ3V4LWR5bmFtaWMtbW9kYWwnO1xuXG4gICAgcHVibGljIHN0YXRlQ2xhc3Nlczogc3RyaW5nID0gJyc7XG4gICAgcHVibGljIGNvbmZpZzogVXhEeW5hbWljTW9kYWxDb25maWc7XG5cbiAgICBAVmlld0NoaWxkKCdtb2RhbCcpIHV4TW9kYWxFbDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gICAgQFZpZXdDaGlsZCgndXhtb2RhbGJvZHknKSB1eE1vZGFsQm9keTogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gICAgQFZpZXdDaGlsZCgnY2xvc2VCdXR0b24nKSB2Y0Nsb3NlQnV0dG9uOiBFbGVtZW50UmVmPEhUTUxCdXR0b25FbGVtZW50PjtcblxuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBVeER5bmFtaWNNb2RhbEZvb3RlclRhZ0RpcmVjdGl2ZSkpXG4gICAgY3VzdG9tRm9vdGVyQ29udGVudDogUXVlcnlMaXN0PFV4RHluYW1pY01vZGFsRm9vdGVyVGFnRGlyZWN0aXZlPjtcbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gVXhEeW5hbWljTW9kYWxIZWFkZXJUYWdEaXJlY3RpdmUpKVxuICAgIGN1c3RvbUhlYWRlckNvbnRlbnQ6IFF1ZXJ5TGlzdDxVeER5bmFtaWNNb2RhbEhlYWRlclRhZ0RpcmVjdGl2ZT47XG4gICAgQENvbnRlbnRDaGlsZChmb3J3YXJkUmVmKCgpID0+IFV4RHluYW1pY01lc3NhZ2VCb3hGb290ZXJUYWdEaXJlY3RpdmUpKVxuICAgIGN1c3RvbU1lc3NhZ2VCb3hGb290ZXJDb250ZW50OiBRdWVyeUxpc3Q8VXhEeW5hbWljTWVzc2FnZUJveEZvb3RlclRhZ0RpcmVjdGl2ZT47XG5cbiAgICBwcml2YXRlIGluamVjdGVkQ29tcG9uZW50OiB7XG4gICAgICAgIHBvcnRhbEhvc3Q6IERvbVBvcnRhbE91dGxldCxcbiAgICAgICAgcG9ydGFsOiBDb21wb25lbnRQb3J0YWw8YW55PixcbiAgICAgICAgcG9ydGFsQ29tcG9uZW50SW5zdGFuY2U6IENvbXBvbmVudFJlZjxhbnk+LFxuICAgIH0gPSBudWxsO1xuICAgIGFuaW1hdGlvbkVuZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRFlOQU1JQ19DT01QT05FTlRfQ09ORklHKSB1eER5bmFtaWNDb21wb25lbnRDb25maWc6IFV4RHluYW1pY01vZGFsQ29uZmlnLFxuICAgICAgICBwcml2YXRlIHV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2U6IFV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuY29uZmlnID0gdXhEeW5hbWljQ29tcG9uZW50Q29uZmlnO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblxuICAgICAgICBpZiAodGhpcy5jb25maWcuaXNTaXplU21hbGwpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDbGFzc2VzID0gJ3V4LW1vZGFsLS1zbWFsbCc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25maWcuaXNTaXplTGFyZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDbGFzc2VzID0gJ3V4LW1vZGFsLS1sYXJnZSc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25maWcuaXNTaXplRnVsbFNjcmVlbikge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZUNsYXNzZXMgPSAndXgtbW9kYWwtLWZ1bGwtc2NyZWVuJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5ib2R5SW5qZWN0ZWRDb21wb25lbnQgJiYgdGhpcy5jb25maWcuYm9keUluamVjdGVkQ29tcG9uZW50LmNvbXBvbmVudCkge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG5cbiAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuY29uZmlnLmJvZHlJbmplY3RlZENvbXBvbmVudC5jb25maWcsIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxIb3N0UmVmOiB0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLFxuICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsUmVmOiB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxDb21wb25lbnRJbnN0YW5jZVJlZjogdGhpcy5jb25maWdbJ3BvcnRhbENvbXBvbmVudEluc3RhbmNlUmVmJ10sXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRDb21wb25lbnQgPSB0aGlzLnV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2UuYWRkKHRoaXMuY29uZmlnLmJvZHlJbmplY3RlZENvbXBvbmVudC5jb21wb25lbnQsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXhNb2RhbEJvZHksXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLmJvZHlJbmplY3RlZENvbXBvbmVudC5jb25maWcpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaW5qZWN0ZWRDb21wb25lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLmNvbmZpZywge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxIb3N0UmVmOiB0aGlzLmluamVjdGVkQ29tcG9uZW50Wydwb3J0YWxIb3N0J10sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsUmVmOiB0aGlzLmluamVjdGVkQ29tcG9uZW50Wydwb3J0YWwnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxDb21wb25lbnRJbnN0YW5jZVJlZjogdGhpcy5pbmplY3RlZENvbXBvbmVudFsncG9ydGFsQ29tcG9uZW50SW5zdGFuY2UnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9LCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMudmNDbG9zZUJ1dHRvbikge1xuICAgICAgICAgICAgdGhpcy52Y0Nsb3NlQnV0dG9uLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG1vZGFsRWwgPSB0aGlzLnV4TW9kYWxFbC5uYXRpdmVFbGVtZW50O1xuICAgICAgICB0aGlzLmFuaW1hdGlvbkVuZFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudChtb2RhbEVsLCAnYW5pbWF0aW9uZW5kJykuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZy5vbkFuaW1hdGlvbkVuZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQW5pbWF0aW9uRW5kKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5hbmltYXRpb25FbmRTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uRW5kU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pbmplY3RlZENvbXBvbmVudCkge1xuICAgICAgICAgICAgdGhpcy51eER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLnJlbW92ZSh0aGlzLmluamVjdGVkQ29tcG9uZW50LnBvcnRhbEhvc3QpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xvc2UgbW9kYWwgZnVuY3Rpb25cbiAgICAgKi9cbiAgICBwdWJsaWMgY2xvc2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIHRoaXMuY29uZmlnLm9uQ2xvc2UodGhpcy5jb25maWdbJ3BvcnRhbEhvc3RSZWYnXSwgdGhpcy5jb25maWdbJ3BvcnRhbFJlZiddKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbG9zZSBtb2RhbCBvbiBlc2NhcGUoa2V5IDI3KSBwcmVzc1xuICAgICAqL1xuICAgIHB1YmxpYyBjbG9zZU1vZGFsT25Fc2NhcGUoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmlzQ2xvc2VNb2RhbE9uRXNjYXBlKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAgICAgICAgIGlmIChldmVudC5rZXlDb2RlID09PSAyNykge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlciBieSB0aGUgbWVzc2FnZS1ib3ggd2hlbiB1c2VyIGNsaWNrIG9uIE9LIGJ1dHRvblxuICAgICAqL1xuICAgIHB1YmxpYyBvbkFjY2VwdEFjdGlvbkNsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmlzSGFuZGxlQ2xvc2VPbkFjY2VwdCkge1xuICAgICAgICAgICAgdGhpcy5jb25maWcub25DbG9zZSh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLm9uQWNjZXB0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZy5vbkFjY2VwdCh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLm9uQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQ2xpY2sodHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmlnZ2VyIGJ5IHRoZSBtZXNzYWdlLWJveCB3aGVuIHVzZXIgY2xpY2sgb24gTk8gYnV0dG9uXG4gICAgICovXG4gICAgcHVibGljIG9uRGlzbWlzc0FjdGlvbkNsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmlzSGFuZGxlQ2xvc2VPbkRpc21pc3MpIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQ2xvc2UodGhpcy5jb25maWdbJ3BvcnRhbEhvc3RSZWYnXSwgdGhpcy5jb25maWdbJ3BvcnRhbFJlZiddKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5vbkRpc21pc3MpIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uRGlzbWlzcyh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLm9uQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQ2xpY2soZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlciBieSB0aGUgbWVzc2FnZS1ib3ggd2hlbiB1c2VyIGNsaWNrIG9uIGEgY3VzdG9tIGJ1dHRvbnMgZGVmaW5lZCBpbiB0aGUgY29uZmlnXG4gICAgICovXG4gICAgcHVibGljIGN1c3RvbUZvb3RlckJ1dHRvbkNsaWNrKGJ1dHRvbjogVXhCdXR0b25Db25maWcpIHtcbiAgICAgICAgYnV0dG9uLm9uQ2xpY2sodGhpcy5jb25maWdbJ3BvcnRhbEhvc3RSZWYnXSwgdGhpcy5jb25maWdbJ3BvcnRhbFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsQ29tcG9uZW50SW5zdGFuY2VSZWYnXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlciBieSB0aGUgbWVzc2FnZS1ib3ggd2hlbiB1c2VyIGNsaWNrIG9uIE5PIG9yIE9LIGJ1dHRvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgb25DbGljayh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5jb25maWcub25DbGljaykge1xuICAgICAgICAgICAgdGhpcy5jb25maWcub25DbGljayh2YWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25maWcub25DbG9zZSkge1xuICAgICAgICAgICAgdGhpcy5jb25maWcub25DbG9zZSh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBlc2xpbnQtZGlzYWJsZSAqL1xuQERpcmVjdGl2ZSh7c2VsZWN0b3I6ICd1eER5bmFtaWNNb2RhbEJvZHknfSlcbmV4cG9ydCBjbGFzcyBVeER5bmFtaWNNb2RhbEJvZHlUYWdEaXJlY3RpdmUge1xufVxuXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ3V4RHluYW1pY01vZGFsRm9vdGVyJ30pXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxGb290ZXJUYWdEaXJlY3RpdmUge1xufVxuXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ3V4RHluYW1pY01vZGFsSGVhZGVyJ30pXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxIZWFkZXJUYWdEaXJlY3RpdmUge1xufVxuXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ3V4RHluYW1pY01lc3NhZ2VCb3hGb290ZXInfSlcbmV4cG9ydCBjbGFzcyBVeER5bmFtaWNNZXNzYWdlQm94Rm9vdGVyVGFnRGlyZWN0aXZlIHtcbn1cbi8qIGVzbGludC1lbmFibGUgKi9cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgVXhCdXR0b25Db21wb25lbnRNb2R1bGUsXG4gICAgICAgIFV4TGF5b3V0SG9yaXpvbnRhbE1vZHVsZSxcbiAgICAgICAgQTExeU1vZHVsZSxcbiAgICAgICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFV4RHluYW1pY01vZGFsQ29tcG9uZW50LFxuICAgICAgICBVeER5bmFtaWNNb2RhbEJvZHlUYWdEaXJlY3RpdmUsXG4gICAgICAgIFV4RHluYW1pY01vZGFsRm9vdGVyVGFnRGlyZWN0aXZlLFxuICAgICAgICBVeER5bmFtaWNNb2RhbEhlYWRlclRhZ0RpcmVjdGl2ZSxcbiAgICAgICAgVXhEeW5hbWljTWVzc2FnZUJveEZvb3RlclRhZ0RpcmVjdGl2ZSxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBVeER5bmFtaWNNb2RhbENvbXBvbmVudCxcbiAgICAgICAgVXhEeW5hbWljTW9kYWxCb2R5VGFnRGlyZWN0aXZlLFxuICAgICAgICBVeER5bmFtaWNNb2RhbEZvb3RlclRhZ0RpcmVjdGl2ZSxcbiAgICAgICAgVXhEeW5hbWljTW9kYWxIZWFkZXJUYWdEaXJlY3RpdmUsXG4gICAgICAgIFV4RHluYW1pY01lc3NhZ2VCb3hGb290ZXJUYWdEaXJlY3RpdmUsXG4gICAgXSxcbiAgICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICAgICAgVXhEeW5hbWljTW9kYWxDb21wb25lbnQsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgVXhEeW5hbWljTW9kYWxTZXJ2aWNlLFxuICAgICAgICBVeER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgIF0sXG59KVxuXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxDb21wb25lbnRNb2R1bGUge1xufVxuIiwiPGRpdiBpZD1cInt7Y29uZmlnLmlkfX1cIiBjZGtUcmFwRm9jdXMgW2Nka1RyYXBGb2N1c0F1dG9DYXB0dXJlXT1cInRydWVcIiAjbW9kYWxcbiAgICAgY2xhc3M9XCJtb2RhbCB1eC1tb2RhbCB7eyBjb25maWcuc3R5bGVDbGFzcyB9fSB7eyBzdGF0ZUNsYXNzZXMgfX0gZXVpLXUtYW5pbVwiXG4gICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICBbY2xhc3MuZXVpLXUtYW5pbS0tc2xpZGVJbkRvd25dPVwiIWNvbmZpZy5pc01lc3NhZ2VCb3hcIlxuICAgICBbY2xhc3MuZXVpLXUtYW5pbS0tZmxpcEluWV09XCJjb25maWcuaXNNZXNzYWdlQm94XCJcbiAgICAgW2NsYXNzLnV4LW1vZGFsLS1mdWxsLWhlaWdodF09XCJjb25maWcuaXNTaXplRnVsbEhlaWdodFwiXG4gICAgIFtjbGFzcy51eC1tb2RhbC0tbWVkaXVtLWhlaWdodF09XCJjb25maWcuaXNTaXplTWVkaXVtSGVpZ2h0XCJcbiAgICAgW2NsYXNzLnV4LW1vZGFsLS1kcmFnZ2FibGVdPVwiY29uZmlnLmlzRHJhZ2dhYmxlXCJcbiAgICAgW2NsYXNzLmV1aS11LWFuaW0tLWZhc3RdPVwiIWNvbmZpZy5pc01lc3NhZ2VCb3hcIlxuICAgICBbY2xhc3MuZXVpLXUtYW5pbS0tbWVkaXVtXT1cImNvbmZpZy5pc01lc3NhZ2VCb3hcIiAgICAgXG4gICAgIChrZXlkb3duKT1cImNsb3NlTW9kYWxPbkVzY2FwZSgkZXZlbnQpXCJcbiAgICAgdGFiSW5kZXg9XCItMVwiXG4gICAgIFtzdHlsZS5kaXNwbGF5XT1cIidibG9jaydcIlxuICAgICBhdHRyLmRhdGEtZTJlPVwie3sgZTJlQXR0ciB9fVwiPlxuXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZyB1eC1tb2RhbF9fZGlhbG9nXCIgcm9sZT1cImRvY3VtZW50XCIgW3N0eWxlLm1heC13aWR0aF09XCJjb25maWcuY3VzdG9tV2lkdGhcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnQgdXgtbW9kYWxfX2NvbnRlbnRcIiBbY2xhc3MudXgtdS1vdmVyZmxvdy12aXNpYmxlXT1cImNvbmZpZy5pc092ZXJmbG93VmlzaWJsZVwiIGNka0RyYWcgW2Nka0RyYWdEaXNhYmxlZF09XCIhY29uZmlnLmlzRHJhZ2dhYmxlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyIHV4LW1vZGFsX19oZWFkZXJcIiBjZGtEcmFnSGFuZGxlPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjdXN0b21IZWFkZXJDb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInV4TW9kYWxIZWFkZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWN1c3RvbUhlYWRlckNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGUgdXgtbW9kYWxfX2hlYWRlci10aXRsZVwiPnt7IGNvbmZpZy50aXRsZUxhYmVsIH19PC9oNT5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb25maWcuaXNTaG93Q2xvc2VCdXR0b25cIiAjY2xvc2VCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1eC1tb2RhbF9faGVhZGVyLWNsb3NlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJDbG9zZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS1pY29uIGV1aS1pY29uLWNsb3NlLW1cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgI3V4bW9kYWxib2R5IGNsYXNzPVwibW9kYWwtYm9keSB1eC1tb2RhbF9fYm9keSB7eyBjb25maWcuYm9keVN0eWxlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICBbY2xhc3MudXgtbW9kYWwtLW5vLXBhZGRpbmddPVwiY29uZmlnLmhhc05vQm9keVBhZGRpbmdcIlxuICAgICAgICAgICAgICAgICBbY2xhc3MudXgtdS1vdmVyZmxvdy12aXNpYmxlXT1cImNvbmZpZy5pc092ZXJmbG93VmlzaWJsZVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIFtvdXRlckhUTUxdPVwiY29uZmlnLmNvbnRlbnRcIiAqbmdJZj1cIiFjb25maWcuaXNNZXNzYWdlQm94XCI+PC9zcGFuPlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInV4LW1lc3NhZ2UtYm94X19ib2R5XCIgKm5nSWY9XCJjb25maWcuaXNNZXNzYWdlQm94XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1tZXNzYWdlLWJveF9fYm9keS1pY29uXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1tZXNzYWdlLWJveF9fYm9keS1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbb3V0ZXJIVE1MXT1cImNvbmZpZy5jb250ZW50XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb25maWcuaXNGb290ZXJWaXNpYmxlXCIgY2xhc3M9XCJtb2RhbC1mb290ZXIgdXgtbW9kYWxfX2Zvb3RlciB7eyBjb25maWcuZm9vdGVyU3R5bGVDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzcy51eC1tb2RhbF9fZm9vdGVyLS1jdXN0b20tYWxpZ25tZW50XT1cImNvbmZpZy5jdXN0b21Gb290ZXJDb250ZW50XCI+XG5cbiAgICAgICAgICAgICAgICA8dXhEeW5hbWljTW9kYWxGb290ZXIgKm5nSWY9XCJjb25maWcuY3VzdG9tRm9vdGVyQ29udGVudCAmJiAhY29uZmlnLmlzTWVzc2FnZUJveFwiPlxuICAgICAgICAgICAgICAgICAgICA8dXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXhMYXlvdXRIb3Jpem9udGFsTGVmdCAqbmdJZj1cImNvbmZpZy5jdXN0b21Gb290ZXJDb250ZW50LmxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQubGVmdC5idXR0b25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ7eyBidXR0b24udHlwZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZUNsYXNzPVwie3sgYnV0dG9uLnN0eWxlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZUNsYXNzPVwie3sgYnV0dG9uLnR5cGVDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uQ2xhc3M9XCJ7eyBidXR0b24uaWNvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc091dGxpbmVdPVwiYnV0dG9uLmlzT3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTZWNvbmRhcnldPVwiYnV0dG9uLmlzU2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc1NtYWxsXT1cImJ1dHRvbi5pc1NtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0xhcmdlXT1cImJ1dHRvbi5pc0xhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0Jsb2NrXT1cImJ1dHRvbi5pc0Jsb2NrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0ZsYXRdPVwiYnV0dG9uLmlzRmxhdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNEaXNhYmxlZF09XCJidXR0b24uaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3VzdG9tRm9vdGVyQnV0dG9uQ2xpY2soYnV0dG9uKVwiPnt7IGJ1dHRvbi5sYWJlbCB9fTwvdXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC91eExheW91dEhvcml6b250YWxMZWZ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHV4TGF5b3V0SG9yaXpvbnRhbFJpZ2h0ICpuZ0lmPVwiY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHQuYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwie3sgYnV0dG9uLnR5cGUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInt7IGJ1dHRvbi5zdHlsZUNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVDbGFzcz1cInt7IGJ1dHRvbi50eXBlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbkNsYXNzPVwie3sgYnV0dG9uLmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNPdXRsaW5lXT1cImJ1dHRvbi5pc091dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzU2Vjb25kYXJ5XT1cImJ1dHRvbi5pc1NlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTbWFsbF09XCJidXR0b24uaXNTbWFsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNMYXJnZV09XCJidXR0b24uaXNMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNCbG9ja109XCJidXR0b24uaXNCbG9ja1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNGbGF0XT1cImJ1dHRvbi5pc0ZsYXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzRGlzYWJsZWRdPVwiYnV0dG9uLmlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImN1c3RvbUZvb3RlckJ1dHRvbkNsaWNrKGJ1dHRvbilcIj57eyBidXR0b24ubGFiZWwgfX08L3V4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdXhMYXlvdXRIb3Jpem9udGFsUmlnaHQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgPC91eER5bmFtaWNNb2RhbEZvb3Rlcj5cblxuICAgICAgICAgICAgICAgIDx1eER5bmFtaWNNZXNzYWdlQm94Rm9vdGVyICpuZ0lmPVwiY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQgJiYgY29uZmlnLmlzTWVzc2FnZUJveFwiPlxuICAgICAgICAgICAgICAgICAgICA8dXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXhMYXlvdXRIb3Jpem9udGFsTGVmdCAqbmdJZj1cImNvbmZpZy5jdXN0b21Gb290ZXJDb250ZW50LmxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQubGVmdC5idXR0b25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ7eyBidXR0b24udHlwZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZUNsYXNzPVwie3sgYnV0dG9uLnN0eWxlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZUNsYXNzPVwie3sgYnV0dG9uLnR5cGVDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uQ2xhc3M9XCJ7eyBidXR0b24uaWNvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc091dGxpbmVdPVwiYnV0dG9uLmlzT3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTZWNvbmRhcnldPVwiYnV0dG9uLmlzU2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc1NtYWxsXT1cImJ1dHRvbi5pc1NtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0xhcmdlXT1cImJ1dHRvbi5pc0xhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0Jsb2NrXT1cImJ1dHRvbi5pc0Jsb2NrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0ZsYXRdPVwiYnV0dG9uLmlzRmxhdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNEaXNhYmxlZF09XCJidXR0b24uaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3VzdG9tRm9vdGVyQnV0dG9uQ2xpY2soYnV0dG9uKVwiPnt7IGJ1dHRvbi5sYWJlbCB9fTwvdXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC91eExheW91dEhvcml6b250YWxMZWZ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHV4TGF5b3V0SG9yaXpvbnRhbFJpZ2h0ICpuZ0lmPVwiY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHQuYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwie3sgYnV0dG9uLnR5cGUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInt7IGJ1dHRvbi5zdHlsZUNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVDbGFzcz1cInt7IGJ1dHRvbi50eXBlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbkNsYXNzPVwie3sgYnV0dG9uLmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNPdXRsaW5lXT1cImJ1dHRvbi5pc091dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzU2Vjb25kYXJ5XT1cImJ1dHRvbi5pc1NlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTbWFsbF09XCJidXR0b24uaXNTbWFsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNMYXJnZV09XCJidXR0b24uaXNMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNCbG9ja109XCJidXR0b24uaXNCbG9ja1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNGbGF0XT1cImJ1dHRvbi5pc0ZsYXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzRGlzYWJsZWRdPVwiYnV0dG9uLmlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImN1c3RvbUZvb3RlckJ1dHRvbkNsaWNrKGJ1dHRvbilcIj57eyBidXR0b24ubGFiZWwgfX08L3V4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdXhMYXlvdXRIb3Jpem9udGFsUmlnaHQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgPC91eER5bmFtaWNNZXNzYWdlQm94Rm9vdGVyPlxuXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIiFjb25maWcuY3VzdG9tRm9vdGVyQ29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWNvbmZpZy5pc01lc3NhZ2VCb3hcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidXgtYnV0dG9uIHV4LWJ1dHRvbi0tc2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnV4LWJ1dHRvbi0td2l0aC1sYWJlbF09XCJjb25maWcuaXNTaG93QWN0aW9uSWNvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29uZmlnLmRpc21pc3NBY3Rpb25EaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkRpc21pc3NBY3Rpb25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb25maWcuaXNTaG93QWN0aW9uSWNvbnNcIiBjbGFzcz1cInV4LWJ1dHRvbl9faWNvbiB7e2NvbmZpZy5kaXNtaXNzSWNvbkNsYXNzfX1cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29uZmlnLmRpc21pc3NMYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInV4LWJ1dHRvbiB1eC1idXR0b24tLXByaW1hcnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudXgtYnV0dG9uLS13aXRoLWxhYmVsXT1cImNvbmZpZy5pc1Nob3dBY3Rpb25JY29uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb25maWcuYWNjZXB0QWN0aW9uRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25BY2NlcHRBY3Rpb25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb25maWcuaXNTaG93QWN0aW9uSWNvbnNcIiBjbGFzcz1cInV4LWJ1dHRvbl9faWNvbiB7e2NvbmZpZy5hY2NlcHRJY29uQ2xhc3N9fVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb25maWcuYWNjZXB0TGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb25maWcuaXNNZXNzYWdlQm94XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiY29uZmlnLm1lc3NhZ2VCb3hUeXBlICYmIGNvbmZpZy5tZXNzYWdlQm94VHlwZSA9PT0gJ2NvbmZpcm1hdGlvbidcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1eC1idXR0b24gdXgtYnV0dG9uLS1zZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2soZmFsc2UpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5kaXNtaXNzTGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1eC1idXR0b24gdXgtYnV0dG9uLS1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrKHRydWUpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5hY2NlcHRMYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb25maWcubWVzc2FnZUJveFR5cGUgJiYgY29uZmlnLm1lc3NhZ2VCb3hUeXBlID09PSAnb2snXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJ1eC1idXR0b24gdXgtYnV0dG9uLS1zZWNvbmRhcnlcIiAoY2xpY2spPVwib25DbGljayh0cnVlKVwiPk9LPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJtb2RhbC1iYWNrZHJvcCBzaG93XCIgW3N0eWxlLmRpc3BsYXldPVwiJ2Jsb2NrJ1wiIChmb2N1cyk9XCJjbG9zZSgkZXZlbnQpXCI+PC9kaXY+XG4iXX0=
252
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXgtZHluYW1pYy1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9sZWdhY3kvdXgtZHluYW1pYy1tb2RhbC91eC1keW5hbWljLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2xlZ2FjeS91eC1keW5hbWljLW1vZGFsL3V4LWR5bmFtaWMtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUdILFNBQVMsRUFFVCxZQUFZLEVBQ1osU0FBUyxFQUVULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFHUixTQUFTLEVBQ1QsaUJBQWlCLEdBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDaEYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUl4RCxPQUFPLEVBQUUsdUJBQXVCLEVBQWtCLE1BQU0sa0NBQWtDLENBQUM7QUFDM0YsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7Ozs7OztBQVFuRSxNQUFNLE9BQU8sdUJBQXVCO0lBeUJoQyxZQUNzQyx3QkFBOEMsRUFDeEUseUJBQW9EO1FBQXBELDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBMkI7UUF6QnZELFlBQU8sR0FBVyxrQkFBa0IsQ0FBQztRQUV2QyxpQkFBWSxHQUFXLEVBQUUsQ0FBQztRQWN6QixzQkFBaUIsR0FJckIsSUFB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RCxtQkFBbUI7QUFpQ25CLE1BQU0sT0FBTyw2QkFBNkI7OzhJQUE3Qiw2QkFBNkI7K0lBQTdCLDZCQUE2QixpQkE3TjdCLHVCQUF1QixFQThLdkIsOEJBQThCLEVBSTlCLGdDQUFnQyxFQUloQyxnQ0FBZ0MsRUFJaEMscUNBQXFDLGFBTTFDLFlBQVk7UUFDWix1QkFBdUI7UUFDdkIsd0JBQXdCO1FBQ3hCLFVBQVU7UUFDVixjQUFjLGFBcE1ULHVCQUF1QixFQThLdkIsOEJBQThCLEVBSTlCLGdDQUFnQyxFQUloQyxnQ0FBZ0MsRUFJaEMscUNBQXFDOytJQW1DckMsNkJBQTZCLGFBTjNCO1FBQ1AscUJBQXFCO1FBQ3JCLHlCQUF5QjtLQUM1QixZQTFCRyxZQUFZO1FBQ1osdUJBQXVCO1FBQ3ZCLHdCQUF3QjtRQUN4QixVQUFVO1FBQ1YsY0FBYzs0RkF5QlQsNkJBQTZCO2tCQS9CekMsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsWUFBWTt3QkFDWix1QkFBdUI7d0JBQ3ZCLHdCQUF3Qjt3QkFDeEIsVUFBVTt3QkFDVixjQUFjO3FCQUNqQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsdUJBQXVCO3dCQUN2Qiw4QkFBOEI7d0JBQzlCLGdDQUFnQzt3QkFDaEMsZ0NBQWdDO3dCQUNoQyxxQ0FBcUM7cUJBQ3hDO29CQUNELFlBQVksRUFBRTt3QkFDVix1QkFBdUI7d0JBQ3ZCLDhCQUE4Qjt3QkFDOUIsZ0NBQWdDO3dCQUNoQyxnQ0FBZ0M7d0JBQ2hDLHFDQUFxQztxQkFDeEM7b0JBQ0QsZUFBZSxFQUFFO3dCQUNiLHVCQUF1QjtxQkFDMUI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNQLHFCQUFxQjt3QkFDckIseUJBQXlCO3FCQUM1QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENvbXBvbmVudCxcbiAgICBDb21wb25lbnRSZWYsXG4gICAgQ29udGVudENoaWxkLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE5nTW9kdWxlLFxuICAgIE9uRGVzdHJveSxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEWU5BTUlDX0NPTVBPTkVOVF9DT05GSUcsIFV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2UgfSBmcm9tICdAZXVpL2NvcmUnO1xuaW1wb3J0IHsgQTExeU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEcmFnRHJvcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuXG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIERvbVBvcnRhbE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHsgVXhEeW5hbWljTW9kYWxDb25maWcgfSBmcm9tICcuL3V4LWR5bmFtaWMtbW9kYWwuY29uZmlnLm1vZGVsJztcbmltcG9ydCB7IFV4QnV0dG9uQ29tcG9uZW50TW9kdWxlLCBVeEJ1dHRvbkNvbmZpZyB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9sZWdhY3kvdXgtYnV0dG9uJztcbmltcG9ydCB7IFV4TGF5b3V0SG9yaXpvbnRhbE1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9sZWdhY3kvbGF5b3V0JztcbmltcG9ydCB7IFV4RHluYW1pY01vZGFsU2VydmljZSB9IGZyb20gJy4vdXgtZHluYW1pYy1tb2RhbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd1eC1keW5hbWljLW1vZGFsJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdXgtZHluYW1pYy1tb2RhbC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgQElucHV0KCkgZTJlQXR0cjogc3RyaW5nID0gJ3V4LWR5bmFtaWMtbW9kYWwnO1xuXG4gICAgcHVibGljIHN0YXRlQ2xhc3Nlczogc3RyaW5nID0gJyc7XG4gICAgcHVibGljIGNvbmZpZzogVXhEeW5hbWljTW9kYWxDb25maWc7XG5cbiAgICBAVmlld0NoaWxkKCdtb2RhbCcpIHV4TW9kYWxFbDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gICAgQFZpZXdDaGlsZCgndXhtb2RhbGJvZHknKSB1eE1vZGFsQm9keTogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG4gICAgQFZpZXdDaGlsZCgnY2xvc2VCdXR0b24nKSB2Y0Nsb3NlQnV0dG9uOiBFbGVtZW50UmVmPEhUTUxCdXR0b25FbGVtZW50PjtcblxuICAgIEBDb250ZW50Q2hpbGQoZm9yd2FyZFJlZigoKSA9PiBVeER5bmFtaWNNb2RhbEZvb3RlclRhZ0RpcmVjdGl2ZSkpXG4gICAgY3VzdG9tRm9vdGVyQ29udGVudDogUXVlcnlMaXN0PFV4RHluYW1pY01vZGFsRm9vdGVyVGFnRGlyZWN0aXZlPjtcbiAgICBAQ29udGVudENoaWxkKGZvcndhcmRSZWYoKCkgPT4gVXhEeW5hbWljTW9kYWxIZWFkZXJUYWdEaXJlY3RpdmUpKVxuICAgIGN1c3RvbUhlYWRlckNvbnRlbnQ6IFF1ZXJ5TGlzdDxVeER5bmFtaWNNb2RhbEhlYWRlclRhZ0RpcmVjdGl2ZT47XG4gICAgQENvbnRlbnRDaGlsZChmb3J3YXJkUmVmKCgpID0+IFV4RHluYW1pY01lc3NhZ2VCb3hGb290ZXJUYWdEaXJlY3RpdmUpKVxuICAgIGN1c3RvbU1lc3NhZ2VCb3hGb290ZXJDb250ZW50OiBRdWVyeUxpc3Q8VXhEeW5hbWljTWVzc2FnZUJveEZvb3RlclRhZ0RpcmVjdGl2ZT47XG5cbiAgICBwcml2YXRlIGluamVjdGVkQ29tcG9uZW50OiB7XG4gICAgICAgIHBvcnRhbEhvc3Q6IERvbVBvcnRhbE91dGxldCxcbiAgICAgICAgcG9ydGFsOiBDb21wb25lbnRQb3J0YWw8YW55PixcbiAgICAgICAgcG9ydGFsQ29tcG9uZW50SW5zdGFuY2U6IENvbXBvbmVudFJlZjxhbnk+LFxuICAgIH0gPSBudWxsO1xuICAgIGFuaW1hdGlvbkVuZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBJbmplY3QoRFlOQU1JQ19DT01QT05FTlRfQ09ORklHKSB1eER5bmFtaWNDb21wb25lbnRDb25maWc6IFV4RHluYW1pY01vZGFsQ29uZmlnLFxuICAgICAgICBwcml2YXRlIHV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2U6IFV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG4gICAgKSB7XG4gICAgICAgIHRoaXMuY29uZmlnID0gdXhEeW5hbWljQ29tcG9uZW50Q29uZmlnO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcblxuICAgICAgICBpZiAodGhpcy5jb25maWcuaXNTaXplU21hbGwpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDbGFzc2VzID0gJ3V4LW1vZGFsLS1zbWFsbCc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25maWcuaXNTaXplTGFyZ2UpIHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVDbGFzc2VzID0gJ3V4LW1vZGFsLS1sYXJnZSc7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25maWcuaXNTaXplRnVsbFNjcmVlbikge1xuICAgICAgICAgICAgdGhpcy5zdGF0ZUNsYXNzZXMgPSAndXgtbW9kYWwtLWZ1bGwtc2NyZWVuJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5ib2R5SW5qZWN0ZWRDb21wb25lbnQgJiYgdGhpcy5jb25maWcuYm9keUluamVjdGVkQ29tcG9uZW50LmNvbXBvbmVudCkge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG5cbiAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuY29uZmlnLmJvZHlJbmplY3RlZENvbXBvbmVudC5jb25maWcsIHtcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxIb3N0UmVmOiB0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLFxuICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsUmVmOiB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10sXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxDb21wb25lbnRJbnN0YW5jZVJlZjogdGhpcy5jb25maWdbJ3BvcnRhbENvbXBvbmVudEluc3RhbmNlUmVmJ10sXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIHRoaXMuaW5qZWN0ZWRDb21wb25lbnQgPSB0aGlzLnV4RHluYW1pY0NvbXBvbmVudFNlcnZpY2UuYWRkKHRoaXMuY29uZmlnLmJvZHlJbmplY3RlZENvbXBvbmVudC5jb21wb25lbnQsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXhNb2RhbEJvZHksXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLmJvZHlJbmplY3RlZENvbXBvbmVudC5jb25maWcpO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuaW5qZWN0ZWRDb21wb25lbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLmNvbmZpZywge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxIb3N0UmVmOiB0aGlzLmluamVjdGVkQ29tcG9uZW50Wydwb3J0YWxIb3N0J10sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsUmVmOiB0aGlzLmluamVjdGVkQ29tcG9uZW50Wydwb3J0YWwnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxDb21wb25lbnRJbnN0YW5jZVJlZjogdGhpcy5pbmplY3RlZENvbXBvbmVudFsncG9ydGFsQ29tcG9uZW50SW5zdGFuY2UnXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9LCAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICAgICAgaWYgKHRoaXMudmNDbG9zZUJ1dHRvbikge1xuICAgICAgICAgICAgdGhpcy52Y0Nsb3NlQnV0dG9uLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG1vZGFsRWwgPSB0aGlzLnV4TW9kYWxFbC5uYXRpdmVFbGVtZW50O1xuICAgICAgICB0aGlzLmFuaW1hdGlvbkVuZFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudChtb2RhbEVsLCAnYW5pbWF0aW9uZW5kJykuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZy5vbkFuaW1hdGlvbkVuZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQW5pbWF0aW9uRW5kKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBpZiAodGhpcy5hbmltYXRpb25FbmRTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuYW5pbWF0aW9uRW5kU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pbmplY3RlZENvbXBvbmVudCkge1xuICAgICAgICAgICAgdGhpcy51eER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLnJlbW92ZSh0aGlzLmluamVjdGVkQ29tcG9uZW50LnBvcnRhbEhvc3QpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xvc2UgbW9kYWwgZnVuY3Rpb25cbiAgICAgKi9cbiAgICBwdWJsaWMgY2xvc2UoZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIHRoaXMuY29uZmlnLm9uQ2xvc2UodGhpcy5jb25maWdbJ3BvcnRhbEhvc3RSZWYnXSwgdGhpcy5jb25maWdbJ3BvcnRhbFJlZiddKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDbG9zZSBtb2RhbCBvbiBlc2NhcGUoa2V5IDI3KSBwcmVzc1xuICAgICAqL1xuICAgIHB1YmxpYyBjbG9zZU1vZGFsT25Fc2NhcGUoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmlzQ2xvc2VNb2RhbE9uRXNjYXBlKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAgICAgICAgIGlmIChldmVudC5rZXlDb2RlID09PSAyNykge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlciBieSB0aGUgbWVzc2FnZS1ib3ggd2hlbiB1c2VyIGNsaWNrIG9uIE9LIGJ1dHRvblxuICAgICAqL1xuICAgIHB1YmxpYyBvbkFjY2VwdEFjdGlvbkNsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmlzSGFuZGxlQ2xvc2VPbkFjY2VwdCkge1xuICAgICAgICAgICAgdGhpcy5jb25maWcub25DbG9zZSh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLm9uQWNjZXB0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZy5vbkFjY2VwdCh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLm9uQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQ2xpY2sodHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUcmlnZ2VyIGJ5IHRoZSBtZXNzYWdlLWJveCB3aGVuIHVzZXIgY2xpY2sgb24gTk8gYnV0dG9uXG4gICAgICovXG4gICAgcHVibGljIG9uRGlzbWlzc0FjdGlvbkNsaWNrKGV2ZW50OiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLmlzSGFuZGxlQ2xvc2VPbkRpc21pc3MpIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQ2xvc2UodGhpcy5jb25maWdbJ3BvcnRhbEhvc3RSZWYnXSwgdGhpcy5jb25maWdbJ3BvcnRhbFJlZiddKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNvbmZpZy5vbkRpc21pc3MpIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uRGlzbWlzcyh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY29uZmlnLm9uQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuY29uZmlnLm9uQ2xpY2soZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlciBieSB0aGUgbWVzc2FnZS1ib3ggd2hlbiB1c2VyIGNsaWNrIG9uIGEgY3VzdG9tIGJ1dHRvbnMgZGVmaW5lZCBpbiB0aGUgY29uZmlnXG4gICAgICovXG4gICAgcHVibGljIGN1c3RvbUZvb3RlckJ1dHRvbkNsaWNrKGJ1dHRvbjogVXhCdXR0b25Db25maWcpIHtcbiAgICAgICAgYnV0dG9uLm9uQ2xpY2sodGhpcy5jb25maWdbJ3BvcnRhbEhvc3RSZWYnXSwgdGhpcy5jb25maWdbJ3BvcnRhbFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsQ29tcG9uZW50SW5zdGFuY2VSZWYnXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJpZ2dlciBieSB0aGUgbWVzc2FnZS1ib3ggd2hlbiB1c2VyIGNsaWNrIG9uIE5PIG9yIE9LIGJ1dHRvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgb25DbGljayh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5jb25maWcub25DbGljaykge1xuICAgICAgICAgICAgdGhpcy5jb25maWcub25DbGljayh2YWx1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5jb25maWcub25DbG9zZSkge1xuICAgICAgICAgICAgdGhpcy5jb25maWcub25DbG9zZSh0aGlzLmNvbmZpZ1sncG9ydGFsSG9zdFJlZiddLCB0aGlzLmNvbmZpZ1sncG9ydGFsUmVmJ10pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBlc2xpbnQtZGlzYWJsZSAqL1xuQERpcmVjdGl2ZSh7c2VsZWN0b3I6ICd1eER5bmFtaWNNb2RhbEJvZHknfSlcbmV4cG9ydCBjbGFzcyBVeER5bmFtaWNNb2RhbEJvZHlUYWdEaXJlY3RpdmUge1xufVxuXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ3V4RHluYW1pY01vZGFsRm9vdGVyJ30pXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxGb290ZXJUYWdEaXJlY3RpdmUge1xufVxuXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ3V4RHluYW1pY01vZGFsSGVhZGVyJ30pXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxIZWFkZXJUYWdEaXJlY3RpdmUge1xufVxuXG5ARGlyZWN0aXZlKHtzZWxlY3RvcjogJ3V4RHluYW1pY01lc3NhZ2VCb3hGb290ZXInfSlcbmV4cG9ydCBjbGFzcyBVeER5bmFtaWNNZXNzYWdlQm94Rm9vdGVyVGFnRGlyZWN0aXZlIHtcbn1cbi8qIGVzbGludC1lbmFibGUgKi9cblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgVXhCdXR0b25Db21wb25lbnRNb2R1bGUsXG4gICAgICAgIFV4TGF5b3V0SG9yaXpvbnRhbE1vZHVsZSxcbiAgICAgICAgQTExeU1vZHVsZSxcbiAgICAgICAgRHJhZ0Ryb3BNb2R1bGUsXG4gICAgXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIFV4RHluYW1pY01vZGFsQ29tcG9uZW50LFxuICAgICAgICBVeER5bmFtaWNNb2RhbEJvZHlUYWdEaXJlY3RpdmUsXG4gICAgICAgIFV4RHluYW1pY01vZGFsRm9vdGVyVGFnRGlyZWN0aXZlLFxuICAgICAgICBVeER5bmFtaWNNb2RhbEhlYWRlclRhZ0RpcmVjdGl2ZSxcbiAgICAgICAgVXhEeW5hbWljTWVzc2FnZUJveEZvb3RlclRhZ0RpcmVjdGl2ZSxcbiAgICBdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICBVeER5bmFtaWNNb2RhbENvbXBvbmVudCxcbiAgICAgICAgVXhEeW5hbWljTW9kYWxCb2R5VGFnRGlyZWN0aXZlLFxuICAgICAgICBVeER5bmFtaWNNb2RhbEZvb3RlclRhZ0RpcmVjdGl2ZSxcbiAgICAgICAgVXhEeW5hbWljTW9kYWxIZWFkZXJUYWdEaXJlY3RpdmUsXG4gICAgICAgIFV4RHluYW1pY01lc3NhZ2VCb3hGb290ZXJUYWdEaXJlY3RpdmUsXG4gICAgXSxcbiAgICBlbnRyeUNvbXBvbmVudHM6IFtcbiAgICAgICAgVXhEeW5hbWljTW9kYWxDb21wb25lbnQsXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgVXhEeW5hbWljTW9kYWxTZXJ2aWNlLFxuICAgICAgICBVeER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgIF0sXG59KVxuXG5leHBvcnQgY2xhc3MgVXhEeW5hbWljTW9kYWxDb21wb25lbnRNb2R1bGUge1xufVxuIiwiPGRpdiBpZD1cInt7Y29uZmlnLmlkfX1cIiBjZGtUcmFwRm9jdXMgW2Nka1RyYXBGb2N1c0F1dG9DYXB0dXJlXT1cInRydWVcIiAjbW9kYWxcbiAgICAgY2xhc3M9XCJtb2RhbCB1eC1tb2RhbCB7eyBjb25maWcuc3R5bGVDbGFzcyB9fSB7eyBzdGF0ZUNsYXNzZXMgfX0gZXVpLXUtYW5pbVwiXG4gICAgIHJvbGU9XCJkaWFsb2dcIlxuICAgICBbY2xhc3MuZXVpLXUtYW5pbS0tc2xpZGVJbkRvd25dPVwiIWNvbmZpZy5pc01lc3NhZ2VCb3hcIlxuICAgICBbY2xhc3MuZXVpLXUtYW5pbS0tZmxpcEluWV09XCJjb25maWcuaXNNZXNzYWdlQm94XCJcbiAgICAgW2NsYXNzLnV4LW1vZGFsLS1mdWxsLWhlaWdodF09XCJjb25maWcuaXNTaXplRnVsbEhlaWdodFwiXG4gICAgIFtjbGFzcy51eC1tb2RhbC0tbWVkaXVtLWhlaWdodF09XCJjb25maWcuaXNTaXplTWVkaXVtSGVpZ2h0XCJcbiAgICAgW2NsYXNzLnV4LW1vZGFsLS1kcmFnZ2FibGVdPVwiY29uZmlnLmlzRHJhZ2dhYmxlXCJcbiAgICAgW2NsYXNzLmV1aS11LWFuaW0tLWZhc3RdPVwiIWNvbmZpZy5pc01lc3NhZ2VCb3hcIlxuICAgICBbY2xhc3MuZXVpLXUtYW5pbS0tbWVkaXVtXT1cImNvbmZpZy5pc01lc3NhZ2VCb3hcIiAgICAgXG4gICAgIChrZXlkb3duKT1cImNsb3NlTW9kYWxPbkVzY2FwZSgkZXZlbnQpXCJcbiAgICAgdGFiSW5kZXg9XCItMVwiXG4gICAgIFtzdHlsZS5kaXNwbGF5XT1cIidibG9jaydcIlxuICAgICBhdHRyLmRhdGEtZTJlPVwie3sgZTJlQXR0ciB9fVwiPlxuXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWRpYWxvZyB1eC1tb2RhbF9fZGlhbG9nXCIgcm9sZT1cImRvY3VtZW50XCIgW3N0eWxlLm1heC13aWR0aF09XCJjb25maWcuY3VzdG9tV2lkdGhcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnQgdXgtbW9kYWxfX2NvbnRlbnRcIiBbY2xhc3MudXgtdS1vdmVyZmxvdy12aXNpYmxlXT1cImNvbmZpZy5pc092ZXJmbG93VmlzaWJsZVwiIGNka0RyYWcgW2Nka0RyYWdEaXNhYmxlZF09XCIhY29uZmlnLmlzRHJhZ2dhYmxlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyIHV4LW1vZGFsX19oZWFkZXJcIiBjZGtEcmFnSGFuZGxlPlxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjdXN0b21IZWFkZXJDb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInV4TW9kYWxIZWFkZXJcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWN1c3RvbUhlYWRlckNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGUgdXgtbW9kYWxfX2hlYWRlci10aXRsZVwiPnt7IGNvbmZpZy50aXRsZUxhYmVsIH19PC9oNT5cbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJjb25maWcuaXNTaG93Q2xvc2VCdXR0b25cIiAjY2xvc2VCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1eC1tb2RhbF9faGVhZGVyLWNsb3NlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJDbG9zZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS1pY29uIGV1aS1pY29uLWNsb3NlLW1cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgI3V4bW9kYWxib2R5IGNsYXNzPVwibW9kYWwtYm9keSB1eC1tb2RhbF9fYm9keSB7eyBjb25maWcuYm9keVN0eWxlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICBbY2xhc3MudXgtbW9kYWwtLW5vLXBhZGRpbmddPVwiY29uZmlnLmhhc05vQm9keVBhZGRpbmdcIlxuICAgICAgICAgICAgICAgICBbY2xhc3MudXgtdS1vdmVyZmxvdy12aXNpYmxlXT1cImNvbmZpZy5pc092ZXJmbG93VmlzaWJsZVwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIFtvdXRlckhUTUxdPVwiY29uZmlnLmNvbnRlbnRcIiAqbmdJZj1cIiFjb25maWcuaXNNZXNzYWdlQm94XCI+PC9zcGFuPlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInV4LW1lc3NhZ2UtYm94X19ib2R5XCIgKm5nSWY9XCJjb25maWcuaXNNZXNzYWdlQm94XCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1tZXNzYWdlLWJveF9fYm9keS1pY29uXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ1eC1tZXNzYWdlLWJveF9fYm9keS1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbb3V0ZXJIVE1MXT1cImNvbmZpZy5jb250ZW50XCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb25maWcuaXNGb290ZXJWaXNpYmxlXCIgY2xhc3M9XCJtb2RhbC1mb290ZXIgdXgtbW9kYWxfX2Zvb3RlciB7eyBjb25maWcuZm9vdGVyU3R5bGVDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgIFtjbGFzcy51eC1tb2RhbF9fZm9vdGVyLS1jdXN0b20tYWxpZ25tZW50XT1cImNvbmZpZy5jdXN0b21Gb290ZXJDb250ZW50XCI+XG5cbiAgICAgICAgICAgICAgICA8dXhEeW5hbWljTW9kYWxGb290ZXIgKm5nSWY9XCJjb25maWcuY3VzdG9tRm9vdGVyQ29udGVudCAmJiAhY29uZmlnLmlzTWVzc2FnZUJveFwiPlxuICAgICAgICAgICAgICAgICAgICA8dXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXhMYXlvdXRIb3Jpem9udGFsTGVmdCAqbmdJZj1cImNvbmZpZy5jdXN0b21Gb290ZXJDb250ZW50LmxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQubGVmdC5idXR0b25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ7eyBidXR0b24udHlwZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZUNsYXNzPVwie3sgYnV0dG9uLnN0eWxlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZUNsYXNzPVwie3sgYnV0dG9uLnR5cGVDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uQ2xhc3M9XCJ7eyBidXR0b24uaWNvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc091dGxpbmVdPVwiYnV0dG9uLmlzT3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTZWNvbmRhcnldPVwiYnV0dG9uLmlzU2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc1NtYWxsXT1cImJ1dHRvbi5pc1NtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0xhcmdlXT1cImJ1dHRvbi5pc0xhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0Jsb2NrXT1cImJ1dHRvbi5pc0Jsb2NrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0ZsYXRdPVwiYnV0dG9uLmlzRmxhdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNEaXNhYmxlZF09XCJidXR0b24uaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3VzdG9tRm9vdGVyQnV0dG9uQ2xpY2soYnV0dG9uKVwiPnt7IGJ1dHRvbi5sYWJlbCB9fTwvdXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC91eExheW91dEhvcml6b250YWxMZWZ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHV4TGF5b3V0SG9yaXpvbnRhbFJpZ2h0ICpuZ0lmPVwiY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHQuYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwie3sgYnV0dG9uLnR5cGUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInt7IGJ1dHRvbi5zdHlsZUNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVDbGFzcz1cInt7IGJ1dHRvbi50eXBlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbkNsYXNzPVwie3sgYnV0dG9uLmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNPdXRsaW5lXT1cImJ1dHRvbi5pc091dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzU2Vjb25kYXJ5XT1cImJ1dHRvbi5pc1NlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTbWFsbF09XCJidXR0b24uaXNTbWFsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNMYXJnZV09XCJidXR0b24uaXNMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNCbG9ja109XCJidXR0b24uaXNCbG9ja1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNGbGF0XT1cImJ1dHRvbi5pc0ZsYXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzRGlzYWJsZWRdPVwiYnV0dG9uLmlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImN1c3RvbUZvb3RlckJ1dHRvbkNsaWNrKGJ1dHRvbilcIj57eyBidXR0b24ubGFiZWwgfX08L3V4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdXhMYXlvdXRIb3Jpem9udGFsUmlnaHQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgPC91eER5bmFtaWNNb2RhbEZvb3Rlcj5cblxuICAgICAgICAgICAgICAgIDx1eER5bmFtaWNNZXNzYWdlQm94Rm9vdGVyICpuZ0lmPVwiY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQgJiYgY29uZmlnLmlzTWVzc2FnZUJveFwiPlxuICAgICAgICAgICAgICAgICAgICA8dXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8dXhMYXlvdXRIb3Jpem9udGFsTGVmdCAqbmdJZj1cImNvbmZpZy5jdXN0b21Gb290ZXJDb250ZW50LmxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQubGVmdC5idXR0b25zXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ7eyBidXR0b24udHlwZSB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZUNsYXNzPVwie3sgYnV0dG9uLnN0eWxlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZUNsYXNzPVwie3sgYnV0dG9uLnR5cGVDbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uQ2xhc3M9XCJ7eyBidXR0b24uaWNvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc091dGxpbmVdPVwiYnV0dG9uLmlzT3V0bGluZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTZWNvbmRhcnldPVwiYnV0dG9uLmlzU2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc1NtYWxsXT1cImJ1dHRvbi5pc1NtYWxsXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0xhcmdlXT1cImJ1dHRvbi5pc0xhcmdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0Jsb2NrXT1cImJ1dHRvbi5pc0Jsb2NrXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpc0ZsYXRdPVwiYnV0dG9uLmlzRmxhdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNEaXNhYmxlZF09XCJidXR0b24uaXNEaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY3VzdG9tRm9vdGVyQnV0dG9uQ2xpY2soYnV0dG9uKVwiPnt7IGJ1dHRvbi5sYWJlbCB9fTwvdXgtYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC91eExheW91dEhvcml6b250YWxMZWZ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgPHV4TGF5b3V0SG9yaXpvbnRhbFJpZ2h0ICpuZ0lmPVwiY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dXgtYnV0dG9uICpuZ0Zvcj1cImxldCBidXR0b24gb2YgY29uZmlnLmN1c3RvbUZvb3RlckNvbnRlbnQucmlnaHQuYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwie3sgYnV0dG9uLnR5cGUgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGVDbGFzcz1cInt7IGJ1dHRvbi5zdHlsZUNsYXNzIH19XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVDbGFzcz1cInt7IGJ1dHRvbi50eXBlQ2xhc3MgfX1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWNvbkNsYXNzPVwie3sgYnV0dG9uLmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNPdXRsaW5lXT1cImJ1dHRvbi5pc091dGxpbmVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzU2Vjb25kYXJ5XT1cImJ1dHRvbi5pc1NlY29uZGFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNTbWFsbF09XCJidXR0b24uaXNTbWFsbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNMYXJnZV09XCJidXR0b24uaXNMYXJnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNCbG9ja109XCJidXR0b24uaXNCbG9ja1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbaXNGbGF0XT1cImJ1dHRvbi5pc0ZsYXRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2lzRGlzYWJsZWRdPVwiYnV0dG9uLmlzRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImN1c3RvbUZvb3RlckJ1dHRvbkNsaWNrKGJ1dHRvbilcIj57eyBidXR0b24ubGFiZWwgfX08L3V4LWJ1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdXhMYXlvdXRIb3Jpem9udGFsUmlnaHQ+XG4gICAgICAgICAgICAgICAgICAgIDwvdXgtbGF5b3V0LWhvcml6b250YWw+XG4gICAgICAgICAgICAgICAgPC91eER5bmFtaWNNZXNzYWdlQm94Rm9vdGVyPlxuXG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cIiFjb25maWcuY3VzdG9tRm9vdGVyQ29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWNvbmZpZy5pc01lc3NhZ2VCb3hcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwidXgtYnV0dG9uIHV4LWJ1dHRvbi0tc2Vjb25kYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLnV4LWJ1dHRvbi0td2l0aC1sYWJlbF09XCJjb25maWcuaXNTaG93QWN0aW9uSWNvbnNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29uZmlnLmRpc21pc3NBY3Rpb25EaXNhYmxlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkRpc21pc3NBY3Rpb25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb25maWcuaXNTaG93QWN0aW9uSWNvbnNcIiBjbGFzcz1cInV4LWJ1dHRvbl9faWNvbiB7e2NvbmZpZy5kaXNtaXNzSWNvbkNsYXNzfX1cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgY29uZmlnLmRpc21pc3NMYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInV4LWJ1dHRvbiB1eC1idXR0b24tLXByaW1hcnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudXgtYnV0dG9uLS13aXRoLWxhYmVsXT1cImNvbmZpZy5pc1Nob3dBY3Rpb25JY29uc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb25maWcuYWNjZXB0QWN0aW9uRGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25BY2NlcHRBY3Rpb25DbGljaygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjb25maWcuaXNTaG93QWN0aW9uSWNvbnNcIiBjbGFzcz1cInV4LWJ1dHRvbl9faWNvbiB7e2NvbmZpZy5hY2NlcHRJY29uQ2xhc3N9fVwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBjb25maWcuYWNjZXB0TGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb25maWcuaXNNZXNzYWdlQm94XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiY29uZmlnLm1lc3NhZ2VCb3hUeXBlICYmIGNvbmZpZy5tZXNzYWdlQm94VHlwZSA9PT0gJ2NvbmZpcm1hdGlvbidcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1eC1idXR0b24gdXgtYnV0dG9uLS1zZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2xpY2soZmFsc2UpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5kaXNtaXNzTGFiZWwgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ1eC1idXR0b24gdXgtYnV0dG9uLS1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvbkNsaWNrKHRydWUpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGNvbmZpZy5hY2NlcHRMYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdJZl09XCJjb25maWcubWVzc2FnZUJveFR5cGUgJiYgY29uZmlnLm1lc3NhZ2VCb3hUeXBlID09PSAnb2snXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJ1eC1idXR0b24gdXgtYnV0dG9uLS1zZWNvbmRhcnlcIiAoY2xpY2spPVwib25DbGljayh0cnVlKVwiPk9LPC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJtb2RhbC1iYWNrZHJvcCBzaG93XCIgW3N0eWxlLmRpc3BsYXldPVwiJ2Jsb2NrJ1wiIChmb2N1cyk9XCJjbG9zZSgkZXZlbnQpXCI+PC9kaXY+XG4iXX0=