@energycap/components 0.39.27-ECAP-26376-Add-Sub-Accounts-Dialog.20241001-1406 → 0.39.27-ECAP-26661-delete-site-updates-product-aware-confirm.20241001-1521
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.
- package/esm2020/lib/controls/item-picker/item-picker.component.mjs +4 -8
- package/esm2020/lib/controls/textbox/textbox.component.mjs +3 -3
- package/esm2020/lib/display/confirm/confirm.component.mjs +37 -4
- package/esm2020/lib/display/table/searchable-table.component.mjs +3 -7
- package/esm2020/lib/display/table/table-pagination.component.mjs +3 -8
- package/fesm2015/energycap-components.mjs +43 -24
- package/fesm2015/energycap-components.mjs.map +1 -1
- package/fesm2020/energycap-components.mjs +41 -24
- package/fesm2020/energycap-components.mjs.map +1 -1
- package/lib/controls/item-picker/item-picker.component.d.ts +0 -2
- package/lib/display/confirm/confirm.component.d.ts +19 -2
- package/lib/display/table/searchable-table.component.d.ts +1 -3
- package/lib/display/table/table-pagination.component.d.ts +1 -3
- package/package.json +1 -1
@@ -128,10 +128,10 @@ export class TextboxComponent extends FormControlBase {
|
|
128
128
|
}
|
129
129
|
}
|
130
130
|
TextboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TextboxComponent, deps: [{ token: i1.ValidationMessageService }, { token: i2.FormGroupHelper }, { token: i3.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
131
|
-
TextboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TextboxComponent, selector: "ec-textbox", inputs: { autocomplete: "autocomplete", type: "type", placeholder: "placeholder", maxlength: "maxlength", minlength: "minlength", rows: "rows", selectOnAutofocus: "selectOnAutofocus", upperCase: "upperCase" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["textboxInput"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"control control-label-{{labelPosition}}\"\r\n [ngClass]=\"{'is-readonly': readonly}\">\r\n\r\n <label *ngIf=\"label\">\r\n <span>{{label | translate}}</span>\r\n <span *ngIf=\"validationErrors.length > 0 && formModel.touched && formModel.invalid\"> {{validationErrors |\r\n translate}}</span>\r\n <ec-help-popover id=\"{{id}}_helpPopover\"\r\n *ngIf=\"helpPopover\"\r\n class=\"d-inline-block my-n3 mx-n1\"\r\n text=\"{{helpPopover | translate}}\"\r\n contentPosition=\"{{helpPopoverPosition}}\">\r\n </ec-help-popover>\r\n </label>\r\n\r\n <div class=\"input-wrapper control-input\">\r\n <input *ngIf=\"type !== 'multi_line'\"\r\n #textboxInput\r\n email=\"{{type === 'email' ? true : false}}\"\r\n pattern=\"{{validationPattern}}\"\r\n type=\"{{type}}\"\r\n tabindex=\"{{tabindex}}\"\r\n title=\"{{tooltip}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.autocomplete]=\"autocomplete\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': !formModel?.value, 'is-pending': pending, 'is-uppercase': upperCase}\"\r\n (focusout)=\"focusOutEvent()\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n\r\n <textarea *ngIf=\"type === 'multi_line'\"\r\n [attr.rows]=\"rows\"\r\n #textboxInput\r\n tabindex=\"{{tabindex}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': formModel?.value === '', 'is-pending': pending}\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n </textarea>\r\n\r\n <i class=\"ec-icon icon-required\"></i>\r\n <i class=\"ec-icon icon-invalid\"></i>\r\n <i class=\"ec-icon icon-loading\"></i>\r\n </div>\r\n</div>", styles: [":host{color:var(--ec-form-control-color);font-size:var(--ec-form-control-font-size);display:block;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{width:100%;display:flex;flex-direction:column}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-top:0;margin-bottom:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select,:host .control.is-readonly textarea{border-color:var(--ec-form-control-border-color-readonly);background-color:var(--ec-form-control-background-color-readonly);background-clip:border-box;background-image:none;color:var(--ec-form-control-color-readonly);opacity:1;-webkit-user-select:none;user-select:none;pointer-events:none;overflow:hidden;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:focus,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:focus{border-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-required,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-required{display:none}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:var(--ec-form-control-border-color-invalid)}:host .textbox-group{display:flex;position:relative}:host textarea:focus,:host input:focus,:host select:focus{outline:none}:host label{color:var(--ec-form-control-label-color, var(--ec-color-secondary-dark));display:block;font-size:var(--ec-font-size-label);line-height:1;margin:calc(var(--ec-font-size-label) / 2) 0}:host input{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:2rem}:host input::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host input::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input~.icon-required,:host input~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host input:required.is-empty{background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host input.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched~.icon-required{display:none}:host input.is-pending.ng-valid,:host input.is-pending.ng-invalid,:host input.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem}:host input.is-pending.ng-valid~.icon-loading,:host input.is-pending.ng-invalid~.icon-loading,:host input.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.is-pending.ng-valid~.icon-required,:host input.is-pending.ng-valid~.icon-invalid,:host input.is-pending.ng-invalid~.icon-required,:host input.is-pending.ng-invalid~.icon-invalid,:host input.is-pending.ng-pending~.icon-required,:host input.is-pending.ng-pending~.icon-invalid{display:none}:host input:focus,:host input:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host input:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host input:disabled:required,:host input:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host input:disabled:required+.icon-required,:host input:disabled:required.is-empty+.icon-required{display:none}:host input.is-uppercase:not(.is-empty){text-transform:uppercase}:host textarea{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:auto;resize:none;display:block}:host textarea::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host textarea::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea~.icon-required,:host textarea~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host textarea:required.is-empty{background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host textarea.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched~.icon-required{display:none}:host textarea.is-pending.ng-valid,:host textarea.is-pending.ng-invalid,:host textarea.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem}:host textarea.is-pending.ng-valid~.icon-loading,:host textarea.is-pending.ng-invalid~.icon-loading,:host textarea.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.is-pending.ng-valid~.icon-required,:host textarea.is-pending.ng-valid~.icon-invalid,:host textarea.is-pending.ng-invalid~.icon-required,:host textarea.is-pending.ng-invalid~.icon-invalid,:host textarea.is-pending.ng-pending~.icon-required,:host textarea.is-pending.ng-pending~.icon-invalid{display:none}:host textarea:focus,:host textarea:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host textarea:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host textarea:disabled:required,:host textarea:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host textarea:disabled:required+.icon-required,:host textarea:disabled:required.is-empty+.icon-required{display:none}:host textarea.is-uppercase:not(.is-empty){text-transform:uppercase}.input-wrapper{position:relative}.input-wrapper>.ec-icon{display:none}:host(.textbox-group-input:not(:last-child)){flex:1 1 0%;width:1px}:host(.textbox-group-input:not(:last-child)) .control{margin-bottom:0}:host(.textbox-group-input:not(:last-child)) .control.is-readonly input{border-right-width:1px}:host(.textbox-group-input:not(:last-child)) input{border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0}:host(.textbox-group-input:not(:last-child)) input:focus{position:relative;z-index:1;border-right-width:1px}:host(.text-truncate) input{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.is-monospace) input,:host(.is-monospace) textarea,:host-context(.is-monospace) input,:host-context(.is-monospace) textarea{font-family:var(--ec-font-family-monospace)}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i5.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i6.HelpPopoverComponent, selector: "ec-help-popover", inputs: ["id", "text", "contentPosition", "maxWidth"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
|
131
|
+
TextboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TextboxComponent, selector: "ec-textbox", inputs: { autocomplete: "autocomplete", type: "type", placeholder: "placeholder", maxlength: "maxlength", minlength: "minlength", rows: "rows", selectOnAutofocus: "selectOnAutofocus", upperCase: "upperCase" }, viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["textboxInput"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div class=\"control control-label-{{labelPosition}}\"\r\n [ngClass]=\"{'is-readonly': readonly}\">\r\n\r\n <label *ngIf=\"label\">\r\n <span [innerHTML]=\"label | translate\"></span>\r\n <span *ngIf=\"validationErrors.length > 0 && formModel.touched && formModel.invalid\"> {{validationErrors |\r\n translate}}</span>\r\n <ec-help-popover id=\"{{id}}_helpPopover\"\r\n *ngIf=\"helpPopover\"\r\n class=\"d-inline-block my-n3 mx-n1\"\r\n text=\"{{helpPopover | translate}}\"\r\n contentPosition=\"{{helpPopoverPosition}}\">\r\n </ec-help-popover>\r\n </label>\r\n\r\n <div class=\"input-wrapper control-input\">\r\n <input *ngIf=\"type !== 'multi_line'\"\r\n #textboxInput\r\n email=\"{{type === 'email' ? true : false}}\"\r\n pattern=\"{{validationPattern}}\"\r\n type=\"{{type}}\"\r\n tabindex=\"{{tabindex}}\"\r\n title=\"{{tooltip}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.autocomplete]=\"autocomplete\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': !formModel?.value, 'is-pending': pending, 'is-uppercase': upperCase}\"\r\n (focusout)=\"focusOutEvent()\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n\r\n <textarea *ngIf=\"type === 'multi_line'\"\r\n [attr.rows]=\"rows\"\r\n #textboxInput\r\n tabindex=\"{{tabindex}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': formModel?.value === '', 'is-pending': pending}\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n </textarea>\r\n\r\n <i class=\"ec-icon icon-required\"></i>\r\n <i class=\"ec-icon icon-invalid\"></i>\r\n <i class=\"ec-icon icon-loading\"></i>\r\n </div>\r\n</div>", styles: [":host{color:var(--ec-form-control-color);font-size:var(--ec-form-control-font-size);display:block;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{width:100%;display:flex;flex-direction:column}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-top:0;margin-bottom:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select,:host .control.is-readonly textarea{border-color:var(--ec-form-control-border-color-readonly);background-color:var(--ec-form-control-background-color-readonly);background-clip:border-box;background-image:none;color:var(--ec-form-control-color-readonly);opacity:1;-webkit-user-select:none;user-select:none;pointer-events:none;overflow:hidden;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:focus,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:focus{border-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-required,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-required{display:none}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:var(--ec-form-control-border-color-invalid)}:host .textbox-group{display:flex;position:relative}:host textarea:focus,:host input:focus,:host select:focus{outline:none}:host label{color:var(--ec-form-control-label-color, var(--ec-color-secondary-dark));display:block;font-size:var(--ec-font-size-label);line-height:1;margin:calc(var(--ec-font-size-label) / 2) 0}:host input{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:2rem}:host input::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host input::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input~.icon-required,:host input~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host input:required.is-empty{background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host input.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched~.icon-required{display:none}:host input.is-pending.ng-valid,:host input.is-pending.ng-invalid,:host input.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem}:host input.is-pending.ng-valid~.icon-loading,:host input.is-pending.ng-invalid~.icon-loading,:host input.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.is-pending.ng-valid~.icon-required,:host input.is-pending.ng-valid~.icon-invalid,:host input.is-pending.ng-invalid~.icon-required,:host input.is-pending.ng-invalid~.icon-invalid,:host input.is-pending.ng-pending~.icon-required,:host input.is-pending.ng-pending~.icon-invalid{display:none}:host input:focus,:host input:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host input:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host input:disabled:required,:host input:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host input:disabled:required+.icon-required,:host input:disabled:required.is-empty+.icon-required{display:none}:host input.is-uppercase:not(.is-empty){text-transform:uppercase}:host textarea{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:auto;resize:none;display:block}:host textarea::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host textarea::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea~.icon-required,:host textarea~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host textarea:required.is-empty{background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host textarea.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched~.icon-required{display:none}:host textarea.is-pending.ng-valid,:host textarea.is-pending.ng-invalid,:host textarea.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem}:host textarea.is-pending.ng-valid~.icon-loading,:host textarea.is-pending.ng-invalid~.icon-loading,:host textarea.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.is-pending.ng-valid~.icon-required,:host textarea.is-pending.ng-valid~.icon-invalid,:host textarea.is-pending.ng-invalid~.icon-required,:host textarea.is-pending.ng-invalid~.icon-invalid,:host textarea.is-pending.ng-pending~.icon-required,:host textarea.is-pending.ng-pending~.icon-invalid{display:none}:host textarea:focus,:host textarea:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host textarea:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host textarea:disabled:required,:host textarea:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host textarea:disabled:required+.icon-required,:host textarea:disabled:required.is-empty+.icon-required{display:none}:host textarea.is-uppercase:not(.is-empty){text-transform:uppercase}.input-wrapper{position:relative}.input-wrapper>.ec-icon{display:none}:host(.textbox-group-input:not(:last-child)){flex:1 1 0%;width:1px}:host(.textbox-group-input:not(:last-child)) .control{margin-bottom:0}:host(.textbox-group-input:not(:last-child)) .control.is-readonly input{border-right-width:1px}:host(.textbox-group-input:not(:last-child)) input{border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0}:host(.textbox-group-input:not(:last-child)) input:focus{position:relative;z-index:1;border-right-width:1px}:host(.text-truncate) input{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.is-monospace) input,:host(.is-monospace) textarea,:host-context(.is-monospace) input,:host-context(.is-monospace) textarea{font-family:var(--ec-font-family-monospace)}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i5.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: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i5.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i5.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i5.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i5.EmailValidator, selector: "[email][formControlName],[email][formControl],[email][ngModel]", inputs: ["email"] }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i6.HelpPopoverComponent, selector: "ec-help-popover", inputs: ["id", "text", "contentPosition", "maxWidth"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] });
|
132
132
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TextboxComponent, decorators: [{
|
133
133
|
type: Component,
|
134
|
-
args: [{ selector: 'ec-textbox', template: "<div class=\"control control-label-{{labelPosition}}\"\r\n [ngClass]=\"{'is-readonly': readonly}\">\r\n\r\n <label *ngIf=\"label\">\r\n <span>{{label | translate}}</span>\r\n <span *ngIf=\"validationErrors.length > 0 && formModel.touched && formModel.invalid\"> {{validationErrors |\r\n translate}}</span>\r\n <ec-help-popover id=\"{{id}}_helpPopover\"\r\n *ngIf=\"helpPopover\"\r\n class=\"d-inline-block my-n3 mx-n1\"\r\n text=\"{{helpPopover | translate}}\"\r\n contentPosition=\"{{helpPopoverPosition}}\">\r\n </ec-help-popover>\r\n </label>\r\n\r\n <div class=\"input-wrapper control-input\">\r\n <input *ngIf=\"type !== 'multi_line'\"\r\n #textboxInput\r\n email=\"{{type === 'email' ? true : false}}\"\r\n pattern=\"{{validationPattern}}\"\r\n type=\"{{type}}\"\r\n tabindex=\"{{tabindex}}\"\r\n title=\"{{tooltip}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.autocomplete]=\"autocomplete\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': !formModel?.value, 'is-pending': pending, 'is-uppercase': upperCase}\"\r\n (focusout)=\"focusOutEvent()\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n\r\n <textarea *ngIf=\"type === 'multi_line'\"\r\n [attr.rows]=\"rows\"\r\n #textboxInput\r\n tabindex=\"{{tabindex}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': formModel?.value === '', 'is-pending': pending}\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n </textarea>\r\n\r\n <i class=\"ec-icon icon-required\"></i>\r\n <i class=\"ec-icon icon-invalid\"></i>\r\n <i class=\"ec-icon icon-loading\"></i>\r\n </div>\r\n</div>", styles: [":host{color:var(--ec-form-control-color);font-size:var(--ec-form-control-font-size);display:block;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{width:100%;display:flex;flex-direction:column}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-top:0;margin-bottom:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select,:host .control.is-readonly textarea{border-color:var(--ec-form-control-border-color-readonly);background-color:var(--ec-form-control-background-color-readonly);background-clip:border-box;background-image:none;color:var(--ec-form-control-color-readonly);opacity:1;-webkit-user-select:none;user-select:none;pointer-events:none;overflow:hidden;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:focus,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:focus{border-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-required,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-required{display:none}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:var(--ec-form-control-border-color-invalid)}:host .textbox-group{display:flex;position:relative}:host textarea:focus,:host input:focus,:host select:focus{outline:none}:host label{color:var(--ec-form-control-label-color, var(--ec-color-secondary-dark));display:block;font-size:var(--ec-font-size-label);line-height:1;margin:calc(var(--ec-font-size-label) / 2) 0}:host input{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:2rem}:host input::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host input::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input~.icon-required,:host input~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host input:required.is-empty{background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host input.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched~.icon-required{display:none}:host input.is-pending.ng-valid,:host input.is-pending.ng-invalid,:host input.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem}:host input.is-pending.ng-valid~.icon-loading,:host input.is-pending.ng-invalid~.icon-loading,:host input.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.is-pending.ng-valid~.icon-required,:host input.is-pending.ng-valid~.icon-invalid,:host input.is-pending.ng-invalid~.icon-required,:host input.is-pending.ng-invalid~.icon-invalid,:host input.is-pending.ng-pending~.icon-required,:host input.is-pending.ng-pending~.icon-invalid{display:none}:host input:focus,:host input:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host input:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host input:disabled:required,:host input:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host input:disabled:required+.icon-required,:host input:disabled:required.is-empty+.icon-required{display:none}:host input.is-uppercase:not(.is-empty){text-transform:uppercase}:host textarea{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:auto;resize:none;display:block}:host textarea::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host textarea::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea~.icon-required,:host textarea~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host textarea:required.is-empty{background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host textarea.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched~.icon-required{display:none}:host textarea.is-pending.ng-valid,:host textarea.is-pending.ng-invalid,:host textarea.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem}:host textarea.is-pending.ng-valid~.icon-loading,:host textarea.is-pending.ng-invalid~.icon-loading,:host textarea.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.is-pending.ng-valid~.icon-required,:host textarea.is-pending.ng-valid~.icon-invalid,:host textarea.is-pending.ng-invalid~.icon-required,:host textarea.is-pending.ng-invalid~.icon-invalid,:host textarea.is-pending.ng-pending~.icon-required,:host textarea.is-pending.ng-pending~.icon-invalid{display:none}:host textarea:focus,:host textarea:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host textarea:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host textarea:disabled:required,:host textarea:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host textarea:disabled:required+.icon-required,:host textarea:disabled:required.is-empty+.icon-required{display:none}:host textarea.is-uppercase:not(.is-empty){text-transform:uppercase}.input-wrapper{position:relative}.input-wrapper>.ec-icon{display:none}:host(.textbox-group-input:not(:last-child)){flex:1 1 0%;width:1px}:host(.textbox-group-input:not(:last-child)) .control{margin-bottom:0}:host(.textbox-group-input:not(:last-child)) .control.is-readonly input{border-right-width:1px}:host(.textbox-group-input:not(:last-child)) input{border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0}:host(.textbox-group-input:not(:last-child)) input:focus{position:relative;z-index:1;border-right-width:1px}:host(.text-truncate) input{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.is-monospace) input,:host(.is-monospace) textarea,:host-context(.is-monospace) input,:host-context(.is-monospace) textarea{font-family:var(--ec-font-family-monospace)}\n"] }]
|
134
|
+
args: [{ selector: 'ec-textbox', template: "<div class=\"control control-label-{{labelPosition}}\"\r\n [ngClass]=\"{'is-readonly': readonly}\">\r\n\r\n <label *ngIf=\"label\">\r\n <span [innerHTML]=\"label | translate\"></span>\r\n <span *ngIf=\"validationErrors.length > 0 && formModel.touched && formModel.invalid\"> {{validationErrors |\r\n translate}}</span>\r\n <ec-help-popover id=\"{{id}}_helpPopover\"\r\n *ngIf=\"helpPopover\"\r\n class=\"d-inline-block my-n3 mx-n1\"\r\n text=\"{{helpPopover | translate}}\"\r\n contentPosition=\"{{helpPopoverPosition}}\">\r\n </ec-help-popover>\r\n </label>\r\n\r\n <div class=\"input-wrapper control-input\">\r\n <input *ngIf=\"type !== 'multi_line'\"\r\n #textboxInput\r\n email=\"{{type === 'email' ? true : false}}\"\r\n pattern=\"{{validationPattern}}\"\r\n type=\"{{type}}\"\r\n tabindex=\"{{tabindex}}\"\r\n title=\"{{tooltip}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.autocomplete]=\"autocomplete\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': !formModel?.value, 'is-pending': pending, 'is-uppercase': upperCase}\"\r\n (focusout)=\"focusOutEvent()\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n\r\n <textarea *ngIf=\"type === 'multi_line'\"\r\n [attr.rows]=\"rows\"\r\n #textboxInput\r\n tabindex=\"{{tabindex}}\"\r\n [attr.id]=\"inputId\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.maxlength]=\"maxlength\"\r\n [attr.minlength]=\"minlength\"\r\n [attr.required]=\"required ? required : null\"\r\n [formControl]=\"formModel\"\r\n [ngClass]=\"{'is-empty': formModel?.value === '', 'is-pending': pending}\"\r\n [attr.cdkFocusInitial]=\"autofocus || null\">\r\n </textarea>\r\n\r\n <i class=\"ec-icon icon-required\"></i>\r\n <i class=\"ec-icon icon-invalid\"></i>\r\n <i class=\"ec-icon icon-loading\"></i>\r\n </div>\r\n</div>", styles: [":host{color:var(--ec-form-control-color);font-size:var(--ec-form-control-font-size);display:block;margin-bottom:1rem;width:100%}:host :host-context(.form-condensed){margin-bottom:.5rem}:host .control{width:100%;display:flex;flex-direction:column}:host .control.control-label-bottom{flex-direction:column-reverse}:host .control.control-label-left{flex-direction:row}:host .control.control-label-left label{margin-right:.25rem}:host .control.control-label-right{flex-direction:row-reverse}:host .control.control-label-right label{margin-left:.25rem}:host .control.control-label-left,:host .control.control-label-right{align-items:center}:host .control.control-label-left label,:host .control.control-label-right label{flex:1 1;margin-top:0;margin-bottom:0}:host .control.control-label-left .control-input,:host .control.control-label-right .control-input{flex:2 2}:host .control.is-readonly input,:host .control.is-readonly select,:host .control.is-readonly textarea{border-color:var(--ec-form-control-border-color-readonly);background-color:var(--ec-form-control-background-color-readonly);background-clip:border-box;background-image:none;color:var(--ec-form-control-color-readonly);opacity:1;-webkit-user-select:none;user-select:none;pointer-events:none;overflow:hidden;white-space:nowrap}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid:focus,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid:focus{border-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-invalid,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-invalid~.icon-required,:host .control.invalid .textbox-group-input ::ng-deep .control input.ng-valid~.icon-required{display:none}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button{background-color:var(--ec-form-control-background-color-invalid)}:host .control.invalid:not(.open) .textbox-group-btn-right ::ng-deep button:not(:focus){border-color:var(--ec-form-control-border-color-invalid)}:host .textbox-group{display:flex;position:relative}:host textarea:focus,:host input:focus,:host select:focus{outline:none}:host label{color:var(--ec-form-control-label-color, var(--ec-color-secondary-dark));display:block;font-size:var(--ec-font-size-label);line-height:1;margin:calc(var(--ec-font-size-label) / 2) 0}:host input{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:2rem}:host input::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host input::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host input:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host input~.icon-required,:host input~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host input:required.is-empty{background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host input.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host input.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.ng-invalid.ng-touched~.icon-required{display:none}:host input.is-pending.ng-valid,:host input.is-pending.ng-invalid,:host input.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem center;background-size:1rem,1rem;padding-left:1.75rem}:host input.is-pending.ng-valid~.icon-loading,:host input.is-pending.ng-invalid~.icon-loading,:host input.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host input.is-pending.ng-valid~.icon-required,:host input.is-pending.ng-valid~.icon-invalid,:host input.is-pending.ng-invalid~.icon-required,:host input.is-pending.ng-invalid~.icon-invalid,:host input.is-pending.ng-pending~.icon-required,:host input.is-pending.ng-pending~.icon-invalid{display:none}:host input:focus,:host input:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host input:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host input:disabled:required,:host input:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host input:disabled:required+.icon-required,:host input:disabled:required.is-empty+.icon-required{display:none}:host input.is-uppercase:not(.is-empty){text-transform:uppercase}:host textarea{background-color:var(--ec-form-control-background-color);border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);background-image:none;background-clip:padding-box;width:100%;line-height:1.25rem;padding:.3125rem .5rem;height:auto;resize:none;display:block}:host textarea::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}:host textarea::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}:host textarea:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}:host textarea~.icon-required,:host textarea~.icon-invalid{color:var(--ec-form-control-border-color-invalid)}:host textarea:required.is-empty{background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea:required.is-empty~.icon-required{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched{background-color:var(--ec-form-control-background-color-invalid);border-color:var(--ec-form-control-border-color-invalid);background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem;background-image:none}:host textarea.ng-invalid.ng-touched:focus{border-color:var(--ec-form-control-background-color-invalid)}:host textarea.ng-invalid.ng-touched~.icon-invalid{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.ng-invalid.ng-touched~.icon-required{display:none}:host textarea.is-pending.ng-valid,:host textarea.is-pending.ng-invalid,:host textarea.is-pending.ng-pending{background-image:\"\";background-repeat:no-repeat;background-position:.5rem .5rem;background-size:1rem,1rem;padding-left:1.75rem}:host textarea.is-pending.ng-valid~.icon-loading,:host textarea.is-pending.ng-invalid~.icon-loading,:host textarea.is-pending.ng-pending~.icon-loading{display:inline-flex;position:absolute;left:.5rem;top:.5rem;z-index:1}:host textarea.is-pending.ng-valid~.icon-required,:host textarea.is-pending.ng-valid~.icon-invalid,:host textarea.is-pending.ng-invalid~.icon-required,:host textarea.is-pending.ng-invalid~.icon-invalid,:host textarea.is-pending.ng-pending~.icon-required,:host textarea.is-pending.ng-pending~.icon-invalid{display:none}:host textarea:focus,:host textarea:focus.is-empty{border-color:var(--ec-form-control-border-color-focus);box-shadow:var(--ec-form-control-box-shadow-focus);position:relative;z-index:1}:host textarea:disabled{background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled);color:var(--ec-form-control-color-disabled);opacity:var(--ec-form-control-opacity-disabled)}:host textarea:disabled:required,:host textarea:disabled:required.is-empty{background-image:none;padding-left:.5rem;background-color:var(--ec-form-control-background-color-disabled);border-color:var(--ec-form-control-border-color-disabled)}:host textarea:disabled:required+.icon-required,:host textarea:disabled:required.is-empty+.icon-required{display:none}:host textarea.is-uppercase:not(.is-empty){text-transform:uppercase}.input-wrapper{position:relative}.input-wrapper>.ec-icon{display:none}:host(.textbox-group-input:not(:last-child)){flex:1 1 0%;width:1px}:host(.textbox-group-input:not(:last-child)) .control{margin-bottom:0}:host(.textbox-group-input:not(:last-child)) .control.is-readonly input{border-right-width:1px}:host(.textbox-group-input:not(:last-child)) input{border-top-right-radius:0;border-bottom-right-radius:0;border-right-width:0}:host(.textbox-group-input:not(:last-child)) input:focus{position:relative;z-index:1;border-right-width:1px}:host(.text-truncate) input{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host(.is-monospace) input,:host(.is-monospace) textarea,:host-context(.is-monospace) input,:host-context(.is-monospace) textarea{font-family:var(--ec-font-family-monospace)}\n"] }]
|
135
135
|
}], ctorParameters: function () { return [{ type: i1.ValidationMessageService }, { type: i2.FormGroupHelper }, { type: i3.TranslateService }]; }, propDecorators: { autocomplete: [{
|
136
136
|
type: Input
|
137
137
|
}], type: [{
|
@@ -152,4 +152,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
152
152
|
type: ViewChild,
|
153
153
|
args: ['textboxInput']
|
154
154
|
}] } });
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvdGV4dGJveC90ZXh0Ym94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy90ZXh0Ym94L3RleHRib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUErRCxNQUFNLGVBQWUsQ0FBQztBQUd6SCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFdkQsT0FBTyxFQUFrRCxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUEwQjVGLG9EQUFvRDtBQUNwRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLGVBQTJDLEVBQWUsRUFBRTtJQUMxRixPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFO1FBQ2hDLElBQUksVUFBVSxHQUFrQixFQUFFLENBQUM7UUFFbkMsK0JBQStCO1FBQy9CLGVBQWUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBRTdCLElBQUksZUFBZSxDQUFDLFFBQVEsRUFBRTtZQUMxQixVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN4QztRQUVELElBQUksZUFBZSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDekMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1NBQ3BFO1FBRUQsSUFBSSxlQUFlLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRTtZQUN6QyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMs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QyxNQUFNLEVBQUUsQ0FBQztTQUM1QztJQUNMLENBQUM7SUFFRDs7O0lBR0E7SUFDTyxhQUFhO1FBQ2hCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtZQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3RFO0lBQ0wsQ0FBQzs7NkdBeEhRLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLDhaQ2xGN0IseTlFQW9ETTsyRkQ4Qk8sZ0JBQWdCO2tCQU41QixTQUFTOytCQUNJLFlBQVk7NEtBU04sWUFBWTtzQkFBM0IsS0FBSztnQkFLVSxJQUFJO3NCQUFuQixLQUFLO2dCQUtVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBU1UsU0FBUztzQkFBeEIsS0FBSztnQkFTVSxTQUFTO3NCQUF4QixLQUFLO2dCQUtVLElBQUk7c0JBQW5CLEtBQUs7Z0JBTVUsaUJBQWlCO3NCQUFoQyxLQUFLO2dCQUtVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBTytCLFlBQVk7c0JBQWhELFNBQVM7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1Hcm91cEhlbHBlciB9IGZyb20gJy4uLy4uL3NoYXJlZC9mb3JtLWdyb3VwLmhlbHBlcic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBGb3JtQ29udHJvbEJhc2UgfSBmcm9tIFwiLi4vZm9ybS1jb250cm9sLWJhc2VcIjtcclxuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvdmFsaWRhdGlvbi1tZXNzYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVmFsaWRhdG9yRm4sIEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbi8qKlxyXG4gKiBUaGUgdHlwZSBvZiB0ZXh0Ym94IHdoZXJlIHRleHQgaXMgaW5wdXRbdHlwZT1cInRleHRcIl0sIG11bHRpX2xpbmUgaXMgYSBcclxuICogdGV4dGFyZWEsIGVtYWlsIGlzIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgdXJsIGlzIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGFuZCBwYXNzd29yZCBcclxuICogaXMgYW4gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdXHJcbiAqIFxyXG4gKiBJZiB0aGUgdHlwZSBpcyB1cmwgb3IgdGVsIGEgcmVnZXggcGF0dGVybiBpcyBhdXRvbWF0aWNhbGx5IGFkZGVkIHRvIHRoZSBmb3JtIHZhbGlkYXRvcnMuICBObyBvdGhlciBwYXR0ZXJuIHZhbGlkYXRvcnNcclxuICogbWF5IGJlIHVzZWQgZm9yIHRoaXMgaW5wdXQsIGhhdmluZyBtb3JlIHRoYW4gb25lIHdpbGwgY2F1c2UgaXNzdWVzLlxyXG4gKiBcclxuICogSWYgdGhlIHR5cGUgaXMgZW1haWwgYW4gZW1haWwgdmFsaWRhdG9yIGlzIGF1dG9tYXRpY2FsbHkgYWRkZWQgdG8gdGhlIGZvcm0gdmFsaWRhdG9ycy5cclxuICogKi9cclxuZXhwb3J0IHR5cGUgVGV4dGJveFR5cGUgPSBcInRleHRcIiB8IFwibXVsdGlfbGluZVwiIHwgXCJlbWFpbFwiIHwgXCJ1cmxcIiB8IFwicGFzc3dvcmRcIiB8IFwidGVsXCI7XHJcblxyXG4vKiogVHlwZSBmb3IgYWR2YW5jZWQgdmFsaWRhdGlvbiBvZiB0ZXh0Ym94IGZvcm0gY29udHJvbHMsIGlmIGluIHRoZSBmdXR1cmVcclxuICogIHdlIHdhbnQgbW9yZSBoYW5kbGluZyB3ZSB3aWxsIG5lZWQgdG8gdXBkYXRlIHRoaXMgdHlwZS5cclxuICovXHJcbmV4cG9ydCB0eXBlIFRleHRib3hWYWxpZGF0b3JQYXJhbWV0ZXJzID0ge1xyXG4gICAgcmVxdWlyZWQ/OiBib29sZWFuO1xyXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyO1xyXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xyXG4gICAgdW5pcXVlPzogYm9vbGVhbjtcclxuICAgIHZhbGlkPzogYm9vbGVhbjtcclxuICAgIHBhdHRlcm4/OiBSZWdFeHA7XHJcbn07XHJcblxyXG4vKiogQWR2YW5jZWQgdmFsaWRhdGlvbiBmb3IgdGV4dGJveCBmb3JtIGNvbnRyb2xzICovXHJcbmV4cG9ydCBjb25zdCB0ZXh0Ym94VmFsaWRhdGlvbiA9ICh2YWxpZGF0b3JQYXJhbXM6IFRleHRib3hWYWxpZGF0b3JQYXJhbWV0ZXJzKTogVmFsaWRhdG9yRm4gPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcclxuICAgICAgICBsZXQgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gXHJcbiAgICAgICAgLy8gSW5ub2NlbnQgdW50aWwgcHJvdmVuIGd1aWx0eVxyXG4gICAgICAgIHZhbGlkYXRvclBhcmFtcy52YWxpZCA9IHRydWU7XHJcblxyXG4gICAgICAgIGlmICh2YWxpZGF0b3JQYXJhbXMucmVxdWlyZWQpIHtcclxuICAgICAgICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZhbGlkYXRvclBhcmFtcy5taW5MZW5ndGggIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5taW5MZW5ndGgodmFsaWRhdG9yUGFyYW1zLm1pbkxlbmd0aCkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZhbGlkYXRvclBhcmFtcy5tYXhMZW5ndGggIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5tYXhMZW5ndGgodmFsaWRhdG9yUGFyYW1zLm1heExlbmd0aCkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZhbGlkYXRvclBhcmFtcy5wYXR0ZXJuICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucGF0dGVybih2YWxpZGF0b3JQYXJhbXMucGF0dGVybikpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdmFsaWRhdG9ycy5mb3JFYWNoKHZhbGlkYXRvciA9PiB7XHJcbiAgICAgICAgICAgIGxldCB2YWxpZGF0aW9uUmVzdWx0OiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IHZhbGlkYXRvcihjb250cm9sKTtcclxuICAgICAgICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgIHZhbGlkYXRvclBhcmFtcy52YWxpZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGlmICh2YWxpZGF0b3JQYXJhbXMudmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIHRleHRib3g6IHZhbGlkYXRvclBhcmFtc1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBwaG9uZU51bWJlclZhbGlkYXRpb25QYXR0ZXJuOiBzdHJpbmcgPSAnXlxcXFxzKig/OlxcXFwrPyhcXFxcZHsxLDN9KSk/Wy0uIChdKihcXFxcZHszfSlbLS4gKV0qKFxcXFxkezN9KVstLiBdKihcXFxcZHs0fSkoPzogKngoXFxcXGQrKSk/XFxcXHMqJCc7XHJcbmV4cG9ydCBjb25zdCB1cmxWYWxpZGF0aW9uUGF0dGVybjogc3RyaW5nID0gJyhbQS1aYS16XSkrKDpcXC9cXC8pK1teXFxcXHNdKic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnZWMtdGV4dGJveCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGV4dGJveC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90ZXh0Ym94LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBUZXh0Ym94Q29tcG9uZW50IGV4dGVuZHMgRm9ybUNvbnRyb2xCYXNlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xyXG4gICAgLyoqXHJcbiAgICAgKiBTZXQgdGhlIHZhbHVlIG9mIHRoZSBpbnB1dCdzIGF1dG9jb21wbGV0ZSBhdHRyaWJ1dGVcclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIGF1dG9jb21wbGV0ZT86IHN0cmluZyA9ICdvZmYnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHRleHRib3ggdHlwZVxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgdHlwZT86IFRleHRib3hUeXBlID0gXCJ0ZXh0XCI7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgdmFsdWUgb2YgdGhlIHRleHRib3ggaW5wdXQncyBwbGFjZWhvbGRlclxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyBhbGxvd2VkIGluIHRoZSBpbnB1dFxyXG4gICAgICogXHJcbiAgICAgKiBUaGlzIGlzIGZvciBhZGRpbmcgdGhlIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudCB0byBnZXQgdGhlIGJyb3dzZXIgZnVuY3Rpb25hbGl0eVxyXG4gICAgICogZnJvbSB0aGUgaW5wdXQuICBJZiB5b3UgbmVlZCB0aGUgZm9ybSB0byBiZSB2YWxpZGF0ZWQgYmVmb3JlIHN1Ym1pc3Npb24sIGFwcGx5IHRoZVxyXG4gICAgICogbWF4TGVuZ3RoIHZhbGlkYXRvciB0byB0aGUgZm9ybSBjb250cm9sLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgbWF4bGVuZ3RoPzogbnVtYmVyO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGNoYXJhY3RlcnMgYWxsb3dlZCBpbiB0aGUgaW5wdXRcclxuICAgICAqIFxyXG4gICAgICogVGhpcyBpcyBmb3IgYWRkaW5nIHRoZSBhdHRyaWJ1dGUgb24gdGhlIGVsZW1lbnQgdG8gZ2V0IHRoZSBicm93c2VyIGZ1bmN0aW9uYWxpdHlcclxuICAgICAqIGZyb20gdGhlIGlucHV0LiAgSWYgeW91IG5lZWQgdGhlIGZvcm0gdG8gYmUgdmFsaWRhdGVkIGJlZm9yZSBzdWJtaXNzaW9uLCBhcHBseSB0aGVcclxuICAgICAqIG1pbkxlbmd0aCB2YWxpZGF0b3IgdG8gdGhlIGZvcm0gY29udHJvbC5cclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIG1pbmxlbmd0aD86IG51bWJlcjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSB2YWx1ZSBvZiB0aGUgcm93cyBhdHRyaWJ1dGUgZm9yIGEgdGV4dGFyZWEuIE9ubHkgYXBwbGllcyB0byBtdWx0aS1saW5lIHR5cGVcclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIHJvd3M/OiBudW1iZXIgPSAzO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogSWYgc2V0IHRvIHRydWUsIHdlIHdpbGwgc2VsZWN0IGFsbCB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgaWZcclxuICAgICAqIGF1dG9mb2N1cyBpcyBhbHNvIHNldCB0byB0cnVlXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RPbkF1dG9mb2N1cz86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIElmIHNldCB0byB0cnVlLCB3ZSB3aWxsIHVwcGVyIGNhc2Ugb24gZm9jdXMgb3V0XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyB1cHBlckNhc2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFZhbGlkYXRpb24gcGF0dGVybiBmb3IgdGhlIGlucHV0LiBUaGlzIGlzIGRldGVybWluZWQgb24gdGhlIGlucHV0IHR5cGUgc3BlY2lmaWVkXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB2YWxpZGF0aW9uUGF0dGVybjogc3RyaW5nICA9ICcnO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ3RleHRib3hJbnB1dCcpIHByb3RlY3RlZCBpbnB1dEVsZW1lbnQhOiBFbGVtZW50UmVmO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByb3RlY3RlZCB2YWxpZGF0aW9uTWVzc2FnZVNlcnZpY2U6IFZhbGlkYXRpb25NZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgZm9ybUdyb3VwSGVscGVyOiBGb3JtR3JvdXBIZWxwZXIsXHJcbiAgICAgICAgcHJvdGVjdGVkIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIodmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLCBmb3JtR3JvdXBIZWxwZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XHJcbiAgICB9XHJcbiAgICAvKipcclxuXHQgKiBUaGUgYW5ndWxhciBvbkluaXQgbGlmZWN5Y2xlIGhvb2tcclxuXHQgKi9cclxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG5cclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25QYXR0ZXJuID0gJyc7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICd0ZWwnKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvblBhdHRlcm4gPSBwaG9uZU51bWJlclZhbGlkYXRpb25QYXR0ZXJuO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09PSAndXJsJykge1xyXG4gICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25QYXR0ZXJuID0gdXJsVmFsaWRhdGlvblBhdHRlcm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGlmICh0aGlzLnBsYWNlaG9sZGVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlLmdldCh0aGlzLnBsYWNlaG9sZGVyKVxyXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodHJhbnNsYXRlZDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbGFjZWhvbGRlciA9IHRyYW5zbGF0ZWQ7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuXHQgKiBUaGUgYW5ndWxhciBhZnRlclZpZXdJbml0IGxpZmVjeWNsZSBob29rXHJcblx0ICovXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmF1dG9mb2N1cykge1xyXG4gICAgICAgICAgICB0aGlzLnNldEZvY3VzKHRoaXMuc2VsZWN0T25BdXRvZm9jdXMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEZ1bmN0aW9uIHRvIHNldCBmb2N1cyBvbiBhbiBpbnB1dCBwcm9ncmFtbWF0aWNhbGx5IGFmdGVyIHRoZSBwYWdlXHJcbiAgICAgKiBoYWQgYmVlbiByZW5kZXJlZC4gIFRoZSBoaWdobGlnaHQgdGV4dCBmbGFnIHdpbGwgc2VsZWN0IHRoZSB0ZXh0IFxyXG4gICAgICogd2l0aGluIHRoZSBpbnB1dCBpZiBwYXNzZWQgaW4gYW5kIHRydWVcclxuICAgICAqL1xyXG4gICAgcHVibGljIHNldEZvY3VzKGhpZ2hsaWdodFRleHQ/OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG5cclxuICAgICAgICBpZiAoaGlnaGxpZ2h0VGV4dCkge1xyXG4gICAgICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnNlbGVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAqIEZvY3VzIG91dCBldmVudCBoYW5kbGVyXHJcbiAgKiB3aWxsIHVwcGVyIGNhc2UgYW5kIHRyaW0gdmFsdWUgaWYgdXBwZXJDYXNlIGlzIHRydWUgKHRoaXMgaXMgd2hhdCB3ZSBkbyBvbiB0aGUgYXBpcylcclxuICAqL1xyXG4gICAgcHVibGljIGZvY3VzT3V0RXZlbnQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMudXBwZXJDYXNlICYmIHRoaXMuZm9ybU1vZGVsLnZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybU1vZGVsLnNldFZhbHVlKHRoaXMuZm9ybU1vZGVsLnZhbHVlLnRvVXBwZXJDYXNlKCkudHJpbSgpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY29udHJvbCBjb250cm9sLWxhYmVsLXt7bGFiZWxQb3NpdGlvbn19XCJcclxuICAgICBbbmdDbGFzc109XCJ7J2lzLXJlYWRvbmx5JzogcmVhZG9ubHl9XCI+XHJcblxyXG4gICAgIDxsYWJlbCAqbmdJZj1cImxhYmVsXCI+XHJcbiAgICAgICAgPHNwYW4+e3tsYWJlbCB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwidmFsaWRhdGlvbkVycm9ycy5sZW5ndGggPiAwICYmIGZvcm1Nb2RlbC50b3VjaGVkICYmIGZvcm1Nb2RlbC5pbnZhbGlkXCI+Jm5ic3A7e3t2YWxpZGF0aW9uRXJyb3JzIHxcclxuICAgICAgICAgICAgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPGVjLWhlbHAtcG9wb3ZlciBpZD1cInt7aWR9fV9oZWxwUG9wb3ZlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhlbHBQb3BvdmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZC1pbmxpbmUtYmxvY2sgbXktbjMgbXgtbjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgdGV4dD1cInt7aGVscFBvcG92ZXIgfCB0cmFuc2xhdGV9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50UG9zaXRpb249XCJ7e2hlbHBQb3BvdmVyUG9zaXRpb259fVwiPlxyXG4gICAgICAgIDwvZWMtaGVscC1wb3BvdmVyPlxyXG4gICAgPC9sYWJlbD5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtd3JhcHBlciBjb250cm9sLWlucHV0XCI+XHJcbiAgICAgICAgPGlucHV0ICpuZ0lmPVwidHlwZSAhPT0gJ211bHRpX2xpbmUnXCJcclxuICAgICAgICAgICAgICAgI3RleHRib3hJbnB1dFxyXG4gICAgICAgICAgICAgICBlbWFpbD1cInt7dHlwZSA9PT0gJ2VtYWlsJyA/IHRydWUgOiBmYWxzZX19XCJcclxuICAgICAgICAgICAgICAgcGF0dGVybj1cInt7dmFsaWRhdGlvblBhdHRlcm59fVwiXHJcbiAgICAgICAgICAgICAgIHR5cGU9XCJ7e3R5cGV9fVwiXHJcbiAgICAgICAgICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCJcclxuICAgICAgICAgICAgICAgdGl0bGU9XCJ7e3Rvb2x0aXB9fVwiXHJcbiAgICAgICAgICAgICAgIFthdHRyLmlkXT1cImlucHV0SWRcIlxyXG4gICAgICAgICAgICAgICBbYXR0ci5hdXRvY29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcclxuICAgICAgICAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkID8gcmVxdWlyZWQgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Nb2RlbFwiXHJcbiAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaXMtZW1wdHknOiAhZm9ybU1vZGVsPy52YWx1ZSwgJ2lzLXBlbmRpbmcnOiBwZW5kaW5nLCAnaXMtdXBwZXJjYXNlJzogdXBwZXJDYXNlfVwiXHJcbiAgICAgICAgICAgICAgIChmb2N1c291dCk9XCJmb2N1c091dEV2ZW50KClcIlxyXG4gICAgICAgICAgICAgICBbYXR0ci5jZGtGb2N1c0luaXRpYWxdPVwiYXV0b2ZvY3VzIHx8IG51bGxcIj5cclxuXHJcbiAgICAgICAgPHRleHRhcmVhICpuZ0lmPVwidHlwZSA9PT0gJ211bHRpX2xpbmUnXCJcclxuICAgICAgICAgICAgICAgICAgW2F0dHIucm93c109XCJyb3dzXCJcclxuICAgICAgICAgICAgICAgICAgI3RleHRib3hJbnB1dFxyXG4gICAgICAgICAgICAgICAgICB0YWJpbmRleD1cInt7dGFiaW5kZXh9fVwiXHJcbiAgICAgICAgICAgICAgICAgIFthdHRyLmlkXT1cImlucHV0SWRcIlxyXG4gICAgICAgICAgICAgICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgICAgICAgIFthdHRyLm1heGxlbmd0aF09XCJtYXhsZW5ndGhcIlxyXG4gICAgICAgICAgICAgICAgICBbYXR0ci5taW5sZW5ndGhdPVwibWlubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgW2F0dHIucmVxdWlyZWRdPVwicmVxdWlyZWQgPyByZXF1aXJlZCA6IG51bGxcIlxyXG4gICAgICAgICAgICAgICAgICBbZm9ybUNvbnRyb2xdPVwiZm9ybU1vZGVsXCJcclxuICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydpcy1lbXB0eSc6IGZvcm1Nb2RlbD8udmFsdWUgPT09ICcnLCAnaXMtcGVuZGluZyc6IHBlbmRpbmd9XCJcclxuICAgICAgICAgICAgICAgICAgW2F0dHIuY2RrRm9jdXNJbml0aWFsXT1cImF1dG9mb2N1cyB8fCBudWxsXCI+XHJcbiAgICAgICAgPC90ZXh0YXJlYT5cclxuXHJcbiAgICAgICAgPGkgY2xhc3M9XCJlYy1pY29uIGljb24tcmVxdWlyZWRcIj48L2k+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJlYy1pY29uIGljb24taW52YWxpZFwiPjwvaT5cclxuICAgICAgICA8aSBjbGFzcz1cImVjLWljb24gaWNvbi1sb2FkaW5nXCI+PC9pPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dGJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvdGV4dGJveC90ZXh0Ym94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy90ZXh0Ym94L3RleHRib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUErRCxNQUFNLGVBQWUsQ0FBQztBQUd6SCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFdkQsT0FBTyxFQUFrRCxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7Ozs7QUEwQjVGLG9EQUFvRDtBQUNwRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLGVBQTJDLEVBQWUsRUFBRTtJQUMxRixPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFO1FBQ2hDLElBQUksVUFBVSxHQUFrQixFQUFFLENBQUM7UUFFbkMsK0JBQStCO1FBQy9CLGVBQWUsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBRTdCLElBQUksZUFBZSxDQUFDLFFBQVEsRUFBRTtZQUMxQixVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN4QztRQUVELElBQUksZUFBZSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDekMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1NBQ3BFO1FBRUQsSUFBSSxlQUFlLENBQUMsU0FBUyxLQUFLLFNBQVMsRUFBRTtZQUN6QyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMs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QyxNQUFNLEVBQUUsQ0FBQztTQUM1QztJQUNMLENBQUM7SUFFRDs7O0lBR0E7SUFDTyxhQUFhO1FBQ2hCLElBQUksSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRTtZQUN4QyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ3RFO0lBQ0wsQ0FBQzs7NkdBeEhRLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLDhaQ2xGN0IscytFQW9ETTsyRkQ4Qk8sZ0JBQWdCO2tCQU41QixTQUFTOytCQUNJLFlBQVk7NEtBU04sWUFBWTtzQkFBM0IsS0FBSztnQkFLVSxJQUFJO3NCQUFuQixLQUFLO2dCQUtVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBU1UsU0FBUztzQkFBeEIsS0FBSztnQkFTVSxTQUFTO3NCQUF4QixLQUFLO2dCQUtVLElBQUk7c0JBQW5CLEtBQUs7Z0JBTVUsaUJBQWlCO3NCQUFoQyxLQUFLO2dCQUtVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBTytCLFlBQVk7c0JBQWhELFNBQVM7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1Hcm91cEhlbHBlciB9IGZyb20gJy4uLy4uL3NoYXJlZC9mb3JtLWdyb3VwLmhlbHBlcic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgQWZ0ZXJWaWV3SW5pdCwgT25Jbml0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcblxyXG5pbXBvcnQgeyBGb3JtQ29udHJvbEJhc2UgfSBmcm9tIFwiLi4vZm9ybS1jb250cm9sLWJhc2VcIjtcclxuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2NvcmUvdmFsaWRhdGlvbi1tZXNzYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVmFsaWRhdG9yRm4sIEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbi8qKlxyXG4gKiBUaGUgdHlwZSBvZiB0ZXh0Ym94IHdoZXJlIHRleHQgaXMgaW5wdXRbdHlwZT1cInRleHRcIl0sIG11bHRpX2xpbmUgaXMgYSBcclxuICogdGV4dGFyZWEsIGVtYWlsIGlzIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgdXJsIGlzIGlucHV0W3R5cGU9XCJ1cmxcIl0sIGFuZCBwYXNzd29yZCBcclxuICogaXMgYW4gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdXHJcbiAqIFxyXG4gKiBJZiB0aGUgdHlwZSBpcyB1cmwgb3IgdGVsIGEgcmVnZXggcGF0dGVybiBpcyBhdXRvbWF0aWNhbGx5IGFkZGVkIHRvIHRoZSBmb3JtIHZhbGlkYXRvcnMuICBObyBvdGhlciBwYXR0ZXJuIHZhbGlkYXRvcnNcclxuICogbWF5IGJlIHVzZWQgZm9yIHRoaXMgaW5wdXQsIGhhdmluZyBtb3JlIHRoYW4gb25lIHdpbGwgY2F1c2UgaXNzdWVzLlxyXG4gKiBcclxuICogSWYgdGhlIHR5cGUgaXMgZW1haWwgYW4gZW1haWwgdmFsaWRhdG9yIGlzIGF1dG9tYXRpY2FsbHkgYWRkZWQgdG8gdGhlIGZvcm0gdmFsaWRhdG9ycy5cclxuICogKi9cclxuZXhwb3J0IHR5cGUgVGV4dGJveFR5cGUgPSBcInRleHRcIiB8IFwibXVsdGlfbGluZVwiIHwgXCJlbWFpbFwiIHwgXCJ1cmxcIiB8IFwicGFzc3dvcmRcIiB8IFwidGVsXCI7XHJcblxyXG4vKiogVHlwZSBmb3IgYWR2YW5jZWQgdmFsaWRhdGlvbiBvZiB0ZXh0Ym94IGZvcm0gY29udHJvbHMsIGlmIGluIHRoZSBmdXR1cmVcclxuICogIHdlIHdhbnQgbW9yZSBoYW5kbGluZyB3ZSB3aWxsIG5lZWQgdG8gdXBkYXRlIHRoaXMgdHlwZS5cclxuICovXHJcbmV4cG9ydCB0eXBlIFRleHRib3hWYWxpZGF0b3JQYXJhbWV0ZXJzID0ge1xyXG4gICAgcmVxdWlyZWQ/OiBib29sZWFuO1xyXG4gICAgbWluTGVuZ3RoPzogbnVtYmVyO1xyXG4gICAgbWF4TGVuZ3RoPzogbnVtYmVyO1xyXG4gICAgdW5pcXVlPzogYm9vbGVhbjtcclxuICAgIHZhbGlkPzogYm9vbGVhbjtcclxuICAgIHBhdHRlcm4/OiBSZWdFeHA7XHJcbn07XHJcblxyXG4vKiogQWR2YW5jZWQgdmFsaWRhdGlvbiBmb3IgdGV4dGJveCBmb3JtIGNvbnRyb2xzICovXHJcbmV4cG9ydCBjb25zdCB0ZXh0Ym94VmFsaWRhdGlvbiA9ICh2YWxpZGF0b3JQYXJhbXM6IFRleHRib3hWYWxpZGF0b3JQYXJhbWV0ZXJzKTogVmFsaWRhdG9yRm4gPT4ge1xyXG4gICAgcmV0dXJuIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcclxuICAgICAgICBsZXQgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gXHJcbiAgICAgICAgLy8gSW5ub2NlbnQgdW50aWwgcHJvdmVuIGd1aWx0eVxyXG4gICAgICAgIHZhbGlkYXRvclBhcmFtcy52YWxpZCA9IHRydWU7XHJcblxyXG4gICAgICAgIGlmICh2YWxpZGF0b3JQYXJhbXMucmVxdWlyZWQpIHtcclxuICAgICAgICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucmVxdWlyZWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZhbGlkYXRvclBhcmFtcy5taW5MZW5ndGggIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5taW5MZW5ndGgodmFsaWRhdG9yUGFyYW1zLm1pbkxlbmd0aCkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZhbGlkYXRvclBhcmFtcy5tYXhMZW5ndGggIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICB2YWxpZGF0b3JzLnB1c2goVmFsaWRhdG9ycy5tYXhMZW5ndGgodmFsaWRhdG9yUGFyYW1zLm1heExlbmd0aCkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHZhbGlkYXRvclBhcmFtcy5wYXR0ZXJuICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgdmFsaWRhdG9ycy5wdXNoKFZhbGlkYXRvcnMucGF0dGVybih2YWxpZGF0b3JQYXJhbXMucGF0dGVybikpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdmFsaWRhdG9ycy5mb3JFYWNoKHZhbGlkYXRvciA9PiB7XHJcbiAgICAgICAgICAgIGxldCB2YWxpZGF0aW9uUmVzdWx0OiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IHZhbGlkYXRvcihjb250cm9sKTtcclxuICAgICAgICAgICAgaWYgKHZhbGlkYXRpb25SZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgIHZhbGlkYXRvclBhcmFtcy52YWxpZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIGlmICh2YWxpZGF0b3JQYXJhbXMudmFsaWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIHRleHRib3g6IHZhbGlkYXRvclBhcmFtc1xyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBwaG9uZU51bWJlclZhbGlkYXRpb25QYXR0ZXJuOiBzdHJpbmcgPSAnXlxcXFxzKig/OlxcXFwrPyhcXFxcZHsxLDN9KSk/Wy0uIChdKihcXFxcZHszfSlbLS4gKV0qKFxcXFxkezN9KVstLiBdKihcXFxcZHs0fSkoPzogKngoXFxcXGQrKSk/XFxcXHMqJCc7XHJcbmV4cG9ydCBjb25zdCB1cmxWYWxpZGF0aW9uUGF0dGVybjogc3RyaW5nID0gJyhbQS1aYS16XSkrKDpcXC9cXC8pK1teXFxcXHNdKic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnZWMtdGV4dGJveCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdGV4dGJveC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi90ZXh0Ym94LmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBUZXh0Ym94Q29tcG9uZW50IGV4dGVuZHMgRm9ybUNvbnRyb2xCYXNlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xyXG4gICAgLyoqXHJcbiAgICAgKiBTZXQgdGhlIHZhbHVlIG9mIHRoZSBpbnB1dCdzIGF1dG9jb21wbGV0ZSBhdHRyaWJ1dGVcclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIGF1dG9jb21wbGV0ZT86IHN0cmluZyA9ICdvZmYnO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIHRleHRib3ggdHlwZVxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgdHlwZT86IFRleHRib3hUeXBlID0gXCJ0ZXh0XCI7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgdmFsdWUgb2YgdGhlIHRleHRib3ggaW5wdXQncyBwbGFjZWhvbGRlclxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyBhbGxvd2VkIGluIHRoZSBpbnB1dFxyXG4gICAgICogXHJcbiAgICAgKiBUaGlzIGlzIGZvciBhZGRpbmcgdGhlIGF0dHJpYnV0ZSBvbiB0aGUgZWxlbWVudCB0byBnZXQgdGhlIGJyb3dzZXIgZnVuY3Rpb25hbGl0eVxyXG4gICAgICogZnJvbSB0aGUgaW5wdXQuICBJZiB5b3UgbmVlZCB0aGUgZm9ybSB0byBiZSB2YWxpZGF0ZWQgYmVmb3JlIHN1Ym1pc3Npb24sIGFwcGx5IHRoZVxyXG4gICAgICogbWF4TGVuZ3RoIHZhbGlkYXRvciB0byB0aGUgZm9ybSBjb250cm9sLlxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgbWF4bGVuZ3RoPzogbnVtYmVyO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogVGhlIG1pbmltdW0gbnVtYmVyIG9mIGNoYXJhY3RlcnMgYWxsb3dlZCBpbiB0aGUgaW5wdXRcclxuICAgICAqIFxyXG4gICAgICogVGhpcyBpcyBmb3IgYWRkaW5nIHRoZSBhdHRyaWJ1dGUgb24gdGhlIGVsZW1lbnQgdG8gZ2V0IHRoZSBicm93c2VyIGZ1bmN0aW9uYWxpdHlcclxuICAgICAqIGZyb20gdGhlIGlucHV0LiAgSWYgeW91IG5lZWQgdGhlIGZvcm0gdG8gYmUgdmFsaWRhdGVkIGJlZm9yZSBzdWJtaXNzaW9uLCBhcHBseSB0aGVcclxuICAgICAqIG1pbkxlbmd0aCB2YWxpZGF0b3IgdG8gdGhlIGZvcm0gY29udHJvbC5cclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIG1pbmxlbmd0aD86IG51bWJlcjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSB2YWx1ZSBvZiB0aGUgcm93cyBhdHRyaWJ1dGUgZm9yIGEgdGV4dGFyZWEuIE9ubHkgYXBwbGllcyB0byBtdWx0aS1saW5lIHR5cGVcclxuICAgICAqL1xyXG4gICAgQElucHV0KCkgcHVibGljIHJvd3M/OiBudW1iZXIgPSAzO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogSWYgc2V0IHRvIHRydWUsIHdlIHdpbGwgc2VsZWN0IGFsbCB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgaWZcclxuICAgICAqIGF1dG9mb2N1cyBpcyBhbHNvIHNldCB0byB0cnVlXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RPbkF1dG9mb2N1cz86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIElmIHNldCB0byB0cnVlLCB3ZSB3aWxsIHVwcGVyIGNhc2Ugb24gZm9jdXMgb3V0XHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpIHB1YmxpYyB1cHBlckNhc2U6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIFZhbGlkYXRpb24gcGF0dGVybiBmb3IgdGhlIGlucHV0LiBUaGlzIGlzIGRldGVybWluZWQgb24gdGhlIGlucHV0IHR5cGUgc3BlY2lmaWVkXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyB2YWxpZGF0aW9uUGF0dGVybjogc3RyaW5nICA9ICcnO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ3RleHRib3hJbnB1dCcpIHByb3RlY3RlZCBpbnB1dEVsZW1lbnQhOiBFbGVtZW50UmVmO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByb3RlY3RlZCB2YWxpZGF0aW9uTWVzc2FnZVNlcnZpY2U6IFZhbGlkYXRpb25NZXNzYWdlU2VydmljZSxcclxuICAgICAgICBwcm90ZWN0ZWQgZm9ybUdyb3VwSGVscGVyOiBGb3JtR3JvdXBIZWxwZXIsXHJcbiAgICAgICAgcHJvdGVjdGVkIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIodmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLCBmb3JtR3JvdXBIZWxwZXIpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XHJcbiAgICB9XHJcbiAgICAvKipcclxuXHQgKiBUaGUgYW5ndWxhciBvbkluaXQgbGlmZWN5Y2xlIGhvb2tcclxuXHQgKi9cclxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG5cclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25QYXR0ZXJuID0gJyc7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICd0ZWwnKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsaWRhdGlvblBhdHRlcm4gPSBwaG9uZU51bWJlclZhbGlkYXRpb25QYXR0ZXJuO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09PSAndXJsJykge1xyXG4gICAgICAgICAgICB0aGlzLnZhbGlkYXRpb25QYXR0ZXJuID0gdXJsVmFsaWRhdGlvblBhdHRlcm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgIGlmICh0aGlzLnBsYWNlaG9sZGVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlLmdldCh0aGlzLnBsYWNlaG9sZGVyKVxyXG4gICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodHJhbnNsYXRlZDogc3RyaW5nKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wbGFjZWhvbGRlciA9IHRyYW5zbGF0ZWQ7XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuXHQgKiBUaGUgYW5ndWxhciBhZnRlclZpZXdJbml0IGxpZmVjeWNsZSBob29rXHJcblx0ICovXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmF1dG9mb2N1cykge1xyXG4gICAgICAgICAgICB0aGlzLnNldEZvY3VzKHRoaXMuc2VsZWN0T25BdXRvZm9jdXMpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEZ1bmN0aW9uIHRvIHNldCBmb2N1cyBvbiBhbiBpbnB1dCBwcm9ncmFtbWF0aWNhbGx5IGFmdGVyIHRoZSBwYWdlXHJcbiAgICAgKiBoYWQgYmVlbiByZW5kZXJlZC4gIFRoZSBoaWdobGlnaHQgdGV4dCBmbGFnIHdpbGwgc2VsZWN0IHRoZSB0ZXh0IFxyXG4gICAgICogd2l0aGluIHRoZSBpbnB1dCBpZiBwYXNzZWQgaW4gYW5kIHRydWVcclxuICAgICAqL1xyXG4gICAgcHVibGljIHNldEZvY3VzKGhpZ2hsaWdodFRleHQ/OiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xyXG5cclxuICAgICAgICBpZiAoaGlnaGxpZ2h0VGV4dCkge1xyXG4gICAgICAgICAgICB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnNlbGVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAqIEZvY3VzIG91dCBldmVudCBoYW5kbGVyXHJcbiAgKiB3aWxsIHVwcGVyIGNhc2UgYW5kIHRyaW0gdmFsdWUgaWYgdXBwZXJDYXNlIGlzIHRydWUgKHRoaXMgaXMgd2hhdCB3ZSBkbyBvbiB0aGUgYXBpcylcclxuICAqL1xyXG4gICAgcHVibGljIGZvY3VzT3V0RXZlbnQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMudXBwZXJDYXNlICYmIHRoaXMuZm9ybU1vZGVsLnZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybU1vZGVsLnNldFZhbHVlKHRoaXMuZm9ybU1vZGVsLnZhbHVlLnRvVXBwZXJDYXNlKCkudHJpbSgpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY29udHJvbCBjb250cm9sLWxhYmVsLXt7bGFiZWxQb3NpdGlvbn19XCJcclxuICAgICBbbmdDbGFzc109XCJ7J2lzLXJlYWRvbmx5JzogcmVhZG9ubHl9XCI+XHJcblxyXG4gICAgIDxsYWJlbCAqbmdJZj1cImxhYmVsXCI+XHJcbiAgICAgICAgPHNwYW4gW2lubmVySFRNTF09XCJsYWJlbCB8IHRyYW5zbGF0ZVwiPjwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cInZhbGlkYXRpb25FcnJvcnMubGVuZ3RoID4gMCAmJiBmb3JtTW9kZWwudG91Y2hlZCAmJiBmb3JtTW9kZWwuaW52YWxpZFwiPiZuYnNwO3t7dmFsaWRhdGlvbkVycm9ycyB8XHJcbiAgICAgICAgICAgIHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgIDxlYy1oZWxwLXBvcG92ZXIgaWQ9XCJ7e2lkfX1faGVscFBvcG92ZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJoZWxwUG9wb3ZlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImQtaW5saW5lLWJsb2NrIG15LW4zIG14LW4xXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQ9XCJ7e2hlbHBQb3BvdmVyIHwgdHJhbnNsYXRlfX1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudFBvc2l0aW9uPVwie3toZWxwUG9wb3ZlclBvc2l0aW9ufX1cIj5cclxuICAgICAgICA8L2VjLWhlbHAtcG9wb3Zlcj5cclxuICAgIDwvbGFiZWw+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImlucHV0LXdyYXBwZXIgY29udHJvbC1pbnB1dFwiPlxyXG4gICAgICAgIDxpbnB1dCAqbmdJZj1cInR5cGUgIT09ICdtdWx0aV9saW5lJ1wiXHJcbiAgICAgICAgICAgICAgICN0ZXh0Ym94SW5wdXRcclxuICAgICAgICAgICAgICAgZW1haWw9XCJ7e3R5cGUgPT09ICdlbWFpbCcgPyB0cnVlIDogZmFsc2V9fVwiXHJcbiAgICAgICAgICAgICAgIHBhdHRlcm49XCJ7e3ZhbGlkYXRpb25QYXR0ZXJufX1cIlxyXG4gICAgICAgICAgICAgICB0eXBlPVwie3t0eXBlfX1cIlxyXG4gICAgICAgICAgICAgICB0YWJpbmRleD1cInt7dGFiaW5kZXh9fVwiXHJcbiAgICAgICAgICAgICAgIHRpdGxlPVwie3t0b29sdGlwfX1cIlxyXG4gICAgICAgICAgICAgICBbYXR0ci5pZF09XCJpbnB1dElkXCJcclxuICAgICAgICAgICAgICAgW2F0dHIuYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXHJcbiAgICAgICAgICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgICAgICAgW2F0dHIubWF4bGVuZ3RoXT1cIm1heGxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgIFthdHRyLm1pbmxlbmd0aF09XCJtaW5sZW5ndGhcIlxyXG4gICAgICAgICAgICAgICBbYXR0ci5yZXF1aXJlZF09XCJyZXF1aXJlZCA/IHJlcXVpcmVkIDogbnVsbFwiXHJcbiAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtTW9kZWxcIlxyXG4gICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2lzLWVtcHR5JzogIWZvcm1Nb2RlbD8udmFsdWUsICdpcy1wZW5kaW5nJzogcGVuZGluZywgJ2lzLXVwcGVyY2FzZSc6IHVwcGVyQ2FzZX1cIlxyXG4gICAgICAgICAgICAgICAoZm9jdXNvdXQpPVwiZm9jdXNPdXRFdmVudCgpXCJcclxuICAgICAgICAgICAgICAgW2F0dHIuY2RrRm9jdXNJbml0aWFsXT1cImF1dG9mb2N1cyB8fCBudWxsXCI+XHJcblxyXG4gICAgICAgIDx0ZXh0YXJlYSAqbmdJZj1cInR5cGUgPT09ICdtdWx0aV9saW5lJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFthdHRyLnJvd3NdPVwicm93c1wiXHJcbiAgICAgICAgICAgICAgICAgICN0ZXh0Ym94SW5wdXRcclxuICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCJ7e3RhYmluZGV4fX1cIlxyXG4gICAgICAgICAgICAgICAgICBbYXR0ci5pZF09XCJpbnB1dElkXCJcclxuICAgICAgICAgICAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4bGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgW2F0dHIubWlubGVuZ3RoXT1cIm1pbmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgIFthdHRyLnJlcXVpcmVkXT1cInJlcXVpcmVkID8gcmVxdWlyZWQgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Nb2RlbFwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaXMtZW1wdHknOiBmb3JtTW9kZWw/LnZhbHVlID09PSAnJywgJ2lzLXBlbmRpbmcnOiBwZW5kaW5nfVwiXHJcbiAgICAgICAgICAgICAgICAgIFthdHRyLmNka0ZvY3VzSW5pdGlhbF09XCJhdXRvZm9jdXMgfHwgbnVsbFwiPlxyXG4gICAgICAgIDwvdGV4dGFyZWE+XHJcblxyXG4gICAgICAgIDxpIGNsYXNzPVwiZWMtaWNvbiBpY29uLXJlcXVpcmVkXCI+PC9pPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZWMtaWNvbiBpY29uLWludmFsaWRcIj48L2k+XHJcbiAgICAgICAgPGkgY2xhc3M9XCJlYy1pY29uIGljb24tbG9hZGluZ1wiPjwvaT5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
@@ -1,6 +1,8 @@
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
2
2
|
import { UntypedFormControl, UntypedFormGroup, Validators } from '@angular/forms';
|
3
3
|
import { Overlay } from '../view-overlay/view-overlay.component';
|
4
|
+
import { takeUntil } from 'rxjs/operators';
|
5
|
+
import { Subject } from 'rxjs';
|
4
6
|
import * as i0 from "@angular/core";
|
5
7
|
import * as i1 from "@angular/common";
|
6
8
|
import * as i2 from "@angular/forms";
|
@@ -8,7 +10,8 @@ import * as i3 from "../../controls/button/button.component";
|
|
8
10
|
import * as i4 from "../../controls/textbox/textbox.component";
|
9
11
|
import * as i5 from "../view-overlay/view-overlay.component";
|
10
12
|
import * as i6 from "../../controls/banner/banner.component";
|
11
|
-
import * as i7 from "
|
13
|
+
import * as i7 from "../../controls/checkbox/checkbox.component";
|
14
|
+
import * as i8 from "@ngx-translate/core";
|
12
15
|
export class ConfirmDialogContext {
|
13
16
|
constructor() {
|
14
17
|
/** Id to distinguish between confirm component contexts emitted by the dialog service */
|
@@ -62,11 +65,15 @@ export class ConfirmComponent {
|
|
62
65
|
/** Form Group to hold any form controls needed */
|
63
66
|
this.formGroup = new UntypedFormGroup({});
|
64
67
|
this.status = new Overlay('hasData');
|
68
|
+
this.showTextBox = true;
|
69
|
+
this.destroyed = new Subject();
|
65
70
|
this.onDialogSave = new EventEmitter();
|
66
71
|
this.onDialogCancel = new EventEmitter();
|
67
72
|
}
|
68
73
|
ngOnInit() {
|
69
74
|
this.addFormControls();
|
75
|
+
this.setValidations();
|
76
|
+
this.listenCheckBox();
|
70
77
|
}
|
71
78
|
onSave(source) {
|
72
79
|
this.formGroup.markAllAsTouched();
|
@@ -75,6 +82,9 @@ export class ConfirmComponent {
|
|
75
82
|
if (formValues.textbox) {
|
76
83
|
this.context.textboxValue = formValues.textbox;
|
77
84
|
}
|
85
|
+
if (this.context.checkConfirm) {
|
86
|
+
this.context.checkboxValue = formValues.checkbox ? formValues.checkbox : false;
|
87
|
+
}
|
78
88
|
this.context.saveSource = source;
|
79
89
|
if (this.context.inlineConfirmAction) {
|
80
90
|
this.doInlineConfirmAction();
|
@@ -90,6 +100,24 @@ export class ConfirmComponent {
|
|
90
100
|
onCancel() {
|
91
101
|
this.onDialogCancel.emit();
|
92
102
|
}
|
103
|
+
ngOnDestroy() {
|
104
|
+
this.destroyed.next();
|
105
|
+
this.destroyed.complete();
|
106
|
+
}
|
107
|
+
listenCheckBox() {
|
108
|
+
this.formGroup.get('checkbox')?.valueChanges.pipe(takeUntil(this.destroyed)).subscribe(value => {
|
109
|
+
this.showTextBox = value;
|
110
|
+
this.setValidations();
|
111
|
+
});
|
112
|
+
}
|
113
|
+
setValidations() {
|
114
|
+
if (this.showTextBox) {
|
115
|
+
this.formGroup.controls['textbox']?.enable();
|
116
|
+
}
|
117
|
+
else {
|
118
|
+
this.formGroup.controls['textbox']?.disable();
|
119
|
+
}
|
120
|
+
}
|
93
121
|
/**
|
94
122
|
* Adds the textbox form control to our form group if its configured to be visible
|
95
123
|
* Will also add the required validator if requested
|
@@ -105,6 +133,11 @@ export class ConfirmComponent {
|
|
105
133
|
}
|
106
134
|
this.formGroup.addControl('textbox', new UntypedFormControl('', validators));
|
107
135
|
}
|
136
|
+
if (this.context.checkConfirm) {
|
137
|
+
this.showTextBox = false;
|
138
|
+
const checkboxControl = new UntypedFormControl('');
|
139
|
+
this.formGroup.addControl('checkbox', checkboxControl);
|
140
|
+
}
|
108
141
|
}
|
109
142
|
async doInlineConfirmAction() {
|
110
143
|
this.status.setStatus('pending', this.context.inlineConfirmPendingMessage);
|
@@ -119,10 +152,10 @@ export class ConfirmComponent {
|
|
119
152
|
}
|
120
153
|
}
|
121
154
|
ConfirmComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfirmComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
122
|
-
ConfirmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ConfirmComponent, selector: "ec-confirm", inputs: { context: "context" }, outputs: { onDialogSave: "onDialogSave", onDialogCancel: "onDialogCancel" }, ngImport: i0, template: "<section ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [action]=\"status?.action\"\r\n [noDataTemplate]=\"inlineConfirmResult\"\r\n overlayClassList=\"p-0\"\r\n class=\"bg-body flex-grow d-flex\">\r\n <form [formGroup]=\"formGroup\" class=\"flex-grow flex-column confirm-content text-body-1\">\r\n <section class=\"flex-grow\">\r\n <h2 class=\"font-weight-bold mb-3\" *ngIf=\"context?.title\">{{context?.title}}</h2>\r\n <ec-banner *ngIf=\"error\" [text]=\"error | translate\" bannerStyle=\"normal\" class=\"mb-3\"></ec-banner>\r\n <div *ngIf=\"context?.message\" [innerHtml]=\"context?.message | translate\" class=\"mb-3\"></div>\r\n <ec-textbox id=\"confirmTextbox\"\r\n *ngIf=\"context?.textboxType\"\r\n [autofocus]=\"true\"\r\n [formModel]=\"formGroup.get('textbox')\"\r\n [required]=\"context?.textboxRequired\"\r\n [label]=\"context?.textboxLabel\"\r\n [type]=\"context?.textboxType\"\r\n [rows]=\"context?.textareaRows\"\r\n [placeholder]=\"context?.textboxPlaceholder\"\r\n [upperCase]=\"context?.textboxUppercase\">\r\n </ec-textbox>\r\n </section>\r\n <footer class=\"mt-auto flex-shrink d-flex py-2 flex-row-reverse\">\r\n <ec-button id=\"saveConfirmButton\"\r\n class=\"ml-2\"\r\n [type]=\"context?.saveButtonType ? context?.saveButtonType : 'primary'\"\r\n [label]=\"context?.saveLabel ? context?.saveLabel : 'Save'\"\r\n [autofocus]=\"!context?.textboxType\"\r\n [isSubmit]=\"context?.saveOnEnter\"\r\n (clicked)=\"onSave('primary')\">\r\n </ec-button>\r\n <ec-button id=\"alternateSaveConfirmButton\"\r\n *ngIf=\"context?.alternateSaveLabel\"\r\n class=\"ml-2\"\r\n [type]=\"context?.alternateSaveButtonType ? context?.alternateSaveButtonType : 'primary'\"\r\n [label]=\"context?.alternateSaveLabel\"\r\n (clicked)=\"onSave('alternate')\">\r\n </ec-button>\r\n <ec-button *ngIf=\"!context?.hideCancel\"\r\n id=\"cancelConfirmButton\"\r\n class=\"ml-auto\"\r\n type=\"secondary\"\r\n [label]=\"context?.cancelLabel ? context?.cancelLabel : 'Cancel'\"\r\n (clicked)=\"onCancel()\">\r\n </ec-button>\r\n </footer>\r\n </form>\r\n</section>\r\n\r\n<ng-template #inlineConfirmResult>\r\n <section class=\"flex-grow align-self-stretch confirm-content text-body-1\">\r\n <div class=\"d-flex\">\r\n <i class=\"ec-icon {{status?.action?.icon}} {{status?.action?.classlist}} inline-confirm-result-icon\"></i>\r\n <div [innerHTML]=\"status?.message | translate\"></div>\r\n </div>\r\n <div class=\"d-flex pt-2 mt-auto\">\r\n <ec-button id=\"inlineConfirmClose\"\r\n label=\"Close\"\r\n type=\"secondary\"\r\n class=\"ml-auto\"\r\n (clicked)=\"status?.action?.onClick!()\"\r\n [autofocus]=\"true\">\r\n </ec-button>\r\n </div>\r\n </section>\r\n</ng-template>", styles: [":host{width:100%;display:flex}.confirm-content{padding:1.5rem;display:flex;flex-direction:column}.inline-confirm-result-icon{margin:.0625rem .25rem .0625rem 0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i4.TextboxComponent, selector: "ec-textbox", inputs: ["autocomplete", "type", "placeholder", "maxlength", "minlength", "rows", "selectOnAutofocus", "upperCase"] }, { kind: "component", type: i5.ViewOverlayComponent, selector: "[ecOverlay]", inputs: ["status", "message", "action", "noDataTemplate", "displayAsMask", "overlayClassList"] }, { kind: "component", type: i6.BannerComponent, selector: "ec-banner", inputs: ["hidden", "id", "type", "bannerStyle", "title", "text", "list", "showCloseBtn", "autoHideOnClose", "customIcon", "rememberClosed"], outputs: ["closed"] }, { kind: "
|
155
|
+
ConfirmComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ConfirmComponent, selector: "ec-confirm", inputs: { context: "context" }, outputs: { onDialogSave: "onDialogSave", onDialogCancel: "onDialogCancel" }, ngImport: i0, template: "<section ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [action]=\"status?.action\"\r\n [noDataTemplate]=\"inlineConfirmResult\"\r\n overlayClassList=\"p-0\"\r\n class=\"bg-body flex-grow d-flex\">\r\n <form [formGroup]=\"formGroup\" class=\"flex-grow flex-column confirm-content text-body-1\">\r\n <section class=\"flex-grow\">\r\n <h2 class=\"font-weight-bold mb-3\" *ngIf=\"context?.title\">{{context?.title}}</h2>\r\n <ec-banner *ngIf=\"error\" [text]=\"error | translate\" bannerStyle=\"normal\" class=\"mb-3\"></ec-banner>\r\n <div *ngIf=\"context?.message\" [innerHtml]=\"context?.message | translate\" class=\"mb-3\"></div>\r\n \r\n <ec-checkbox *ngIf=\"context?.checkConfirm\"\r\n [formModel]=\"formGroup.get('checkbox')\"\r\n name=\"confirmCheckbox\"\r\n [label]=\"context?.checkboxText\"\r\n [autofocus]=\"true\"\r\n ></ec-checkbox>\r\n \r\n <ec-textbox id=\"confirmTextbox\"\r\n *ngIf=\"(context?.textboxType && !context?.checkConfirm) || showTextBox\"\r\n [autofocus]=\"true\"\r\n [formModel]=\"formGroup.get('textbox')\"\r\n [required]=\"context?.textboxRequired\"\r\n [label]=\"context?.textboxLabel\"\r\n [type]=\"context?.textboxType\"\r\n [rows]=\"context?.textareaRows\"\r\n [placeholder]=\"context?.textboxPlaceholder\"\r\n [upperCase]=\"context?.textboxUppercase\">\r\n </ec-textbox>\r\n </section>\r\n <footer class=\"mt-auto flex-shrink d-flex py-2 flex-row-reverse\">\r\n <ec-button id=\"saveConfirmButton\"\r\n class=\"ml-2\"\r\n [type]=\"context?.saveButtonType ? context?.saveButtonType : 'primary'\"\r\n [label]=\"context?.saveLabel ? context?.saveLabel : 'Save'\"\r\n [autofocus]=\"!context?.textboxType\"\r\n [isSubmit]=\"context?.saveOnEnter\"\r\n (clicked)=\"onSave('primary')\">\r\n </ec-button>\r\n <ec-button id=\"alternateSaveConfirmButton\"\r\n *ngIf=\"context?.alternateSaveLabel\"\r\n class=\"ml-2\"\r\n [type]=\"context?.alternateSaveButtonType ? context?.alternateSaveButtonType : 'primary'\"\r\n [label]=\"context?.alternateSaveLabel\"\r\n (clicked)=\"onSave('alternate')\">\r\n </ec-button>\r\n <ec-button *ngIf=\"!context?.hideCancel\"\r\n id=\"cancelConfirmButton\"\r\n class=\"ml-auto\"\r\n type=\"secondary\"\r\n [label]=\"context?.cancelLabel ? context?.cancelLabel : 'Cancel'\"\r\n (clicked)=\"onCancel()\">\r\n </ec-button>\r\n </footer>\r\n </form>\r\n</section>\r\n\r\n<ng-template #inlineConfirmResult>\r\n <section class=\"flex-grow align-self-stretch confirm-content text-body-1\">\r\n <div class=\"d-flex\">\r\n <i class=\"ec-icon {{status?.action?.icon}} {{status?.action?.classlist}} inline-confirm-result-icon\"></i>\r\n <div [innerHTML]=\"status?.message | translate\"></div>\r\n </div>\r\n <div class=\"d-flex pt-2 mt-auto\">\r\n <ec-button id=\"inlineConfirmClose\"\r\n label=\"Close\"\r\n type=\"secondary\"\r\n class=\"ml-auto\"\r\n (clicked)=\"status?.action?.onClick!()\"\r\n [autofocus]=\"true\">\r\n </ec-button>\r\n </div>\r\n </section>\r\n</ng-template>", styles: [":host{width:100%;display:flex}.confirm-content{padding:1.5rem;display:flex;flex-direction:column}.inline-confirm-result-icon{margin:.0625rem .25rem .0625rem 0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i3.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i4.TextboxComponent, selector: "ec-textbox", inputs: ["autocomplete", "type", "placeholder", "maxlength", "minlength", "rows", "selectOnAutofocus", "upperCase"] }, { kind: "component", type: i5.ViewOverlayComponent, selector: "[ecOverlay]", inputs: ["status", "message", "action", "noDataTemplate", "displayAsMask", "overlayClassList"] }, { kind: "component", type: i6.BannerComponent, selector: "ec-banner", inputs: ["hidden", "id", "type", "bannerStyle", "title", "text", "list", "showCloseBtn", "autoHideOnClose", "customIcon", "rememberClosed"], outputs: ["closed"] }, { kind: "component", type: i7.CheckboxComponent, selector: "ec-checkbox", inputs: ["name", "dependentCheckboxesGroup", "ignoreDisabledDependents"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
|
123
156
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ConfirmComponent, decorators: [{
|
124
157
|
type: Component,
|
125
|
-
args: [{ selector: 'ec-confirm', template: "<section ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [action]=\"status?.action\"\r\n [noDataTemplate]=\"inlineConfirmResult\"\r\n overlayClassList=\"p-0\"\r\n class=\"bg-body flex-grow d-flex\">\r\n <form [formGroup]=\"formGroup\" class=\"flex-grow flex-column confirm-content text-body-1\">\r\n <section class=\"flex-grow\">\r\n <h2 class=\"font-weight-bold mb-3\" *ngIf=\"context?.title\">{{context?.title}}</h2>\r\n <ec-banner *ngIf=\"error\" [text]=\"error | translate\" bannerStyle=\"normal\" class=\"mb-3\"></ec-banner>\r\n <div *ngIf=\"context?.message\" [innerHtml]=\"context?.message | translate\" class=\"mb-3\"></div>\r\n <ec-textbox id=\"confirmTextbox\"\r\n *ngIf=\"context?.textboxType\"\r\n [autofocus]=\"true\"\r\n [formModel]=\"formGroup.get('textbox')\"\r\n [required]=\"context?.textboxRequired\"\r\n [label]=\"context?.textboxLabel\"\r\n [type]=\"context?.textboxType\"\r\n [rows]=\"context?.textareaRows\"\r\n [placeholder]=\"context?.textboxPlaceholder\"\r\n [upperCase]=\"context?.textboxUppercase\">\r\n </ec-textbox>\r\n </section>\r\n <footer class=\"mt-auto flex-shrink d-flex py-2 flex-row-reverse\">\r\n <ec-button id=\"saveConfirmButton\"\r\n class=\"ml-2\"\r\n [type]=\"context?.saveButtonType ? context?.saveButtonType : 'primary'\"\r\n [label]=\"context?.saveLabel ? context?.saveLabel : 'Save'\"\r\n [autofocus]=\"!context?.textboxType\"\r\n [isSubmit]=\"context?.saveOnEnter\"\r\n (clicked)=\"onSave('primary')\">\r\n </ec-button>\r\n <ec-button id=\"alternateSaveConfirmButton\"\r\n *ngIf=\"context?.alternateSaveLabel\"\r\n class=\"ml-2\"\r\n [type]=\"context?.alternateSaveButtonType ? context?.alternateSaveButtonType : 'primary'\"\r\n [label]=\"context?.alternateSaveLabel\"\r\n (clicked)=\"onSave('alternate')\">\r\n </ec-button>\r\n <ec-button *ngIf=\"!context?.hideCancel\"\r\n id=\"cancelConfirmButton\"\r\n class=\"ml-auto\"\r\n type=\"secondary\"\r\n [label]=\"context?.cancelLabel ? context?.cancelLabel : 'Cancel'\"\r\n (clicked)=\"onCancel()\">\r\n </ec-button>\r\n </footer>\r\n </form>\r\n</section>\r\n\r\n<ng-template #inlineConfirmResult>\r\n <section class=\"flex-grow align-self-stretch confirm-content text-body-1\">\r\n <div class=\"d-flex\">\r\n <i class=\"ec-icon {{status?.action?.icon}} {{status?.action?.classlist}} inline-confirm-result-icon\"></i>\r\n <div [innerHTML]=\"status?.message | translate\"></div>\r\n </div>\r\n <div class=\"d-flex pt-2 mt-auto\">\r\n <ec-button id=\"inlineConfirmClose\"\r\n label=\"Close\"\r\n type=\"secondary\"\r\n class=\"ml-auto\"\r\n (clicked)=\"status?.action?.onClick!()\"\r\n [autofocus]=\"true\">\r\n </ec-button>\r\n </div>\r\n </section>\r\n</ng-template>", styles: [":host{width:100%;display:flex}.confirm-content{padding:1.5rem;display:flex;flex-direction:column}.inline-confirm-result-icon{margin:.0625rem .25rem .0625rem 0}\n"] }]
|
158
|
+
args: [{ selector: 'ec-confirm', template: "<section ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [action]=\"status?.action\"\r\n [noDataTemplate]=\"inlineConfirmResult\"\r\n overlayClassList=\"p-0\"\r\n class=\"bg-body flex-grow d-flex\">\r\n <form [formGroup]=\"formGroup\" class=\"flex-grow flex-column confirm-content text-body-1\">\r\n <section class=\"flex-grow\">\r\n <h2 class=\"font-weight-bold mb-3\" *ngIf=\"context?.title\">{{context?.title}}</h2>\r\n <ec-banner *ngIf=\"error\" [text]=\"error | translate\" bannerStyle=\"normal\" class=\"mb-3\"></ec-banner>\r\n <div *ngIf=\"context?.message\" [innerHtml]=\"context?.message | translate\" class=\"mb-3\"></div>\r\n \r\n <ec-checkbox *ngIf=\"context?.checkConfirm\"\r\n [formModel]=\"formGroup.get('checkbox')\"\r\n name=\"confirmCheckbox\"\r\n [label]=\"context?.checkboxText\"\r\n [autofocus]=\"true\"\r\n ></ec-checkbox>\r\n \r\n <ec-textbox id=\"confirmTextbox\"\r\n *ngIf=\"(context?.textboxType && !context?.checkConfirm) || showTextBox\"\r\n [autofocus]=\"true\"\r\n [formModel]=\"formGroup.get('textbox')\"\r\n [required]=\"context?.textboxRequired\"\r\n [label]=\"context?.textboxLabel\"\r\n [type]=\"context?.textboxType\"\r\n [rows]=\"context?.textareaRows\"\r\n [placeholder]=\"context?.textboxPlaceholder\"\r\n [upperCase]=\"context?.textboxUppercase\">\r\n </ec-textbox>\r\n </section>\r\n <footer class=\"mt-auto flex-shrink d-flex py-2 flex-row-reverse\">\r\n <ec-button id=\"saveConfirmButton\"\r\n class=\"ml-2\"\r\n [type]=\"context?.saveButtonType ? context?.saveButtonType : 'primary'\"\r\n [label]=\"context?.saveLabel ? context?.saveLabel : 'Save'\"\r\n [autofocus]=\"!context?.textboxType\"\r\n [isSubmit]=\"context?.saveOnEnter\"\r\n (clicked)=\"onSave('primary')\">\r\n </ec-button>\r\n <ec-button id=\"alternateSaveConfirmButton\"\r\n *ngIf=\"context?.alternateSaveLabel\"\r\n class=\"ml-2\"\r\n [type]=\"context?.alternateSaveButtonType ? context?.alternateSaveButtonType : 'primary'\"\r\n [label]=\"context?.alternateSaveLabel\"\r\n (clicked)=\"onSave('alternate')\">\r\n </ec-button>\r\n <ec-button *ngIf=\"!context?.hideCancel\"\r\n id=\"cancelConfirmButton\"\r\n class=\"ml-auto\"\r\n type=\"secondary\"\r\n [label]=\"context?.cancelLabel ? context?.cancelLabel : 'Cancel'\"\r\n (clicked)=\"onCancel()\">\r\n </ec-button>\r\n </footer>\r\n </form>\r\n</section>\r\n\r\n<ng-template #inlineConfirmResult>\r\n <section class=\"flex-grow align-self-stretch confirm-content text-body-1\">\r\n <div class=\"d-flex\">\r\n <i class=\"ec-icon {{status?.action?.icon}} {{status?.action?.classlist}} inline-confirm-result-icon\"></i>\r\n <div [innerHTML]=\"status?.message | translate\"></div>\r\n </div>\r\n <div class=\"d-flex pt-2 mt-auto\">\r\n <ec-button id=\"inlineConfirmClose\"\r\n label=\"Close\"\r\n type=\"secondary\"\r\n class=\"ml-auto\"\r\n (clicked)=\"status?.action?.onClick!()\"\r\n [autofocus]=\"true\">\r\n </ec-button>\r\n </div>\r\n </section>\r\n</ng-template>", styles: [":host{width:100%;display:flex}.confirm-content{padding:1.5rem;display:flex;flex-direction:column}.inline-confirm-result-icon{margin:.0625rem .25rem .0625rem 0}\n"] }]
|
126
159
|
}], ctorParameters: function () { return []; }, propDecorators: { context: [{
|
127
160
|
type: Input
|
128
161
|
}], onDialogSave: [{
|
@@ -130,4 +163,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
130
163
|
}], onDialogCancel: [{
|
131
164
|
type: Output
|
132
165
|
}] } });
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS9jb25maXJtL2NvbmZpcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvY29uZmlybS9jb25maXJtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGdCQUFnQixFQUFlLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSy9GLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQzs7Ozs7Ozs7O0FBU2pFLE1BQU0sT0FBTyxvQkFBb0I7SUFBakM7UUFDRSx5RkFBeUY7UUFDbEYsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQWlCdkI7OztXQUdHO1FBQ0ksb0JBQWUsR0FBYSxLQUFLLENBQUM7UUFLekMsNkNBQTZDO1FBQ3RDLHFCQUFnQixHQUFhLEtBQUssQ0FBQztRQUUxQzs7OztXQUlHO1FBQ0ksaUJBQVksR0FBWSxDQUFDLENBQUM7UUFXakMsaUNBQWlDO1FBQzFCLGNBQVMsR0FBWSxNQUFNLENBQUMsQ0FBQyxPQUFPO1FBRTNDLGdDQUFnQztRQUN6QixtQkFBYyxHQUFnQixTQUFTLENBQUM7UUFFL0MsbUNBQW1DO1FBQzVCLGdCQUFXLEdBQVksUUFBUSxDQUFDLENBQUMsT0FBTztRQUUvQyw2REFBNkQ7UUFDdEQsZUFBVSxHQUFhLEtBQUssQ0FBQztRQUVwQywyRkFBMkY7UUFDcEYsZ0JBQVcsR0FBYSxLQUFLLENBQUM7UUFFckMsMkNBQTJDO1FBQ3BDLHVCQUFrQixHQUFZLFNBQVMsQ0FB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QixDQUFDLENBQUM7UUFFM0UsSUFBSSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFvQixFQUFFLENBQUM7UUFFdkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxPQUFPLEVBQUU7WUFDOUMsRUFBRSxFQUFFLG9CQUFvQjtZQUN4QixLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsWUFBWTtZQUMzRCxTQUFTLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLGtCQUFrQjtZQUN2RSxPQUFPLEVBQUUsR0FBRyxFQUFFLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFBLENBQUMsQ0FBQztTQUN4RyxDQUFDLENBQUM7SUFDTCxDQUFDOzs2R0ExRlUsZ0JBQWdCO2lHQUFoQixnQkFBZ0IsK0pDMUc3Qiw0eEdBbUVjOzJGRHVDRCxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsWUFBWTswRUFpQk4sT0FBTztzQkFBdEIsS0FBSztnQkFFVyxZQUFZO3NCQUE1QixNQUFNO2dCQUNVLGNBQWM7c0JBQTlCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25UeXBlIH0gZnJvbSAnLi4vLi4vY29udHJvbHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0Ym94VHlwZSB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dDb250ZW50IH0gZnJvbSAnLi4vZGlhbG9nL2RpYWxvZy1jb250ZW50JztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJy4uL3ZpZXctb3ZlcmxheS92aWV3LW92ZXJsYXkuY29tcG9uZW50JztcclxuXHJcbnR5cGUgU2F2ZVNvdXJjZSA9ICdwcmltYXJ5J3wnYWx0ZXJuYXRlJztcclxuXHJcbmV4cG9ydCB0eXBlIEN1c3RvbUFjdGlvblJlc3VsdCA9IHtcclxuICBtZXNzYWdlOiBzdHJpbmc7XHJcbiAgaXNTdWNjZXNzOiBib29sZWFuO1xyXG59O1xyXG5cclxuZXhwb3J0IGNsYXNzIENvbmZpcm1EaWFsb2dDb250ZXh0IHtcclxuICAvKiogSWQgdG8gZGlzdGluZ3Vpc2ggYmV0d2VlbiBjb25maXJtIGNvbXBvbmVudCBjb250ZXh0cyBlbWl0dGVkIGJ5IHRoZSBkaWFsb2cgc2VydmljZSAqL1xyXG4gIHB1YmxpYyBpZDogc3RyaW5nID0gJyc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCB0aXRsZSBvZiB0aGUgY29uZmlybSAqL1xyXG4gIHB1YmxpYyB0aXRsZT86IHN0cmluZztcclxuXHJcbiAgLyoqIE9wdGlvbmFsIG1lc3NhZ2UgKi9cclxuICBwdWJsaWMgbWVzc2FnZT86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9uYWwgdGV4dGJveCB0eXBlLCB0aGlzIHdpbGwgZGV0ZXJtaW5lIHdoZXRoZXJcclxuICAgKiBhbiBpbnB1dCBpcyB2aXNpYmxlIG9yIG5vdFxyXG4gICAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94VHlwZT86IFRleHRib3hUeXBlO1xyXG5cclxuICAvKiogT3B0aW9uYWwgdGV4dGJveCBsYWJlbCAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94TGFiZWw/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHJlcXVpcmVkIGZsYWcgZm9yIHRoZSB0ZXh0Ym94LCB3aWxsIHNldFxyXG4gICAqIGEgdmFsaWRhdG9yIG9uIHRoZSBpbnB1dCBpZiB0cnVlXHJcbiAgICovXHJcbiAgcHVibGljIHRleHRib3hSZXF1aXJlZD86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIGFycmF5IG9mIHZhbGlkYXRvcnMgdG8gYWRkIHRvIHRoZSB0ZXh0Ym94IGZvcm0gY29udHJvbC4gKi9cclxuICBwdWJsaWMgdGV4dGJveFZhbGlkYXRvcnM/OiBWYWxpZGF0b3JGbltdO1xyXG5cclxuICAvKiogU2V0cyB0aGUgdGV4dGJveCdzIHVwcGVyY2FzZSBwYXJhbWV0ZXIgKi9cclxuICBwdWJsaWMgdGV4dGJveFVwcGVyY2FzZT86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9uYWwgdGV4dGJveCBoZWlnaHQgKGluIHJvd3MpLlxyXG4gICAqIE9ubHkgYXBwbGllcyB0byBtdWx0aS1saW5lIHR5cGUuXHJcbiAgICogRGVmYXVsdCAzLlxyXG4gICAqL1xyXG4gIHB1YmxpYyB0ZXh0YXJlYVJvd3M/OiBudW1iZXIgPSAzO1xyXG5cclxuICAvKiogT3B0aW9uYWwgdGV4dGJveCBwbGFjZWhvbGRlciB0ZXh0ICovXHJcbiAgcHVibGljIHRleHRib3hQbGFjZWhvbGRlcj86IHN0cmluZztcclxuXHJcbiAgLyoqIE9wdGlvbmFsIGVycm9yIG1lc3NhZ2UgdG8gZGlzcGxheSB3aGVuIHRleHRib3ggKi9cclxuICBwdWJsaWMgdmFsaWRhdGlvbkVycm9yTWVzc2FnZT86IHN0cmluZztcclxuXHJcbiAgLyoqIFZhbHVlIHJldHVybmVkIGZyb20gdGhlIGlucHV0IGlmIGVuYWJsZWQgKi9cclxuICBwdWJsaWMgdGV4dGJveFZhbHVlPzogc3RyaW5nO1xyXG5cclxuICAvKiogT3B0aW9uYWwgc2F2ZSBidXR0b24gbGFiZWwgKi9cclxuICBwdWJsaWMgc2F2ZUxhYmVsPzogc3RyaW5nID0gJ1NhdmUnOyAvLyBMT0NPXHJcblxyXG4gIC8qKiBPcHRpb25hbCBzYXZlIGJ1dHRvbiB0eXBlICovXHJcbiAgcHVibGljIHNhdmVCdXR0b25UeXBlPzogQnV0dG9uVHlwZSA9ICdwcmltYXJ5JztcclxuXHJcbiAgLyoqIE9wdGlvbmFsIGNhbmNlbCBidXR0b24gbGFiZWwgKi9cclxuICBwdWJsaWMgY2FuY2VsTGFiZWw/OiBzdHJpbmcgPSAnQ2FuY2VsJzsgLy8gTE9DT1xyXG5cclxuICAvKiogT3B0aW9uYWwgZmxhZyBmb3IgaGlkaW5nIHRoZSBjYW5jZWwgKHNlY29uZGFyeSkgYnV0dG9uICovXHJcbiAgcHVibGljIGhpZGVDYW5jZWw/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKiBXaGVuIHRydWUsIGFkZHMgdGhlIHN1Ym1pdCB0YWcgdG8gdGhlIHNhdmUgYnV0dG9uIHNvIGhpdHRpbmcgZW50ZXIgdHJpZ2dlcnMgdGhlIHNhdmUgKi9cclxuICBwdWJsaWMgc2F2ZU9uRW50ZXI/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBhbHRlcm5hdGUgc2F2ZSBidXR0b24gbGFiZWwgKi9cclxuICBwdWJsaWMgYWx0ZXJuYXRlU2F2ZUxhYmVsPzogc3RyaW5nID0gdW5kZWZpbmVkO1xyXG5cclxuICAvKiogT3B0aW9uYWwgYWx0ZXJuYXRlIHNhdmUgYnV0dG9uIHR5cGUgKi9cclxuICBwdWJsaWMgYWx0ZXJuYXRlU2F2ZUJ1dHRvblR5cGU/OiBCdXR0b25UeXBlID0gdW5kZWZpbmVkO1xyXG5cclxuICAvKipcclxuICAgKiBVc2VkIHRvIGtub3cgd2hpY2ggc2F2ZSBidXR0b24gd2FzIHNlbGVjdGVkIGluIGNhc2UgdGhlIGNhbGxpbmcgY29tcG9uZW50XHJcbiAgICogaXMgdXRpbGl6aW5nIHRoZSBhbHRlcm5hdGUgc2F2ZSBidXR0b25cclxuICAgKi9cclxuICBwdWJsaWMgc2F2ZVNvdXJjZT86IFNhdmVTb3VyY2UgPSAncHJpbWFyeSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gcHJvdmlkZWQsIHRoZSBjb25maXJtIHdpbGwgc2hvdyBhIHBlbmRpbmcgc3RhdGUgYW5kIGNhbGwgdGhpcywgdGhlbiB1cG9uXHJcbiAgICogY29tcGxldGlvbiBkaXNwbGF5IHRoZSByZXN1bHQgbWVzc2FnZSBhbmQgYSBjbG9zZSBidXR0b24uIElmIHRoZSBwcm9taXNlIGlzIHJlc29sdmVkXHJcbiAgICogc3VjY2Vzc2Z1bGx5LCB0aGUgY2xvc2UgYnV0dG9uIHdpbGwgZW1pdCBvbkRpYWxvZ1NhdmUuIElmIHRoZSBwcm9taXNlIGlzIHJlamVjdGVkLFxyXG4gICAqIHRoZSBjbG9zZSBidXR0b24gd2lsbCBlbWl0IG9uRGlhbG9nQ2FuY2VsLlxyXG4gICAqL1xyXG4gIHB1YmxpYyBpbmxpbmVDb25maXJtQWN0aW9uPzogKCkgPT4gUHJvbWlzZTxDdXN0b21BY3Rpb25SZXN1bHQ+O1xyXG5cclxuICAvKiogVGhlIG1lc3NhZ2UgdG8gYmUgZGlzcGxheWVkIHdoaWxlIGlubGluZUNvbmZpcm1BY3Rpb24gaXMgcGVuZGluZy4gKi9cclxuICBwdWJsaWMgaW5saW5lQ29uZmlybVBlbmRpbmdNZXNzYWdlPzogc3RyaW5nID0gJyc7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnZWMtY29uZmlybScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbmZpcm0uY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ29uZmlybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgRGlhbG9nQ29udGVudDxDb25maXJtRGlhbG9nQ29udGV4dD57XHJcblxyXG4gIHB1YmxpYyBkaWFsb2dJZDogc3RyaW5nID0gJ0NvbmZpcm0nO1xyXG5cclxuICAvKiogRm9ybSBHcm91cCB0byBob2xkIGFueSBmb3JtIGNvbnRyb2xzIG5lZWRlZCAqL1xyXG4gIHB1YmxpYyBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSk7XHJcblxyXG4gIHB1YmxpYyBzdGF0dXMgPSBuZXcgT3ZlcmxheSgnaGFzRGF0YScpO1xyXG5cclxuICAvKipcclxuICAgKiBQcm92aWRlZCBieSB0aGUgY2FsbGluZyBjb21wb25lbnQgdG8gdGVsbCB0aGUgY29uZmlybSB3aGF0IHRvIHNob3dcclxuICAgKiBhbmQgaXMgdXNlZCBvbiBzYXZlIHRvIHNlbmQgYmFjayBhbnkgZW50ZXJlZCB2YWx1ZXMgZnJvbSB0aGUgdXNlclxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjb250ZXh0ITogQ29uZmlybURpYWxvZ0NvbnRleHQ7XHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25EaWFsb2dTYXZlOiBFdmVudEVtaXR0ZXI8Q29uZmlybURpYWxvZ0NvbnRleHQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxDb25maXJtRGlhbG9nQ29udGV4dD4oKTtcclxuICBAT3V0cHV0KCkgcHVibGljIG9uRGlhbG9nQ2FuY2VsOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIHB1YmxpYyBvbk9wZW4ob3BlbkNvbnRleHQ/OiBDb25maXJtRGlhbG9nQ29udGV4dCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZXh0ID0gb3BlbkNvbnRleHQhO1xyXG4gICAgdGhpcy5kaWFsb2dJZCA9IG9wZW5Db250ZXh0IS5pZDtcclxuXHJcbiAgICBpZiAodGhpcy5jb250ZXh0LmFsdGVybmF0ZVNhdmVMYWJlbCkge1xyXG4gICAgICB0aGlzLmNvbnRleHQuc2F2ZU9uRW50ZXIgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKiBFcnJvciB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIGVycm9yIGJhbm5lciAqL1xyXG4gIHB1YmxpYyBlcnJvcj86IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5hZGRGb3JtQ29udHJvbHMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvblNhdmUoc291cmNlOiBTYXZlU291cmNlKTogdm9pZCB7XHJcbiAgICB0aGlzLmZvcm1Hcm91cC5tYXJrQWxsQXNUb3VjaGVkKCk7XHJcblxyXG4gICAgaWYgKHRoaXMuZm9ybUdyb3VwLnZhbGlkKSB7XHJcbiAgICAgIGxldCBmb3JtVmFsdWVzID0gdGhpcy5mb3JtR3JvdXAuZ2V0UmF3VmFsdWUoKTtcclxuICAgICAgaWYgKGZvcm1WYWx1ZXMudGV4dGJveCkge1xyXG4gICAgICAgIHRoaXMuY29udGV4dC50ZXh0Ym94VmFsdWUgPSBmb3JtVmFsdWVzLnRleHRib3g7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29udGV4dC5zYXZlU291cmNlID0gc291cmNlO1xyXG5cclxuICAgICAgaWYgKHRoaXMuY29udGV4dC5pbmxpbmVDb25maXJtQWN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5kb0lubGluZUNvbmZpcm1BY3Rpb24oKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm9uRGlhbG9nU2F2ZS5lbWl0KHRoaXMuY29udGV4dCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodGhpcy5jb250ZXh0LnZhbGlkYXRpb25FcnJvck1lc3NhZ2UpIHtcclxuICAgICAgdGhpcy5lcnJvciA9IHRoaXMuY29udGV4dC52YWxpZGF0aW9uRXJyb3JNZXNzYWdlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQ2FuY2VsKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkRpYWxvZ0NhbmNlbC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGRzIHRoZSB0ZXh0Ym94IGZvcm0gY29udHJvbCB0byBvdXIgZm9ybSBncm91cCBpZiBpdHMgY29uZmlndXJlZCB0byBiZSB2aXNpYmxlXHJcbiAgICogV2lsbCBhbHNvIGFkZCB0aGUgcmVxdWlyZWQgdmFsaWRhdG9yIGlmIHJlcXVlc3RlZFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWRkRm9ybUNvbnRyb2xzKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29udGV4dC50ZXh0Ym94VHlwZSkge1xyXG4gICAgICBsZXQgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gICAgICBpZiAodGhpcy5jb250ZXh0LnRleHRib3hSZXF1aXJlZCkge1xyXG4gICAgICAgIHZhbGlkYXRvcnMucHVzaChWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5jb250ZXh0LnRleHRib3hWYWxpZGF0b3JzKSB7XHJcbiAgICAgICAgdmFsaWRhdG9ycy5wdXNoKC4uLnRoaXMuY29udGV4dC50ZXh0Ym94VmFsaWRhdG9ycyk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5mb3JtR3JvdXAuYWRkQ29udHJvbCgndGV4dGJveCcsIG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycsIHZhbGlkYXRvcnMpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYXN5bmMgZG9JbmxpbmVDb25maXJtQWN0aW9uKCkge1xyXG4gICAgdGhpcy5zdGF0dXMuc2V0U3RhdHVzKCdwZW5kaW5nJywgdGhpcy5jb250ZXh0LmlubGluZUNvbmZpcm1QZW5kaW5nTWVzc2FnZSk7XHJcblxyXG4gICAgbGV0IHJlc3VsdCA9IGF3YWl0IHRoaXMuY29udGV4dC5pbmxpbmVDb25maXJtQWN0aW9uISgpO1xyXG5cclxuICAgIHRoaXMuc3RhdHVzLnNldFN0YXR1cygnbm9EYXRhJywgcmVzdWx0Lm1lc3NhZ2UsIHtcclxuICAgICAgaWQ6ICdpbmxpbmVDb25maXJtQ2xvc2UnLFxyXG4gICAgICBsYWJlbDogJ0Nsb3NlJyxcclxuICAgICAgaWNvbjogcmVzdWx0LmlzU3VjY2VzcyA/ICdpY29uLWNoZWNrLWNpcmNsZScgOiAnaWNvbi1lcnJvcicsXHJcbiAgICAgIGNsYXNzbGlzdDogcmVzdWx0LmlzU3VjY2VzcyA/ICdmb250LWNvbG9yLXN1Y2Nlc3MnIDogJ2ZvbnQtY29sb3ItZXJyb3InLFxyXG4gICAgICBvbkNsaWNrOiAoKSA9PiB7IHJlc3VsdC5pc1N1Y2Nlc3MgPyB0aGlzLm9uRGlhbG9nU2F2ZS5lbWl0KHRoaXMuY29udGV4dCkgOiB0aGlzLm9uRGlhbG9nQ2FuY2VsLmVtaXQoKSB9XHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuIiwiPHNlY3Rpb24gZWNPdmVybGF5XHJcbiAgICAgICAgIFtzdGF0dXNdPVwic3RhdHVzPy5zdGF0dXNcIlxyXG4gICAgICAgICBbbWVzc2FnZV09XCJzdGF0dXM/Lm1lc3NhZ2VcIlxyXG4gICAgICAgICBbYWN0aW9uXT1cInN0YXR1cz8uYWN0aW9uXCJcclxuICAgICAgICAgW25vRGF0YVRlbXBsYXRlXT1cImlubGluZUNvbmZpcm1SZXN1bHRcIlxyXG4gICAgICAgICBvdmVybGF5Q2xhc3NMaXN0PVwicC0wXCJcclxuICAgICAgICAgY2xhc3M9XCJiZy1ib2R5IGZsZXgtZ3JvdyBkLWZsZXhcIj5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1Hcm91cFwiIGNsYXNzPVwiZmxleC1ncm93IGZsZXgtY29sdW1uIGNvbmZpcm0tY29udGVudCB0ZXh0LWJvZHktMVwiPlxyXG4gICAgPHNlY3Rpb24gY2xhc3M9XCJmbGV4LWdyb3dcIj5cclxuICAgICAgPGgyIGNsYXNzPVwiZm9udC13ZWlnaHQtYm9sZCBtYi0zXCIgKm5nSWY9XCJjb250ZXh0Py50aXRsZVwiPnt7Y29udGV4dD8udGl0bGV9fTwvaDI+XHJcbiAgICAgIDxlYy1iYW5uZXIgKm5nSWY9XCJlcnJvclwiIFt0ZXh0XT1cImVycm9yIHwgdHJhbnNsYXRlXCIgYmFubmVyU3R5bGU9XCJub3JtYWxcIiBjbGFzcz1cIm1iLTNcIj48L2VjLWJhbm5lcj5cclxuICAgICAgPGRpdiAqbmdJZj1cImNvbnRleHQ/Lm1lc3NhZ2VcIiBbaW5uZXJIdG1sXT1cImNvbnRleHQ/Lm1lc3NhZ2UgfCB0cmFuc2xhdGVcIiBjbGFzcz1cIm1iLTNcIj48L2Rpdj5cclxuICAgICAgPGVjLXRleHRib3ggaWQ9XCJjb25maXJtVGV4dGJveFwiXHJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGV4dD8udGV4dGJveFR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICBbZm9ybU1vZGVsXT1cImZvcm1Hcm91cC5nZXQoJ3RleHRib3gnKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJjb250ZXh0Py50ZXh0Ym94UmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8udGV4dGJveExhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiY29udGV4dD8udGV4dGJveFR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICBbcm93c109XCJjb250ZXh0Py50ZXh0YXJlYVJvd3NcIlxyXG4gICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29udGV4dD8udGV4dGJveFBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgICAgICAgICAgW3VwcGVyQ2FzZV09XCJjb250ZXh0Py50ZXh0Ym94VXBwZXJjYXNlXCI+XHJcbiAgICAgIDwvZWMtdGV4dGJveD5cclxuICAgIDwvc2VjdGlvbj5cclxuICAgIDxmb290ZXIgY2xhc3M9XCJtdC1hdXRvIGZsZXgtc2hyaW5rIGQtZmxleCBweS0yIGZsZXgtcm93LXJldmVyc2VcIj5cclxuICAgICAgPGVjLWJ1dHRvbiBpZD1cInNhdmVDb25maXJtQnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yXCJcclxuICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiY29udGV4dD8uc2F2ZUJ1dHRvblR5cGUgPyBjb250ZXh0Py5zYXZlQnV0dG9uVHlwZSA6ICdwcmltYXJ5J1wiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py5zYXZlTGFiZWwgPyBjb250ZXh0Py5zYXZlTGFiZWwgOiAnU2F2ZSdcIlxyXG4gICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cIiFjb250ZXh0Py50ZXh0Ym94VHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtpc1N1Ym1pdF09XCJjb250ZXh0Py5zYXZlT25FbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgIChjbGlja2VkKT1cIm9uU2F2ZSgncHJpbWFyeScpXCI+XHJcbiAgICAgIDwvZWMtYnV0dG9uPlxyXG4gICAgICA8ZWMtYnV0dG9uIGlkPVwiYWx0ZXJuYXRlU2F2ZUNvbmZpcm1CdXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnRleHQ/LmFsdGVybmF0ZVNhdmVMYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtMlwiXHJcbiAgICAgICAgICAgICAgICAgIFt0eXBlXT1cImNvbnRleHQ/LmFsdGVybmF0ZVNhdmVCdXR0b25UeXBlID8gY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUJ1dHRvblR5cGUgOiAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwib25TYXZlKCdhbHRlcm5hdGUnKVwiPlxyXG4gICAgICA8L2VjLWJ1dHRvbj5cclxuICAgICAgPGVjLWJ1dHRvbiAgKm5nSWY9XCIhY29udGV4dD8uaGlkZUNhbmNlbFwiXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwiY2FuY2VsQ29uZmlybUJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtYXV0b1wiXHJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8uY2FuY2VsTGFiZWwgPyBjb250ZXh0Py5jYW5jZWxMYWJlbCA6ICdDYW5jZWwnXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwib25DYW5jZWwoKVwiPlxyXG4gICAgICA8L2VjLWJ1dHRvbj5cclxuICAgIDwvZm9vdGVyPlxyXG4gIDwvZm9ybT5cclxuPC9zZWN0aW9uPlxyXG5cclxuPG5nLXRlbXBsYXRlICNpbmxpbmVDb25maXJtUmVzdWx0PlxyXG4gIDxzZWN0aW9uIGNsYXNzPVwiZmxleC1ncm93IGFsaWduLXNlbGYtc3RyZXRjaCBjb25maXJtLWNvbnRlbnQgdGV4dC1ib2R5LTFcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgPGkgY2xhc3M9XCJlYy1pY29uIHt7c3RhdHVzPy5hY3Rpb24/Lmljb259fSB7e3N0YXR1cz8uYWN0aW9uPy5jbGFzc2xpc3R9fSBpbmxpbmUtY29uZmlybS1yZXN1bHQtaWNvblwiPjwvaT5cclxuICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cInN0YXR1cz8ubWVzc2FnZSB8IHRyYW5zbGF0ZVwiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IHB0LTIgbXQtYXV0b1wiPlxyXG4gICAgICA8ZWMtYnV0dG9uIGlkPVwiaW5saW5lQ29uZmlybUNsb3NlXCJcclxuICAgICAgICAgICAgICAgICBsYWJlbD1cIkNsb3NlXCJcclxuICAgICAgICAgICAgICAgICB0eXBlPVwic2Vjb25kYXJ5XCJcclxuICAgICAgICAgICAgICAgICBjbGFzcz1cIm1sLWF1dG9cIlxyXG4gICAgICAgICAgICAgICAgIChjbGlja2VkKT1cInN0YXR1cz8uYWN0aW9uPy5vbkNsaWNrISgpXCJcclxuICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cInRydWVcIj5cclxuICAgICAgPC9lYy1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L3NlY3Rpb24+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvZGlzcGxheS9jb25maXJtL2NvbmZpcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2Rpc3BsYXkvY29uZmlybS9jb25maXJtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBZSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUsvRixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDakUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUFTL0IsTUFBTSxPQUFPLG9CQUFvQjtJQUFqQztRQUNFLHlGQUF5RjtRQUNsRixPQUFFLEdBQVcsRUFBRSxDQUFDO1FBK0J2Qjs7O1dBR0c7UUFDSSxvQkFBZSxHQUFhLEtBQUssQ0FBQztRQUt6Qyw2Q0FBNkM7UUFDdEMscUJBQWdCLEdBQWEsS0FBSyxDQUFDO1FBRTFDOzs7O1dBSUc7UUFDSSxpQkFBWSxHQUFZLENBQUMsQ0FBQztRQVlqQyxpQ0FBaUM7UUFDMUIsY0FBUyxHQUFZLE1BQU0sQ0FBQyxDQUFDLE9BQU87UUFFM0MsZ0NBQWdDO1FBQ3pCLG1CQUFjLEdBQWdCLFNBQVMsQ0FBQztRQUUvQyxtQ0FBbUM7UUFDNUIsZ0JBQVcsR0FBWSxRQUFRLENBQUMsQ0FBQyxPQUFPO1FBRS9DLDZEQUE2RDtRQUN0RCxlQUFVLEdBQWEsS0FB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bnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9yRm4sIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBCdXR0b25UeXBlIH0gZnJvbSAnLi4vLi4vY29udHJvbHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUZXh0Ym94VHlwZSB9IGZyb20gJy4uLy4uL2NvbnRyb2xzL3RleHRib3gvdGV4dGJveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dDb250ZW50IH0gZnJvbSAnLi4vZGlhbG9nL2RpYWxvZy1jb250ZW50JztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJy4uL3ZpZXctb3ZlcmxheS92aWV3LW92ZXJsYXkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG50eXBlIFNhdmVTb3VyY2UgPSAncHJpbWFyeSd8J2FsdGVybmF0ZSc7XHJcblxyXG5leHBvcnQgdHlwZSBDdXN0b21BY3Rpb25SZXN1bHQgPSB7XHJcbiAgbWVzc2FnZTogc3RyaW5nO1xyXG4gIGlzU3VjY2VzczogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtRGlhbG9nQ29udGV4dCB7XHJcbiAgLyoqIElkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gY29uZmlybSBjb21wb25lbnQgY29udGV4dHMgZW1pdHRlZCBieSB0aGUgZGlhbG9nIHNlcnZpY2UgKi9cclxuICBwdWJsaWMgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuICAvKiogT3B0aW9uYWwgdGl0bGUgb2YgdGhlIGNvbmZpcm0gKi9cclxuICBwdWJsaWMgdGl0bGU/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBtZXNzYWdlICovXHJcbiAgcHVibGljIG1lc3NhZ2U/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBjaGVja0NvbmZpcm1cclxuICAgKiB0aGlzIHdpbGwgZGV0ZXJtaW5lIGlmIGVjLWNoZWNrYm94IGlzIGF2YWlsYWJsZSBvciBub1xyXG4gICAqIGluIG9yZGVyIHRvIGRlbGV0ZSBvciBtb3ZlIHRvIG5vIHBhcmVudCB0aGUgZW50aXR5XHJcbiAgICovXHJcbiAgcHVibGljIGNoZWNrQ29uZmlybT86Ym9vbGVhbjtcclxuXHJcbiAgLyoqXHJcbiAgICogY2hlY2tib3hDb250ZW50XHJcbiAgICogRGV0ZXJtaW5lIHRoZSBsYWJlbCBuZXh0IHRvIHRoZSBjaGVja2JveFxyXG4gICAqIGlmIGNoZWNrQ29uZmlybSBpcyB0cnVlIG90aGVyd2lzZSBpcyBub3QgdmlzaWJsZVxyXG4gICAqL1xyXG5cclxuICBwdWJsaWMgY2hlY2tib3hUZXh0PzpzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHRleHRib3ggdHlwZSwgdGhpcyB3aWxsIGRldGVybWluZSB3aGV0aGVyXHJcbiAgICogYW4gaW5wdXQgaXMgdmlzaWJsZSBvciBub3RcclxuICAgKi9cclxuICBwdWJsaWMgdGV4dGJveFR5cGU/OiBUZXh0Ym94VHlwZTtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIHRleHRib3ggbGFiZWwgKi9cclxuICBwdWJsaWMgdGV4dGJveExhYmVsPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25hbCByZXF1aXJlZCBmbGFnIGZvciB0aGUgdGV4dGJveCwgd2lsbCBzZXRcclxuICAgKiBhIHZhbGlkYXRvciBvbiB0aGUgaW5wdXQgaWYgdHJ1ZVxyXG4gICAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94UmVxdWlyZWQ/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBhcnJheSBvZiB2YWxpZGF0b3JzIHRvIGFkZCB0byB0aGUgdGV4dGJveCBmb3JtIGNvbnRyb2wuICovXHJcbiAgcHVibGljIHRleHRib3hWYWxpZGF0b3JzPzogVmFsaWRhdG9yRm5bXTtcclxuXHJcbiAgLyoqIFNldHMgdGhlIHRleHRib3gncyB1cHBlcmNhc2UgcGFyYW1ldGVyICovXHJcbiAgcHVibGljIHRleHRib3hVcHBlcmNhc2U/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHRleHRib3ggaGVpZ2h0IChpbiByb3dzKS5cclxuICAgKiBPbmx5IGFwcGxpZXMgdG8gbXVsdGktbGluZSB0eXBlLlxyXG4gICAqIERlZmF1bHQgMy5cclxuICAgKi9cclxuICBwdWJsaWMgdGV4dGFyZWFSb3dzPzogbnVtYmVyID0gMztcclxuXHJcbiAgLyoqIE9wdGlvbmFsIHRleHRib3ggcGxhY2Vob2xkZXIgdGV4dCAqL1xyXG4gIHB1YmxpYyB0ZXh0Ym94UGxhY2Vob2xkZXI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBlcnJvciBtZXNzYWdlIHRvIGRpc3BsYXkgd2hlbiB0ZXh0Ym94ICovXHJcbiAgcHVibGljIHZhbGlkYXRpb25FcnJvck1lc3NhZ2U/OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBWYWx1ZSByZXR1cm5lZCBmcm9tIHRoZSBpbnB1dCBpZiBlbmFibGVkICovXHJcbiAgcHVibGljIHRleHRib3hWYWx1ZT86IHN0cmluZztcclxuICBwdWJsaWMgY2hlY2tib3hWYWx1ZT86Ym9vbGVhbjtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIHNhdmUgYnV0dG9uIGxhYmVsICovXHJcbiAgcHVibGljIHNhdmVMYWJlbD86IHN0cmluZyA9ICdTYXZlJzsgLy8gTE9DT1xyXG5cclxuICAvKiogT3B0aW9uYWwgc2F2ZSBidXR0b24gdHlwZSAqL1xyXG4gIHB1YmxpYyBzYXZlQnV0dG9uVHlwZT86IEJ1dHRvblR5cGUgPSAncHJpbWFyeSc7XHJcblxyXG4gIC8qKiBPcHRpb25hbCBjYW5jZWwgYnV0dG9uIGxhYmVsICovXHJcbiAgcHVibGljIGNhbmNlbExhYmVsPzogc3RyaW5nID0gJ0NhbmNlbCc7IC8vIExPQ09cclxuXHJcbiAgLyoqIE9wdGlvbmFsIGZsYWcgZm9yIGhpZGluZyB0aGUgY2FuY2VsIChzZWNvbmRhcnkpIGJ1dHRvbiAqL1xyXG4gIHB1YmxpYyBoaWRlQ2FuY2VsPzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKiogV2hlbiB0cnVlLCBhZGRzIHRoZSBzdWJtaXQgdGFnIHRvIHRoZSBzYXZlIGJ1dHRvbiBzbyBoaXR0aW5nIGVudGVyIHRyaWdnZXJzIHRoZSBzYXZlICovXHJcbiAgcHVibGljIHNhdmVPbkVudGVyPzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKiogT3B0aW9uYWwgYWx0ZXJuYXRlIHNhdmUgYnV0dG9uIGxhYmVsICovXHJcbiAgcHVibGljIGFsdGVybmF0ZVNhdmVMYWJlbD86IHN0cmluZyA9IHVuZGVmaW5lZDtcclxuXHJcbiAgLyoqIE9wdGlvbmFsIGFsdGVybmF0ZSBzYXZlIGJ1dHRvbiB0eXBlICovXHJcbiAgcHVibGljIGFsdGVybmF0ZVNhdmVCdXR0b25UeXBlPzogQnV0dG9uVHlwZSA9IHVuZGVmaW5lZDtcclxuXHJcbiAgLyoqXHJcbiAgICogVXNlZCB0byBrbm93IHdoaWNoIHNhdmUgYnV0dG9uIHdhcyBzZWxlY3RlZCBpbiBjYXNlIHRoZSBjYWxsaW5nIGNvbXBvbmVudFxyXG4gICAqIGlzIHV0aWxpemluZyB0aGUgYWx0ZXJuYXRlIHNhdmUgYnV0dG9uXHJcbiAgICovXHJcbiAgcHVibGljIHNhdmVTb3VyY2U/OiBTYXZlU291cmNlID0gJ3ByaW1hcnknO1xyXG5cclxuICAvKipcclxuICAgKiBXaGVuIHByb3ZpZGVkLCB0aGUgY29uZmlybSB3aWxsIHNob3cgYSBwZW5kaW5nIHN0YXRlIGFuZCBjYWxsIHRoaXMsIHRoZW4gdXBvblxyXG4gICAqIGNvbXBsZXRpb24gZGlzcGxheSB0aGUgcmVzdWx0IG1lc3NhZ2UgYW5kIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZFxyXG4gICAqIHN1Y2Nlc3NmdWxseSwgdGhlIGNsb3NlIGJ1dHRvbiB3aWxsIGVtaXQgb25EaWFsb2dTYXZlLiBJZiB0aGUgcHJvbWlzZSBpcyByZWplY3RlZCxcclxuICAgKiB0aGUgY2xvc2UgYnV0dG9uIHdpbGwgZW1pdCBvbkRpYWxvZ0NhbmNlbC5cclxuICAgKi9cclxuICBwdWJsaWMgaW5saW5lQ29uZmlybUFjdGlvbj86ICgpID0+IFByb21pc2U8Q3VzdG9tQWN0aW9uUmVzdWx0PjtcclxuXHJcbiAgLyoqIFRoZSBtZXNzYWdlIHRvIGJlIGRpc3BsYXllZCB3aGlsZSBpbmxpbmVDb25maXJtQWN0aW9uIGlzIHBlbmRpbmcuICovXHJcbiAgcHVibGljIGlubGluZUNvbmZpcm1QZW5kaW5nTWVzc2FnZT86IHN0cmluZyA9ICcnO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjLWNvbmZpcm0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb25maXJtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb25maXJtLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvbmZpcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIERpYWxvZ0NvbnRlbnQ8Q29uZmlybURpYWxvZ0NvbnRleHQ+LCBPbkRlc3Ryb3l7XHJcblxyXG4gIHB1YmxpYyBkaWFsb2dJZDogc3RyaW5nID0gJ0NvbmZpcm0nO1xyXG5cclxuICAvKiogRm9ybSBHcm91cCB0byBob2xkIGFueSBmb3JtIGNvbnRyb2xzIG5lZWRlZCAqL1xyXG4gIHB1YmxpYyBmb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSk7XHJcblxyXG4gIHB1YmxpYyBzdGF0dXMgPSBuZXcgT3ZlcmxheSgnaGFzRGF0YScpO1xyXG5cclxuICBwdWJsaWMgc2hvd1RleHRCb3g6Ym9vbGVhbiA9IHRydWU7XHJcblxyXG4gIHByaXZhdGUgZGVzdHJveWVkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogUHJvdmlkZWQgYnkgdGhlIGNhbGxpbmcgY29tcG9uZW50IHRvIHRlbGwgdGhlIGNvbmZpcm0gd2hhdCB0byBzaG93XHJcbiAgICogYW5kIGlzIHVzZWQgb24gc2F2ZSB0byBzZW5kIGJhY2sgYW55IGVudGVyZWQgdmFsdWVzIGZyb20gdGhlIHVzZXJcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgY29udGV4dCE6IENvbmZpcm1EaWFsb2dDb250ZXh0O1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIG9uRGlhbG9nU2F2ZTogRXZlbnRFbWl0dGVyPENvbmZpcm1EaWFsb2dDb250ZXh0PiA9IG5ldyBFdmVudEVtaXR0ZXI8Q29uZmlybURpYWxvZ0NvbnRleHQ+KCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkRpYWxvZ0NhbmNlbDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBwdWJsaWMgb25PcGVuKG9wZW5Db250ZXh0PzogQ29uZmlybURpYWxvZ0NvbnRleHQpOiB2b2lkIHtcclxuICAgIHRoaXMuY29udGV4dCA9IG9wZW5Db250ZXh0ITtcclxuICAgIHRoaXMuZGlhbG9nSWQgPSBvcGVuQ29udGV4dCEuaWQ7XHJcblxyXG4gICAgaWYgKHRoaXMuY29udGV4dC5hbHRlcm5hdGVTYXZlTGFiZWwpIHtcclxuICAgICAgdGhpcy5jb250ZXh0LnNhdmVPbkVudGVyID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKiogRXJyb3IgdG8gYmUgZGlzcGxheWVkIGluIHRoZSBlcnJvciBiYW5uZXIgKi9cclxuICBwdWJsaWMgZXJyb3I/OiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYWRkRm9ybUNvbnRyb2xzKCk7XHJcbiAgICB0aGlzLnNldFZhbGlkYXRpb25zKCk7XHJcbiAgICB0aGlzLmxpc3RlbkNoZWNrQm94KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25TYXZlKHNvdXJjZTogU2F2ZVNvdXJjZSk6IHZvaWQge1xyXG4gICAgdGhpcy5mb3JtR3JvdXAubWFya0FsbEFzVG91Y2hlZCgpO1xyXG5cclxuICAgIGlmICh0aGlzLmZvcm1Hcm91cC52YWxpZCkge1xyXG4gICAgICBsZXQgZm9ybVZhbHVlcyA9IHRoaXMuZm9ybUdyb3VwLmdldFJhd1ZhbHVlKCk7XHJcbiAgICAgIGlmIChmb3JtVmFsdWVzLnRleHRib3gpIHtcclxuICAgICAgICB0aGlzLmNvbnRleHQudGV4dGJveFZhbHVlID0gZm9ybVZhbHVlcy50ZXh0Ym94O1xyXG4gICAgICB9XHJcbiAgICAgIGlmKHRoaXMuY29udGV4dC5jaGVja0NvbmZpcm0pIHtcclxuICAgICAgICB0aGlzLmNvbnRleHQuY2hlY2tib3hWYWx1ZSA9IGZvcm1WYWx1ZXMuY2hlY2tib3ggPyBmb3JtVmFsdWVzLmNoZWNrYm94IDogZmFsc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29udGV4dC5zYXZlU291cmNlID0gc291cmNlO1xyXG5cclxuICAgICAgaWYgKHRoaXMuY29udGV4dC5pbmxpbmVDb25maXJtQWN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5kb0lubGluZUNvbmZpcm1BY3Rpb24oKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm9uRGlhbG9nU2F2ZS5lbWl0KHRoaXMuY29udGV4dCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodGhpcy5jb250ZXh0LnZhbGlkYXRpb25FcnJvck1lc3NhZ2UpIHtcclxuICAgICAgdGhpcy5lcnJvciA9IHRoaXMuY29udGV4dC52YWxpZGF0aW9uRXJyb3JNZXNzYWdlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uQ2FuY2VsKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkRpYWxvZ0NhbmNlbC5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XHJcbiAgICB0aGlzLmRlc3Ryb3llZC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGxpc3RlbkNoZWNrQm94KCk6dm9pZCB7XHJcbiAgICB0aGlzLmZvcm1Hcm91cC5nZXQoJ2NoZWNrYm94Jyk/LnZhbHVlQ2hhbmdlcy5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpXHJcbiAgICApLnN1YnNjcmliZSh2YWx1ZSA9PiB7XHJcbiAgICAgIHRoaXMuc2hvd1RleHRCb3ggPSB2YWx1ZTtcclxuICAgICAgdGhpcy5zZXRWYWxpZGF0aW9ucygpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFZhbGlkYXRpb25zKCk6dm9pZCB7XHJcbiAgICBpZih0aGlzLnNob3dUZXh0Qm94KXtcclxuICAgICAgdGhpcy5mb3JtR3JvdXAuY29udHJvbHNbJ3RleHRib3gnXT8uZW5hYmxlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5jb250cm9sc1sndGV4dGJveCddPy5kaXNhYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGRzIHRoZSB0ZXh0Ym94IGZvcm0gY29udHJvbCB0byBvdXIgZm9ybSBncm91cCBpZiBpdHMgY29uZmlndXJlZCB0byBiZSB2aXNpYmxlXHJcbiAgICogV2lsbCBhbHNvIGFkZCB0aGUgcmVxdWlyZWQgdmFsaWRhdG9yIGlmIHJlcXVlc3RlZFxyXG4gICAqL1xyXG4gIHByaXZhdGUgYWRkRm9ybUNvbnRyb2xzKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuY29udGV4dC50ZXh0Ym94VHlwZSkge1xyXG4gICAgICBsZXQgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFtdO1xyXG4gICAgICBpZiAodGhpcy5jb250ZXh0LnRleHRib3hSZXF1aXJlZCkge1xyXG4gICAgICAgIHZhbGlkYXRvcnMucHVzaChWYWxpZGF0b3JzLnJlcXVpcmVkKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5jb250ZXh0LnRleHRib3hWYWxpZGF0b3JzKSB7XHJcbiAgICAgICAgdmFsaWRhdG9ycy5wdXNoKC4uLnRoaXMuY29udGV4dC50ZXh0Ym94VmFsaWRhdG9ycyk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5mb3JtR3JvdXAuYWRkQ29udHJvbCgndGV4dGJveCcsIG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJycsIHZhbGlkYXRvcnMpKTtcclxuICAgIH1cclxuXHJcbiAgICBpZih0aGlzLmNvbnRleHQuY2hlY2tDb25maXJtKXtcclxuICAgICAgdGhpcy5zaG93VGV4dEJveCA9IGZhbHNlO1xyXG4gICAgICBjb25zdCBjaGVja2JveENvbnRyb2wgPSBuZXcgVW50eXBlZEZvcm1Db250cm9sKCcnKTtcclxuICAgICAgdGhpcy5mb3JtR3JvdXAuYWRkQ29udHJvbCgnY2hlY2tib3gnLCBjaGVja2JveENvbnRyb2wpOyAgICAgIFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhc3luYyBkb0lubGluZUNvbmZpcm1BY3Rpb24oKSB7XHJcbiAgICB0aGlzLnN0YXR1cy5zZXRTdGF0dXMoJ3BlbmRpbmcnLCB0aGlzLmNvbnRleHQuaW5saW5lQ29uZmlybVBlbmRpbmdNZXNzYWdlKTtcclxuXHJcbiAgICBsZXQgcmVzdWx0ID0gYXdhaXQgdGhpcy5jb250ZXh0LmlubGluZUNvbmZpcm1BY3Rpb24hKCk7XHJcblxyXG4gICAgdGhpcy5zdGF0dXMuc2V0U3RhdHVzKCdub0RhdGEnLCByZXN1bHQubWVzc2FnZSwge1xyXG4gICAgICBpZDogJ2lubGluZUNvbmZpcm1DbG9zZScsXHJcbiAgICAgIGxhYmVsOiAnQ2xvc2UnLFxyXG4gICAgICBpY29uOiByZXN1bHQuaXNTdWNjZXNzID8gJ2ljb24tY2hlY2stY2lyY2xlJyA6ICdpY29uLWVycm9yJyxcclxuICAgICAgY2xhc3NsaXN0OiByZXN1bHQuaXNTdWNjZXNzID8gJ2ZvbnQtY29sb3Itc3VjY2VzcycgOiAnZm9udC1jb2xvci1lcnJvcicsXHJcbiAgICAgIG9uQ2xpY2s6ICgpID0+IHsgcmVzdWx0LmlzU3VjY2VzcyA/IHRoaXMub25EaWFsb2dTYXZlLmVtaXQodGhpcy5jb250ZXh0KSA6IHRoaXMub25EaWFsb2dDYW5jZWwuZW1pdCgpIH1cclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8c2VjdGlvbiBlY092ZXJsYXlcclxuICAgICAgICAgW3N0YXR1c109XCJzdGF0dXM/LnN0YXR1c1wiXHJcbiAgICAgICAgIFttZXNzYWdlXT1cInN0YXR1cz8ubWVzc2FnZVwiXHJcbiAgICAgICAgIFthY3Rpb25dPVwic3RhdHVzPy5hY3Rpb25cIlxyXG4gICAgICAgICBbbm9EYXRhVGVtcGxhdGVdPVwiaW5saW5lQ29uZmlybVJlc3VsdFwiXHJcbiAgICAgICAgIG92ZXJsYXlDbGFzc0xpc3Q9XCJwLTBcIlxyXG4gICAgICAgICBjbGFzcz1cImJnLWJvZHkgZmxleC1ncm93IGQtZmxleFwiPlxyXG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCIgY2xhc3M9XCJmbGV4LWdyb3cgZmxleC1jb2x1bW4gY29uZmlybS1jb250ZW50IHRleHQtYm9keS0xXCI+XHJcbiAgICA8c2VjdGlvbiBjbGFzcz1cImZsZXgtZ3Jvd1wiPlxyXG4gICAgICA8aDIgY2xhc3M9XCJmb250LXdlaWdodC1ib2xkIG1iLTNcIiAqbmdJZj1cImNvbnRleHQ/LnRpdGxlXCI+e3tjb250ZXh0Py50aXRsZX19PC9oMj5cclxuICAgICAgPGVjLWJhbm5lciAqbmdJZj1cImVycm9yXCIgW3RleHRdPVwiZXJyb3IgfCB0cmFuc2xhdGVcIiBiYW5uZXJTdHlsZT1cIm5vcm1hbFwiIGNsYXNzPVwibWItM1wiPjwvZWMtYmFubmVyPlxyXG4gICAgICA8ZGl2ICpuZ0lmPVwiY29udGV4dD8ubWVzc2FnZVwiIFtpbm5lckh0bWxdPVwiY29udGV4dD8ubWVzc2FnZSB8IHRyYW5zbGF0ZVwiIGNsYXNzPVwibWItM1wiPjwvZGl2PlxyXG4gICAgICBcclxuICAgICAgPGVjLWNoZWNrYm94ICpuZ0lmPVwiY29udGV4dD8uY2hlY2tDb25maXJtXCJcclxuICAgICAgICAgICAgICAgICAgICBbZm9ybU1vZGVsXT1cImZvcm1Hcm91cC5nZXQoJ2NoZWNrYm94JylcIlxyXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJjb25maXJtQ2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py5jaGVja2JveFRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPjwvZWMtY2hlY2tib3g+XHJcbiAgICAgIFxyXG4gICAgICA8ZWMtdGV4dGJveCBpZD1cImNvbmZpcm1UZXh0Ym94XCJcclxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCIoY29udGV4dD8udGV4dGJveFR5cGUgJiYgIWNvbnRleHQ/LmNoZWNrQ29uZmlybSkgfHwgc2hvd1RleHRCb3hcIlxyXG4gICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cInRydWVcIlxyXG4gICAgICAgICAgICAgICAgICBbZm9ybU1vZGVsXT1cImZvcm1Hcm91cC5nZXQoJ3RleHRib3gnKVwiXHJcbiAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJjb250ZXh0Py50ZXh0Ym94UmVxdWlyZWRcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8udGV4dGJveExhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiY29udGV4dD8udGV4dGJveFR5cGVcIlxyXG4gICAgICAgICAgICAgICAgICBbcm93c109XCJjb250ZXh0Py50ZXh0YXJlYVJvd3NcIlxyXG4gICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiY29udGV4dD8udGV4dGJveFBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgICAgICAgICAgW3VwcGVyQ2FzZV09XCJjb250ZXh0Py50ZXh0Ym94VXBwZXJjYXNlXCI+XHJcbiAgICAgIDwvZWMtdGV4dGJveD5cclxuICAgIDwvc2VjdGlvbj5cclxuICAgIDxmb290ZXIgY2xhc3M9XCJtdC1hdXRvIGZsZXgtc2hyaW5rIGQtZmxleCBweS0yIGZsZXgtcm93LXJldmVyc2VcIj5cclxuICAgICAgPGVjLWJ1dHRvbiBpZD1cInNhdmVDb25maXJtQnV0dG9uXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yXCJcclxuICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiY29udGV4dD8uc2F2ZUJ1dHRvblR5cGUgPyBjb250ZXh0Py5zYXZlQnV0dG9uVHlwZSA6ICdwcmltYXJ5J1wiXHJcbiAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJjb250ZXh0Py5zYXZlTGFiZWwgPyBjb250ZXh0Py5zYXZlTGFiZWwgOiAnU2F2ZSdcIlxyXG4gICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cIiFjb250ZXh0Py50ZXh0Ym94VHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtpc1N1Ym1pdF09XCJjb250ZXh0Py5zYXZlT25FbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgIChjbGlja2VkKT1cIm9uU2F2ZSgncHJpbWFyeScpXCI+XHJcbiAgICAgIDwvZWMtYnV0dG9uPlxyXG4gICAgICA8ZWMtYnV0dG9uIGlkPVwiYWx0ZXJuYXRlU2F2ZUNvbmZpcm1CdXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnRleHQ/LmFsdGVybmF0ZVNhdmVMYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtMlwiXHJcbiAgICAgICAgICAgICAgICAgIFt0eXBlXT1cImNvbnRleHQ/LmFsdGVybmF0ZVNhdmVCdXR0b25UeXBlID8gY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUJ1dHRvblR5cGUgOiAncHJpbWFyeSdcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8uYWx0ZXJuYXRlU2F2ZUxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwib25TYXZlKCdhbHRlcm5hdGUnKVwiPlxyXG4gICAgICA8L2VjLWJ1dHRvbj5cclxuICAgICAgPGVjLWJ1dHRvbiAgKm5nSWY9XCIhY29udGV4dD8uaGlkZUNhbmNlbFwiXHJcbiAgICAgICAgICAgICAgICAgIGlkPVwiY2FuY2VsQ29uZmlybUJ1dHRvblwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtYXV0b1wiXHJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiY29udGV4dD8uY2FuY2VsTGFiZWwgPyBjb250ZXh0Py5jYW5jZWxMYWJlbCA6ICdDYW5jZWwnXCJcclxuICAgICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwib25DYW5jZWwoKVwiPlxyXG4gICAgICA8L2VjLWJ1dHRvbj5cclxuICAgIDwvZm9vdGVyPlxyXG4gIDwvZm9ybT5cclxuPC9zZWN0aW9uPlxyXG5cclxuPG5nLXRlbXBsYXRlICNpbmxpbmVDb25maXJtUmVzdWx0PlxyXG4gIDxzZWN0aW9uIGNsYXNzPVwiZmxleC1ncm93IGFsaWduLXNlbGYtc3RyZXRjaCBjb25maXJtLWNvbnRlbnQgdGV4dC1ib2R5LTFcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgPGkgY2xhc3M9XCJlYy1pY29uIHt7c3RhdHVzPy5hY3Rpb24/Lmljb259fSB7e3N0YXR1cz8uYWN0aW9uPy5jbGFzc2xpc3R9fSBpbmxpbmUtY29uZmlybS1yZXN1bHQtaWNvblwiPjwvaT5cclxuICAgICAgPGRpdiBbaW5uZXJIVE1MXT1cInN0YXR1cz8ubWVzc2FnZSB8IHRyYW5zbGF0ZVwiPjwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IHB0LTIgbXQtYXV0b1wiPlxyXG4gICAgICA8ZWMtYnV0dG9uIGlkPVwiaW5saW5lQ29uZmlybUNsb3NlXCJcclxuICAgICAgICAgICAgICAgICBsYWJlbD1cIkNsb3NlXCJcclxuICAgICAgICAgICAgICAgICB0eXBlPVwic2Vjb25kYXJ5XCJcclxuICAgICAgICAgICAgICAgICBjbGFzcz1cIm1sLWF1dG9cIlxyXG4gICAgICAgICAgICAgICAgIChjbGlja2VkKT1cInN0YXR1cz8uYWN0aW9uPy5vbkNsaWNrISgpXCJcclxuICAgICAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cInRydWVcIj5cclxuICAgICAgPC9lYy1idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L3NlY3Rpb24+XHJcbjwvbmctdGVtcGxhdGU+Il19
|