master-control 0.4.59 → 0.4.60
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/esm2022/lib/age-date/age-date.component.mjs +3 -3
- package/esm2022/lib/dob/dob.component.mjs +5 -5
- package/esm2022/lib/info/info.component.mjs +3 -3
- package/esm2022/lib/label/label.component.mjs +2 -2
- package/esm2022/lib/radio/radio.component.mjs +3 -3
- package/esm2022/lib/select/select.component.mjs +3 -3
- package/fesm2022/master-control.mjs +14 -14
- package/fesm2022/master-control.mjs.map +1 -1
- package/master-control-0.4.60.tgz +0 -0
- package/package.json +1 -1
- package/master-control-0.4.59.tgz +0 -0
|
@@ -194,7 +194,7 @@ export class AgeDateComponent {
|
|
|
194
194
|
useExisting: AgeDateComponent,
|
|
195
195
|
multi: true
|
|
196
196
|
},
|
|
197
|
-
], ngImport: i0, template: "<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\n<mat-form-field\n class=\"w-100\"\n appearance=\"outline\"\n *ngIf=\"field() && field()?.isVisible\"\n [ngStyle]=\"{\n'--custom-border-color': field()?.controlStyle?.borderColor ,\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\n'--custom-bg-color': field()?.controlStyle?.background ,\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\n'--custom-font-size': field()?.controlStyle?.fontSize ,\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\n'--custom-font-color': field()?.controlStyle?.color ,\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\n}\">\n @if(reactiveFormControlobject()) {\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n />\n }@else{\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n />\n }\n <span matSuffix class=\"right-date-text\" *ngIf=\"!this.service.checkIfValueIsEmpty(age) && !this.service.checkIfValueIsEmpty(inputValue) && age >= 0\">\n ({{ age }}) yrs\n </span>\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"true\">\n <img\n src=\"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/date_picker_icon.svg\"\n style=\"width: 16px\"\n matDatepickerToggleIcon\n />\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n <mat-error *ngIf=\"false\">\n {{ field()?.validators?.isRequiredMessage }}\n </mat-error>\n</mat-form-field>\n<div class=\"error-message\" *ngIf=\"false\">\n {{ field()?.validators?.isRequiredMessage }}.\n</div>\n<div class=\"error-message\" *ngIf=\"false\">\n {{ field()?.validators?.patternMessage }}.\n</div>\n", styles: [".field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0}.right-date-text{padding:4px 8px;border-radius:4px;font-weight:600;font-size:12px;color:#444;background:#f5f5f5;margin-right:8px;display:inline-flex;align-items:center;vertical-align:middle;height:20px}::ng-deep .mat-mdc-form-field-icon-suffix{display:inline-flex!important;align-items:center!important;gap:0px!important}.error-message{color:red}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--custom-border-color-focus, #ffbb00)!important;border-width:var(--custom-border-width-focus, 1.5px)!important}::ng-deep .mat-mdc-form-field{background-color:var(--custom-bg-color, #ffffff)!important;border-radius:var(--custom-border-radius , 4px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__leading{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color, #dddddd)!important;border-width:var(--custom-border-width, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--custom-caret-color, #ffbb00)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important;color:var(--custom-font-color, #444444)!important;font-size:12px!important}::ng-deep .mat-form-field-invalid .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field.mat-form-field-disabled{background:var(--custom-bg-color-disabled, #ECECEC)!important}::ng-deep .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--custom-font-color-disabled, #999999)!important}::ng-deep .mdc-label{color:var(--custom-font-color, #444)!important;font-size:var(--custom-font-size, 16px)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important}::placeholder{color:#8f8f8f!important;font-size:12px!important}::ng-deep .mat-mdc-form-field-hint-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error{color:#e00!important;font-size:12px;font-weight:500;font-family:Mulish!important;letter-spacing:0}::ng-deep .mdc-text-field--outlined{--mdc-outlined-text-field-container-shape: var(--custom-border-radius , 4px) !important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none!important}*{font-family:mulish!important}\n"], dependencies: [{ kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i5.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i5.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "ngmodule", type: MomentDateModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
197
|
+
], ngImport: i0, template: "<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\n<mat-form-field\n class=\"w-100\"\n appearance=\"outline\"\n *ngIf=\"field() && field()?.isVisible\"\n [ngStyle]=\"{\n'--custom-border-color': field()?.controlStyle?.borderColor ,\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\n'--custom-bg-color': field()?.controlStyle?.background ,\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\n'--custom-font-size': field()?.controlStyle?.fontSize ,\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\n'--custom-font-color': field()?.controlStyle?.color ,\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\n}\">\n @if(reactiveFormControlobject()) {\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n />\n }@else{\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n />\n }\n <span matSuffix class=\"right-date-text\" *ngIf=\"!this.service.checkIfValueIsEmpty(age) && !this.service.checkIfValueIsEmpty(inputValue) && age >= 0\">\n ({{ age }}) yrs\n </span>\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"!field()?.isDisable\">\n <img\n src=\"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/date_picker_icon.svg\"\n style=\"width: 16px\"\n matDatepickerToggleIcon\n />\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n <mat-error *ngIf=\"false\">\n {{ field()?.validators?.isRequiredMessage }}\n </mat-error>\n</mat-form-field>\n<div class=\"error-message\" *ngIf=\"false\">\n {{ field()?.validators?.isRequiredMessage }}.\n</div>\n<div class=\"error-message\" *ngIf=\"false\">\n {{ field()?.validators?.patternMessage }}.\n</div>\n", styles: [".field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0}.right-date-text{padding:4px 8px;border-radius:4px;font-weight:600;font-size:12px;color:#444;background:#f5f5f5;margin-right:8px;display:inline-flex;align-items:center;vertical-align:middle;height:20px;white-space:nowrap!important}::ng-deep .mat-mdc-form-field-icon-suffix{display:inline-flex!important;align-items:center!important;gap:0px!important}.error-message{color:red}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--custom-border-color-focus, #ffbb00)!important;border-width:var(--custom-border-width-focus, 1.5px)!important}::ng-deep .mat-mdc-form-field{background-color:var(--custom-bg-color, #ffffff)!important;border-radius:var(--custom-border-radius , 4px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__leading{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color, #dddddd)!important;border-width:var(--custom-border-width, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--custom-caret-color, #ffbb00)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important;color:var(--custom-font-color, #444444)!important;font-size:12px!important}::ng-deep .mat-form-field-invalid .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field.mat-form-field-disabled{background:var(--custom-bg-color-disabled, #ECECEC)!important}::ng-deep .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--custom-font-color-disabled, #999999)!important}::ng-deep .mdc-label{color:var(--custom-font-color, #444)!important;font-size:var(--custom-font-size, 16px)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important}::placeholder{color:#8f8f8f!important;font-size:12px!important}::ng-deep .mat-mdc-form-field-hint-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error{color:#e00!important;font-size:12px;font-weight:500;font-family:Mulish!important;letter-spacing:0}::ng-deep .mdc-text-field--outlined{--mdc-outlined-text-field-container-shape: var(--custom-border-radius , 4px) !important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none!important}*{font-family:mulish!important}\n"], dependencies: [{ kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i2.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i3.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "component", type: i5.MatDatepicker, selector: "mat-datepicker", exportAs: ["matDatepicker"] }, { kind: "directive", type: i5.MatDatepickerInput, selector: "input[matDatepicker]", inputs: ["matDatepicker", "min", "max", "matDatepickerFilter"], exportAs: ["matDatepickerInput"] }, { kind: "component", type: i5.MatDatepickerToggle, selector: "mat-datepicker-toggle", inputs: ["for", "tabIndex", "aria-label", "disabled", "disableRipple"], exportAs: ["matDatepickerToggle"] }, { kind: "directive", type: i5.MatDatepickerToggleIcon, selector: "[matDatepickerToggleIcon]" }, { kind: "ngmodule", type: MomentDateModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i6.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: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i6.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i6.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] });
|
|
198
198
|
}
|
|
199
199
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AgeDateComponent, decorators: [{
|
|
200
200
|
type: Component,
|
|
@@ -230,7 +230,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
230
230
|
useExisting: AgeDateComponent,
|
|
231
231
|
multi: true
|
|
232
232
|
},
|
|
233
|
-
], template: "<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\n<mat-form-field\n class=\"w-100\"\n appearance=\"outline\"\n *ngIf=\"field() && field()?.isVisible\"\n [ngStyle]=\"{\n'--custom-border-color': field()?.controlStyle?.borderColor ,\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\n'--custom-bg-color': field()?.controlStyle?.background ,\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\n'--custom-font-size': field()?.controlStyle?.fontSize ,\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\n'--custom-font-color': field()?.controlStyle?.color ,\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\n}\">\n @if(reactiveFormControlobject()) {\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n />\n }@else{\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n />\n }\n <span matSuffix class=\"right-date-text\" *ngIf=\"!this.service.checkIfValueIsEmpty(age) && !this.service.checkIfValueIsEmpty(inputValue) && age >= 0\">\n ({{ age }}) yrs\n </span>\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"
|
|
233
|
+
], template: "<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\n<mat-form-field\n class=\"w-100\"\n appearance=\"outline\"\n *ngIf=\"field() && field()?.isVisible\"\n [ngStyle]=\"{\n'--custom-border-color': field()?.controlStyle?.borderColor ,\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\n'--custom-bg-color': field()?.controlStyle?.background ,\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\n'--custom-font-size': field()?.controlStyle?.fontSize ,\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\n'--custom-font-color': field()?.controlStyle?.color ,\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\n}\">\n @if(reactiveFormControlobject()) {\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n />\n }@else{\n <input\n matInput\n autocomplete=\"off\"\n [type]=\"field()?.controlType\"\n [name]=\"field()?.fieldName\"\n [id]=\"field()?.fieldName\"\n [placeholder]=\"field()?.placeHolder\"\n [required]=\"field()?.validators?.isRequired\"\n [pattern]=\"field()?.validators?.pattern\"\n [matDatepicker]=\"picker\"\n [min]=\"field()?.configData?.min\"\n [max]=\"field()?.configData?.max\"\n (input)=\"dateDivisionFormat($event)\"\n [disabled]=\"field()?.isDisable\"\n (dateChange)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n [value]=\"inputValue\"\n />\n }\n <span matSuffix class=\"right-date-text\" *ngIf=\"!this.service.checkIfValueIsEmpty(age) && !this.service.checkIfValueIsEmpty(inputValue) && age >= 0\">\n ({{ age }}) yrs\n </span>\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"!field()?.isDisable\">\n <img\n src=\"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/date_picker_icon.svg\"\n style=\"width: 16px\"\n matDatepickerToggleIcon\n />\n </mat-datepicker-toggle>\n <mat-datepicker #picker></mat-datepicker>\n <mat-error *ngIf=\"false\">\n {{ field()?.validators?.isRequiredMessage }}\n </mat-error>\n</mat-form-field>\n<div class=\"error-message\" *ngIf=\"false\">\n {{ field()?.validators?.isRequiredMessage }}.\n</div>\n<div class=\"error-message\" *ngIf=\"false\">\n {{ field()?.validators?.patternMessage }}.\n</div>\n", styles: [".field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0}.right-date-text{padding:4px 8px;border-radius:4px;font-weight:600;font-size:12px;color:#444;background:#f5f5f5;margin-right:8px;display:inline-flex;align-items:center;vertical-align:middle;height:20px;white-space:nowrap!important}::ng-deep .mat-mdc-form-field-icon-suffix{display:inline-flex!important;align-items:center!important;gap:0px!important}.error-message{color:red}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--focused .mat-mdc-notch-piece{border-color:var(--custom-border-color-focus, #ffbb00)!important;border-width:var(--custom-border-width-focus, 1.5px)!important}::ng-deep .mat-mdc-form-field{background-color:var(--custom-bg-color, #ffffff)!important;border-radius:var(--custom-border-radius , 4px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__leading{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__notch{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled):not(.mdc-text-field--focused):hover .mdc-notched-outline .mdc-notched-outline__trailing{border-color:var(--custom-border-color-hover, #ffbb00)!important;border-width:var(--custom-border-width-hover, 1.5px)!important}::ng-deep .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color, #dddddd)!important;border-width:var(--custom-border-width, 1.5px)!important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled) .mdc-text-field__input{caret-color:var(--custom-caret-color, #ffbb00)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important;color:var(--custom-font-color, #444444)!important;font-size:12px!important}::ng-deep .mat-form-field-invalid .mdc-text-field--outlined .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field.mat-form-field-disabled{background:var(--custom-bg-color-disabled, #ECECEC)!important}::ng-deep .mdc-text-field--outlined.mdc-text-field--disabled .mdc-text-field__input{color:var(--custom-font-color-disabled, #999999)!important}::ng-deep .mdc-label{color:var(--custom-font-color, #444)!important;font-size:var(--custom-font-size, 16px)!important;font-weight:var(--custom-font-weight, 400)!important;font-family:var(--custom-font-family, \"Mulish\")!important}::placeholder{color:#8f8f8f!important;font-size:12px!important}::ng-deep .mat-mdc-form-field-hint-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error-wrapper{padding:0!important}::ng-deep .mat-mdc-form-field-error{color:#e00!important;font-size:12px;font-weight:500;font-family:Mulish!important;letter-spacing:0}::ng-deep .mdc-text-field--outlined{--mdc-outlined-text-field-container-shape: var(--custom-border-radius , 4px) !important}::ng-deep .mdc-text-field--outlined:not(.mdc-text-field--disabled).mdc-text-field--invalid .mat-mdc-notch-piece{border-color:var(--custom-border-color-error, red)!important;border-width:var(--custom-border-width-error, 1.5px)!important}::ng-deep .mat-mdc-form-field-subscript-wrapper{display:none!important}*{font-family:mulish!important}\n"] }]
|
|
234
234
|
}], ctorParameters: () => [{ type: i1.MasterControlService }], propDecorators: { blur: [{
|
|
235
235
|
type: Output
|
|
236
236
|
}], valueChange: [{
|
|
@@ -240,4 +240,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
240
240
|
}], invalidDate: [{
|
|
241
241
|
type: Output
|
|
242
242
|
}] } });
|
|
243
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdlLWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9hZ2UtZGF0ZS9hZ2UtZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2FnZS1kYXRlL2FnZS1kYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0IsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7O0FBMkN6RCxNQUFNLE9BQU8sZ0JBQWdCO0lBU1I7SUFSbkIsS0FBSyxHQUFRLEtBQUssQ0FBQyxRQUFRLEVBQU8sQ0FBQztJQUNuQyxVQUFVLEdBQVEsSUFBSSxDQUFDO0lBQ3ZCLHlCQUF5QixHQUFTLEtBQUssRUFBTyxDQUFDO0lBQy9DLEdBQUcsR0FBUyxJQUFJLENBQUM7SUFDUCxJQUFJLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUMvQixXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUN0QyxZQUFZLEdBQUcs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QixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixtQkFBbUI7cUJBQ3BCLGFBQ1UsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUU7Z0NBQ25ELEtBQUssRUFBRTtvQ0FDTCxTQUFTLEVBQUU7d0NBQ1QsWUFBWTt3Q0FDWixZQUFZO3dDQUNaLFlBQVk7d0NBQ1osWUFBWTt3Q0FDWixhQUFhO3dDQUNiLGNBQWM7d0NBQ2QsYUFBYTtxQ0FDZDtpQ0FDRjtnQ0FDRCxPQUFPLEVBQUU7b0NBQ1AsU0FBUyxFQUFFLGFBQWE7b0NBQ3hCLGNBQWMsRUFBRSxVQUFVO29DQUMxQixhQUFhLEVBQUUsYUFBYTtvQ0FDNUIsa0JBQWtCLEVBQUUsV0FBVztpQ0FDaEM7NkJBQ0E7eUJBQ0E7d0JBQ0M7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxrQkFBa0I7NEJBQzdCLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNKO3lGQVNXLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGlucHV0LCBBZnRlclZpZXdDaGVja2VkLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNb21lbnREYXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwtbW9tZW50LWFkYXB0ZXInO1xuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hZ2UtZGF0ZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdERhdGVwaWNrZXJNb2R1bGUsXG4gICAgTW9tZW50RGF0ZU1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IHtcbiAgcGFyc2U6IHtcbiAgICBkYXRlSW5wdXQ6IFtcbiAgICAgICdERC1NTS1ZWVlZJyxcbiAgICAgICdERC9NTS9ZWVlZJyxcbiAgICAgICdZWVlZL01NL0REJyxcbiAgICAgICdNTS9ERC9ZWVlZJyxcbiAgICAgICdERCBNTU0gWVlZWScsXG4gICAgICAnREQgTU1NTSBZWVlZJyxcbiAgICAgICdERC1NTU0tWVlZWScsXG4gICAgXSxcbiAgfSxcbiAgZGlzcGxheToge1xuICAgIGRhdGVJbnB1dDogJ0REL01NTS9ZWVlZJyxcbiAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcbiAgICBkYXRlQTExeUxhYmVsOiAnREQvTU1NL1lZWVknLFxuICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWScsXG4gIH0sXG4gIH1cbiAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBBZ2VEYXRlQ29tcG9uZW50LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2FnZS1kYXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2FnZS1kYXRlLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBBZ2VEYXRlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG4gIGZpZWxkOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XG4gIGlucHV0VmFsdWU6IGFueSA9IG51bGw7XG4gIHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QgOiBhbnkgPSBpbnB1dDxhbnk+KCk7XG4gIGFnZSA6IGFueSA9IG51bGw7XG4gIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZGF0ZVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBpbnZhbGlkRGF0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbnB1dFZhbHVlKSB7XG4gICAgICB0aGlzLmNhbGN1bGF0ZUFnZSh0aGlzLmlucHV0VmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGRhdGVEaXZpc2lvbkZvcm1hdChldmVudDogYW55KSB7XG4gICAgbGV0IGV2dCA9IGV2ZW50LnRhcmdldDtcblxuICAgIC8vIENoZWNrIGlmIHVzZXIgaXMgZGVsZXRpbmcgKGJhY2tzcGFjZS9kZWxldGUpXG4gICAgY29uc3QgaXNEZWxldGluZyA9IGV2ZW50LmlucHV0VHlwZSA9PT0gJ2RlbGV0ZUNvbnRlbnRCYWNrd2FyZCcgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuaW5wdXRUeXBlID09PSAnZGVsZXRlQ29udGVudEZvcndhcmQnIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICFldmVudC5kYXRhO1xuXG4gICAgLy8gSWYgZGVsZXRpbmcsIGFsbG93IG5vcm1hbCBkZWxldGlvbiB3aXRob3V0IGF1dG8tYWRkaW5nIHNsYXNoZXNcbiAgICBpZiAoaXNEZWxldGluZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCB2YWx1ZSA9IGV2dC52YWx1ZTtcblxuICAgIC8vIEhhbmRsZSBjYXNlIHdoZXJlIHdlIGhhdmUgZXhpc3Rpbmcgc2xhc2hlcyBidXQgbmVlZCB0byByZWZvcm1hdFxuICAgIC8vIFNwbGl0IGJ5IHNsYXNoIHRvIHVuZGVyc3RhbmQgY3VycmVudCBzdHJ1Y3R1cmVcbiAgICBjb25zdCBwYXJ0cyA9IHZhbHVlLnNwbGl0KCcvJyk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGV4YWN0bHkgMyBwYXJ0cyAoZGF0ZS9tb250aC95ZWFyKSwgZG9uJ3QgYWRkIG1vcmUgc2xhc2hlc1xuICAgIGlmIChwYXJ0cy5sZW5ndGggPCAzKSB7XG4gICAgICAgLy8gRm9yIGZpcnN0IHNsYXNoIGFmdGVyIGRhdGUgKDIgZGlnaXRzKVxuICAgIGlmICh2YWx1ZS5sZW5ndGggPiAyICYmICF2YWx1ZS5pbmNsdWRlcygnLycpKSB7XG4gICAgICBldnQudmFsdWUgPSBbdmFsdWUuc2xpY2UoMCwgMiksICcvJywgdmFsdWUuc2xpY2UoMildLmpvaW4oJycpO1xuICAgIH1cbiAgICAvLyBGb3Igc2Vjb25kIHNsYXNoIGFmdGVyIG1vbnRoXG4gICAgZWxzZSBpZiAocGFydHMubGVuZ3RoID09PSAyKSB7XG4gICAgICBjb25zdCBkYXRlUGFydCA9IHBhcnRzWzBdO1xuICAgICAgY29uc3QgbW9udGhQYXJ0ID0gcGFydHNbMV07XG5cblxuXG4gICAgICAvLyBBZGQgc2xhc2ggYWZ0ZXIgbnVtZXJpYyBtb250aCAoZXhhY3RseSAyIGRpZ2l0cykgb3IgYWxwaGFiZXRpYyBtb250aCAoZXhhY3RseSAzIGxldHRlcnMpXG4gICAgICBpZiAoKG1vbnRoUGFydC5sZW5ndGggPT09IDIgJiYgL15cXGR7Mn0kLy50ZXN0KG1vbnRoUGFydCkpIHx8XG4gICAgICAgICAgKG1vbnRoUGFydC5sZW5ndGggPT09IDMgJiYgL15bYS16QS1aXXszfSQvLnRlc3QobW9udGhQYXJ0KSkpIHtcbiAgICAgICAgZXZ0LnZhbHVlID0gZGF0ZVBhcnQgKyAnLycgKyBtb250aFBhcnQgKyAnLyc7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICB9XG4gICAgIGNvbnN0IGRhdGVQYXJ0ID0gcGFydHNbMF0gfHwgJyc7XG4gICAgICBjb25zdCBtb250aFBhcnQgPSBwYXJ0c1sxXSB8fCAnJztcbiAgICAgIGNvbnN0IHllYXJQYXJ0ID0gcGFydHNbMl0gfHwgJyc7XG5cbiAgICAgLy8gUHJldmVudCBmdXJ0aGVyIGlucHV0IGlmIGxpbWl0cyBhcmUgcmVhY2hlZCBhbmQgcmVzdG9yZSBwcmV2aW91cyB2YWx1ZVxuICAgICAgaWYgKChkYXRlUGFydC5sZW5ndGggPj0gMikgfHxcbiAgICAgICAgICAobW9udGhQYXJ0Lmxlbmd0aCA+PSAyICYmIC9eXFxkKyQvLnRlc3QobW9udGhQYXJ0KSkgfHxcbiAgICAgICAgICAobW9udGhQYXJ0Lmxlbmd0aCA+PSAzICYmIC9eW2EtekEtWl0rJC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgICh5ZWFyUGFydC5sZW5ndGggPj0gNCkpIHtcblxuICAgICAgICAvLyBHZXQgY3Vyc29yIHBvc2l0aW9uIHRvIGRldGVybWluZSB3aGljaCBwYXJ0IGlzIGJlaW5nIGVkaXRlZFxuICAgICAgICBjb25zdCBjdXJzb3JQb3MgPSBldnQuc2VsZWN0aW9uU3RhcnQ7XG4gICAgICAgIGNvbnN0IGlzRWRpdGluZ0RhdGUgPSBjdXJzb3JQb3MgPD0gMztcbiAgICAgICAgY29uc3QgaXNFZGl0aW5nTW9udGggPSBjdXJzb3JQb3MgPiAzICYmIGN1cnNvclBvcyA8PSAoMyArIG1vbnRoUGFydC5sZW5ndGgpO1xuICAgICAgICBjb25zdCBpc0VkaXRpbmdZZWFyID0gY3Vyc29yUG9zID4gKDMgKyBtb250aFBhcnQubGVuZ3RoICsgMSk7XG5cbiAgICAgICAgLy8gUmVjb25zdHJ1Y3QgdGhlIHByZXZpb3VzIHZhbGlkIHZhbHVlIGJ5IHRyaW1taW5nIGV4Y2VzcyBjaGFyYWN0ZXJzXG4gICAgICAgIGxldCBwcmV2aW91c1ZhbGlkVmFsdWU9Jyc7XG4gICAgICAgIGlmIChpc0VkaXRpbmdEYXRlICYmIGRhdGVQYXJ0Lmxlbmd0aCA+PSAyKSB7XG4gICAgICAgICAgLy8gVHJpbSBkYXRlIHBhcnQgdG8gMiBjaGFyYWN0ZXJzIG1heFxuICAgICAgICAgIGNvbnN0IHZhbGlkRGF0ZVBhcnQgPSBkYXRlUGFydC5zdWJzdHJpbmcoMCwgMik7XG4gICAgICAgICAgcHJldmlvdXNWYWxpZFZhbHVlID0gdmFsaWREYXRlUGFydCArIChwYXJ0c1sxXSA/ICcvJyArIHBhcnRzWzFdIDogJycpICsgKHBhcnRzWzJdID8gJy8nICsgcGFydHNbMl0gOiAnJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNFZGl0aW5nTW9udGggJiYgbW9udGhQYXJ0Lmxlbmd0aCA+PSAyICYmIC9eXFxkKyQvLnRlc3QobW9udGhQYXJ0KSkge1xuICAgICAgICAgIC8vIFRyaW0gbnVtZXJpYyBtb250aCB0byAyIGNoYXJhY3RlcnMgbWF4XG4gICAgICAgICAgY29uc3QgdmFsaWRNb250aFBhcnQgPSBtb250aFBhcnQuc3Vic3RyaW5nKDAsIDIpO1xuICAgICAgICAgIHByZXZpb3VzVmFsaWRWYWx1ZSA9IHBhcnRzWzBdICsgJy8nICsgdmFsaWRNb250aFBhcnQgKyAocGFydHNbMl0gPyAnLycgKyBwYXJ0c1syXSA6ICcnKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0VkaXRpbmdNb250aCAmJiBtb250aFBhcnQubGVuZ3RoID49IDMgKSB7XG4gICAgICAgICAgLy8gVHJpbSBhbHBoYWJldGljIG1vbnRoIHRvIDMgY2hhcmFjdGVycyBtYXhcbiAgICAgICAgICBjb25zdCB2YWxpZE1vbnRoUGFydCA9IG1vbnRoUGFydC5zdWJzdHJpbmcoMCwgMyk7XG4gICAgICAgICAgcHJldmlvdXNWYWxpZFZhbHVlID0gcGFydHNbMF0gKyAnLycgKyB2YWxpZE1vbnRoUGFydCArIChwYXJ0c1syXSA/ICcvJyArIHBhcnRzWzJdIDogJycpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRWRpdGluZ1llYXIgJiYgeWVhclBhcnQubGVuZ3RoID49IDQpIHtcbiAgICAgICAgICAvLyBUcmltIHllYXIgcGFydCB0byA0IGNoYXJhY3RlcnMgbWF4XG4gICAgICAgICAgY29uc3QgdmFsaWRZZWFyUGFydCA9IHllYXJQYXJ0LnN1YnN0cmluZygwLCA0KTtcbiAgICAgICAgICBwcmV2aW91c1ZhbGlkVmFsdWUgPSBwYXJ0c1swXSArICcvJyArIHBhcnRzWzFdICsgJy8nICsgdmFsaWRZZWFyUGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFByZXZlbnQgaW5wdXQgaWYgdHJ5aW5nIHRvIGV4Y2VlZCBsaW1pdHMgYnkgcmVzdG9yaW5nIHByZXZpb3VzIHZhbHVlXG4gICAgICAgIGlmICgoaXNFZGl0aW5nRGF0ZSAmJiBkYXRlUGFydC5sZW5ndGggPj0gMikgfHxcbiAgICAgICAgICAgIChpc0VkaXRpbmdNb250aCAmJiBtb250aFBhcnQubGVuZ3RoID49IDIgJiYgL15cXGQrJC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgICAgKGlzRWRpdGluZ01vbnRoICYmIG1vbnRoUGFydC5sZW5ndGggPj0gMyApIHx8XG4gICAgICAgICAgICAoaXNFZGl0aW5nWWVhciAmJiB5ZWFyUGFydC5sZW5ndGggPj0gNCkpIHtcblxuICAgICAgICAgIC8vIFJlc3RvcmUgdGhlIHByZXZpb3VzIHZhbGlkIHZhbHVlXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBldnQudmFsdWUgPSBwcmV2aW91c1ZhbGlkVmFsdWU7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH1cblxuXG4gIH1cbiAgIF9vbkNoYW5nZTogYW55ID0gKGlucHV0VmFsdWU6YW55KSA9PiB7fTtcbiAgX3VuVG91Y2hlZDogYW55ID0gKCkgPT4ge307XG5cbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWR7XG4gICAgdGhpcy5pbnB1dFZhbHVlPW9iajtcbiAgfTtcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9O1xuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZHtcbiAgICB0aGlzLl91blRvdWNoZWQgPSBmbjtcbiAgfTtcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWR7fTtcblxuICBvbklucHV0Q2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQudmFsdWUpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5pbnB1dFZhbHVlKTtcbiAgICAgIHRoaXMuY2FsY3VsYXRlQWdlKGV2ZW50LnZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5pbnB1dFZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5kYXRlU2VsZWN0ZWQuZW1pdCh7XG4gICAgICAgIGZvcm1hdHRlZFZhbHVlOiB0aGlzLmlucHV0VmFsdWUsXG4gICAgICAgIGRhdGVPYmplY3Q6IHRoaXMuaW5wdXRWYWx1ZSxcbiAgICAgICAgaXNWYWxpZDogdHJ1ZSxcbiAgICAgICAgc291cmNlOiAnZGF0ZXBpY2tlcidcbiAgICAgIH0pO1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLmlucHV0VmFsdWUpO1xuICB9XG5cbiAgb25JbnB1dEJsdXIoZXZlbnQgOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KGV2ZW50LnRhcmdldC52YWx1ZSkpIHtcbiAgICAgIGlmIChpc05hTihEYXRlLnBhcnNlKGV2ZW50LnRhcmdldC52YWx1ZSkpKSB7XG4gICAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9ICcnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVBZ2UoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fdW5Ub3VjaGVkKCk7XG4gICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgY2FsY3VsYXRlQWdlKGJpcnRoRGF0ZTogRGF0ZSkge1xuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBiaXJ0aGRhdGUgPSBuZXcgRGF0ZShiaXJ0aERhdGUpO1xuICAgIGxldCBhZ2UgPSB0b2RheS5nZXRGdWxsWWVhcigpIC0gYmlydGhkYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgY29uc3QgbW9udGhEaWZmID0gdG9kYXkuZ2V0TW9udGgoKSAtIGJpcnRoZGF0ZS5nZXRNb250aCgpO1xuICAgIGNvbnN0IGRheXNfZGlmZmVyZW5jZSA9IHRvZGF5LmdldERhdGUoKSAtIGJpcnRoZGF0ZS5nZXREYXRlKCk7XG4gICAgaWYgKG1vbnRoRGlmZiA8IDAgfHwgKG1vbnRoRGlmZiA9PT0gMCAmJiBkYXlzX2RpZmZlcmVuY2UgPCAwKSkge1xuICAgICAgYWdlID0gYWdlIC0gMTtcbiAgICB9XG4gICAgdGhpcy5hZ2UgPSBhZ2U7XG4gIH1cblxuXG59XG4iLCI8bGFiZWwgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZSAmJiBmaWVsZCgpPy5pc1Nob3dMYWJlbFwiIGNsYXNzPVwiZmllbGQtbGFibGVcIj57e2ZpZWxkKCk/LmxhYmVsfX08c3BhbiBzdHlsZT1cImNvbG9yOiByZWQ7XCIgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XG48bWF0LWZvcm0tZmllbGRcbiAgY2xhc3M9XCJ3LTEwMFwiXG4gIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCJcbiAgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZVwiXG4gIFtuZ1N0eWxlXT1cIntcbictLWN1c3RvbS1ib3JkZXItY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlckNvbG9yICxcbictLWN1c3RvbS1ib3JkZXItd2lkdGgnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlcldpZHRoICxcbictLWN1c3RvbS1ib3JkZXItcmFkaXVzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMgLFxuJy0tY3VzdG9tLWJnLWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5iYWNrZ3JvdW5kICxcbictLWN1c3RvbS1ib3JkZXItY29sb3ItZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyQ29sb3IgLFxuJy0tY3VzdG9tLWJvcmRlci13aWR0aC1mb2N1cyc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCb3JkZXJXaWR0aCAsXG4nLS1jdXN0b20tYmctY29sb3ItZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQmFja2dyb3VuZCAsXG4nLS1jdXN0b20tYm9yZGVyLWNvbG9yLWhvdmVyJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ob3ZlckJvcmRlckNvbG9yICxcbictLWN1c3RvbS1ib3JkZXItd2lkdGgtaG92ZXInOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmhvdmVyQm9yZGVyV2lkdGggLFxuJy0tY3VzdG9tLWJvcmRlci1jb2xvci1lcnJvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZXJyb3JCb3JkZXJDb2xvciAsXG4nLS1jdXN0b20tYm9yZGVyLXdpZHRoLWVycm9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5lcnJvckJvcmRlcldpZHRoICxcbictLWN1c3RvbS1mb250LXNpemUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRTaXplICxcbictLWN1c3RvbS1mb250LXdlaWdodCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFdlaWdodCAsXG4nLS1jdXN0b20tZm9udC1mYW1pbHknOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRGYW1pbHkgLFxuJy0tY3VzdG9tLWZvbnQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNvbG9yICxcbictLWN1c3RvbS1jYXJldC1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uY2FyZXRDb2xvciAsXG4nLS1jdXN0b20tZm9udC1jb2xvci1kaXNhYmxlZCcgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmRpc2FibGVDb2xvciAsXG4nLS1jdXN0b20tYmctY29sb3ItZGlzYWJsZWQnIDogZmllbGQoKT8uY29udHJvbFN0eWxlPy5kaXNhYmxlQmFja2dyb3VuZCAsXG59XCI+XG4gQGlmKHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QoKSkge1xuIDxpbnB1dFxuICAgIG1hdElucHV0XG4gICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICBbdHlwZV09XCJmaWVsZCgpPy5jb250cm9sVHlwZVwiXG4gICAgW25hbWVdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQoKT8ucGxhY2VIb2xkZXJcIlxuICAgIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcbiAgICBbcGF0dGVybl09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuXCJcbiAgICBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXJcIlxuICAgIChpbnB1dCk9XCJkYXRlRGl2aXNpb25Gb3JtYXQoJGV2ZW50KVwiXG4gICAgW2Rpc2FibGVkXT1cImZpZWxkKCk/LmlzRGlzYWJsZVwiXG4gICAgW21pbl09XCJmaWVsZCgpPy5jb25maWdEYXRhPy5taW5cIlxuICAgIFttYXhdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8ubWF4XCJcbiAgICAoZGF0ZUNoYW5nZSk9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxuICAgIChibHVyKT1cIm9uSW5wdXRCbHVyKCRldmVudClcIlxuICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwicmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpXCJcbiAgLz5cbiB9QGVsc2V7XG4gICAgPGlucHV0XG4gICAgbWF0SW5wdXRcbiAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgIFt0eXBlXT1cImZpZWxkKCk/LmNvbnRyb2xUeXBlXCJcbiAgICBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxuICAgIFtpZF09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZCgpPy5wbGFjZUhvbGRlclwiXG4gICAgW3JlcXVpcmVkXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIlxuICAgIFtwYXR0ZXJuXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5cIlxuICAgIFttYXREYXRlcGlja2VyXT1cInBpY2tlclwiXG4gICAgW21pbl09XCJmaWVsZCgpPy5jb25maWdEYXRhPy5taW5cIlxuICAgIFttYXhdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8ubWF4XCJcbiAgICAoaW5wdXQpPVwiZGF0ZURpdmlzaW9uRm9ybWF0KCRldmVudClcIlxuICAgIFtkaXNhYmxlZF09XCJmaWVsZCgpPy5pc0Rpc2FibGVcIlxuICAgIChkYXRlQ2hhbmdlKT1cIm9uSW5wdXRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGJsdXIpPVwib25JbnB1dEJsdXIoJGV2ZW50KVwiXG4gICAgW3ZhbHVlXT1cImlucHV0VmFsdWVcIlxuICAvPlxuIH1cbiAgPHNwYW4gbWF0U3VmZml4IGNsYXNzPVwicmlnaHQtZGF0ZS10ZXh0XCIgKm5nSWY9XCIhdGhpcy5zZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkoYWdlKSAmJiAhdGhpcy5zZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkoaW5wdXRWYWx1ZSkgJiYgYWdlID49IDBcIj5cbiAgICAoe3sgYWdlIH19KSB5cnNcbiAgPC9zcGFuPlxuICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cInBpY2tlclwiICpuZ0lmPVwidHJ1ZVwiPlxuICAgIDxpbWdcbiAgICAgIHNyYz1cImh0dHBzOi8vY2RuLmdvZGlnaXQuY29tL2RpZ2l0UGx1c0Fzc2V0cy9yZXRhaWwtbGlmZS1pY29uL3N2Z2ljb24vZGF0ZV9waWNrZXJfaWNvbi5zdmdcIlxuICAgICAgc3R5bGU9XCJ3aWR0aDogMTZweFwiXG4gICAgICBtYXREYXRlcGlja2VyVG9nZ2xlSWNvblxuICAgIC8+XG4gIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICA8bWF0LWRhdGVwaWNrZXIgI3BpY2tlcj48L21hdC1kYXRlcGlja2VyPlxuICAgPG1hdC1lcnJvciAqbmdJZj1cImZhbHNlXCI+XG4gICAge3sgZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZE1lc3NhZ2UgfX1cbiAgPC9tYXQtZXJyb3I+XG48L21hdC1mb3JtLWZpZWxkPlxuPGRpdiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIiAqbmdJZj1cImZhbHNlXCI+XG4gIHt7IGZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRNZXNzYWdlIH19LlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiZmFsc2VcIj5cbiAge3sgZmllbGQoKT8udmFsaWRhdG9ycz8ucGF0dGVybk1lc3NhZ2UgfX0uXG48L2Rpdj5cbiJdfQ==
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdlLWRhdGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9hZ2UtZGF0ZS9hZ2UtZGF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2FnZS1kYXRlL2FnZS1kYXRlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBb0IsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7O0FBMkN6RCxNQUFNLE9BQU8sZ0JBQWdCO0lBU1I7SUFSbkIsS0FBSyxHQUFRLEtBQUssQ0FBQyxRQUFRLEVBQU8sQ0FBQztJQUNuQyxVQUFVLEdBQVEsSUFBSSxDQUFDO0lBQ3ZCLHlCQUF5QixHQUFTLEtBQUssRUFBTyxDQUFDO0lBQy9DLEdBQUcsR0FBUyxJQUFJLENBQUM7SUFDUCxJQUFJLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUMvQixXQUFXLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUN0QyxZQUFZLEdBQUcs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QixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixtQkFBbUI7cUJBQ3BCLGFBQ1UsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxRQUFRLEVBQUU7Z0NBQ25ELEtBQUssRUFBRTtvQ0FDTCxTQUFTLEVBQUU7d0NBQ1QsWUFBWTt3Q0FDWixZQUFZO3dDQUNaLFlBQVk7d0NBQ1osWUFBWTt3Q0FDWixhQUFhO3dDQUNiLGNBQWM7d0NBQ2QsYUFBYTtxQ0FDZDtpQ0FDRjtnQ0FDRCxPQUFPLEVBQUU7b0NBQ1AsU0FBUyxFQUFFLGFBQWE7b0NBQ3hCLGNBQWMsRUFBRSxVQUFVO29DQUMxQixhQUFhLEVBQUUsYUFBYTtvQ0FDNUIsa0JBQWtCLEVBQUUsV0FBVztpQ0FDaEM7NkJBQ0E7eUJBQ0E7d0JBQ0M7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxrQkFBa0I7NEJBQzdCLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNKO3lGQVNXLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ0csV0FBVztzQkFBcEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGlucHV0LCBBZnRlclZpZXdDaGVja2VkLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNb21lbnREYXRlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwtbW9tZW50LWFkYXB0ZXInO1xuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1hZ2UtZGF0ZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdERhdGVwaWNrZXJNb2R1bGUsXG4gICAgTW9tZW50RGF0ZU1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IHtcbiAgcGFyc2U6IHtcbiAgICBkYXRlSW5wdXQ6IFtcbiAgICAgICdERC1NTS1ZWVlZJyxcbiAgICAgICdERC9NTS9ZWVlZJyxcbiAgICAgICdZWVlZL01NL0REJyxcbiAgICAgICdNTS9ERC9ZWVlZJyxcbiAgICAgICdERCBNTU0gWVlZWScsXG4gICAgICAnREQgTU1NTSBZWVlZJyxcbiAgICAgICdERC1NTU0tWVlZWScsXG4gICAgXSxcbiAgfSxcbiAgZGlzcGxheToge1xuICAgIGRhdGVJbnB1dDogJ0REL01NTS9ZWVlZJyxcbiAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcbiAgICBkYXRlQTExeUxhYmVsOiAnREQvTU1NL1lZWVknLFxuICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWScsXG4gIH0sXG4gIH1cbiAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBBZ2VEYXRlQ29tcG9uZW50LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2FnZS1kYXRlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2FnZS1kYXRlLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBBZ2VEYXRlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG4gIGZpZWxkOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XG4gIGlucHV0VmFsdWU6IGFueSA9IG51bGw7XG4gIHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QgOiBhbnkgPSBpbnB1dDxhbnk+KCk7XG4gIGFnZSA6IGFueSA9IG51bGw7XG4gIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZGF0ZVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBpbnZhbGlkRGF0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbnB1dFZhbHVlKSB7XG4gICAgICB0aGlzLmNhbGN1bGF0ZUFnZSh0aGlzLmlucHV0VmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGRhdGVEaXZpc2lvbkZvcm1hdChldmVudDogYW55KSB7XG4gICAgbGV0IGV2dCA9IGV2ZW50LnRhcmdldDtcblxuICAgIC8vIENoZWNrIGlmIHVzZXIgaXMgZGVsZXRpbmcgKGJhY2tzcGFjZS9kZWxldGUpXG4gICAgY29uc3QgaXNEZWxldGluZyA9IGV2ZW50LmlucHV0VHlwZSA9PT0gJ2RlbGV0ZUNvbnRlbnRCYWNrd2FyZCcgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuaW5wdXRUeXBlID09PSAnZGVsZXRlQ29udGVudEZvcndhcmQnIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICFldmVudC5kYXRhO1xuXG4gICAgLy8gSWYgZGVsZXRpbmcsIGFsbG93IG5vcm1hbCBkZWxldGlvbiB3aXRob3V0IGF1dG8tYWRkaW5nIHNsYXNoZXNcbiAgICBpZiAoaXNEZWxldGluZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCB2YWx1ZSA9IGV2dC52YWx1ZTtcblxuICAgIC8vIEhhbmRsZSBjYXNlIHdoZXJlIHdlIGhhdmUgZXhpc3Rpbmcgc2xhc2hlcyBidXQgbmVlZCB0byByZWZvcm1hdFxuICAgIC8vIFNwbGl0IGJ5IHNsYXNoIHRvIHVuZGVyc3RhbmQgY3VycmVudCBzdHJ1Y3R1cmVcbiAgICBjb25zdCBwYXJ0cyA9IHZhbHVlLnNwbGl0KCcvJyk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGV4YWN0bHkgMyBwYXJ0cyAoZGF0ZS9tb250aC95ZWFyKSwgZG9uJ3QgYWRkIG1vcmUgc2xhc2hlc1xuICAgIGlmIChwYXJ0cy5sZW5ndGggPCAzKSB7XG4gICAgICAgLy8gRm9yIGZpcnN0IHNsYXNoIGFmdGVyIGRhdGUgKDIgZGlnaXRzKVxuICAgIGlmICh2YWx1ZS5sZW5ndGggPiAyICYmICF2YWx1ZS5pbmNsdWRlcygnLycpKSB7XG4gICAgICBldnQudmFsdWUgPSBbdmFsdWUuc2xpY2UoMCwgMiksICcvJywgdmFsdWUuc2xpY2UoMildLmpvaW4oJycpO1xuICAgIH1cbiAgICAvLyBGb3Igc2Vjb25kIHNsYXNoIGFmdGVyIG1vbnRoXG4gICAgZWxzZSBpZiAocGFydHMubGVuZ3RoID09PSAyKSB7XG4gICAgICBjb25zdCBkYXRlUGFydCA9IHBhcnRzWzBdO1xuICAgICAgY29uc3QgbW9udGhQYXJ0ID0gcGFydHNbMV07XG5cblxuXG4gICAgICAvLyBBZGQgc2xhc2ggYWZ0ZXIgbnVtZXJpYyBtb250aCAoZXhhY3RseSAyIGRpZ2l0cykgb3IgYWxwaGFiZXRpYyBtb250aCAoZXhhY3RseSAzIGxldHRlcnMpXG4gICAgICBpZiAoKG1vbnRoUGFydC5sZW5ndGggPT09IDIgJiYgL15cXGR7Mn0kLy50ZXN0KG1vbnRoUGFydCkpIHx8XG4gICAgICAgICAgKG1vbnRoUGFydC5sZW5ndGggPT09IDMgJiYgL15bYS16QS1aXXszfSQvLnRlc3QobW9udGhQYXJ0KSkpIHtcbiAgICAgICAgZXZ0LnZhbHVlID0gZGF0ZVBhcnQgKyAnLycgKyBtb250aFBhcnQgKyAnLyc7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICB9XG4gICAgIGNvbnN0IGRhdGVQYXJ0ID0gcGFydHNbMF0gfHwgJyc7XG4gICAgICBjb25zdCBtb250aFBhcnQgPSBwYXJ0c1sxXSB8fCAnJztcbiAgICAgIGNvbnN0IHllYXJQYXJ0ID0gcGFydHNbMl0gfHwgJyc7XG5cbiAgICAgLy8gUHJldmVudCBmdXJ0aGVyIGlucHV0IGlmIGxpbWl0cyBhcmUgcmVhY2hlZCBhbmQgcmVzdG9yZSBwcmV2aW91cyB2YWx1ZVxuICAgICAgaWYgKChkYXRlUGFydC5sZW5ndGggPj0gMikgfHxcbiAgICAgICAgICAobW9udGhQYXJ0Lmxlbmd0aCA+PSAyICYmIC9eXFxkKyQvLnRlc3QobW9udGhQYXJ0KSkgfHxcbiAgICAgICAgICAobW9udGhQYXJ0Lmxlbmd0aCA+PSAzICYmIC9eW2EtekEtWl0rJC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgICh5ZWFyUGFydC5sZW5ndGggPj0gNCkpIHtcblxuICAgICAgICAvLyBHZXQgY3Vyc29yIHBvc2l0aW9uIHRvIGRldGVybWluZSB3aGljaCBwYXJ0IGlzIGJlaW5nIGVkaXRlZFxuICAgICAgICBjb25zdCBjdXJzb3JQb3MgPSBldnQuc2VsZWN0aW9uU3RhcnQ7XG4gICAgICAgIGNvbnN0IGlzRWRpdGluZ0RhdGUgPSBjdXJzb3JQb3MgPD0gMztcbiAgICAgICAgY29uc3QgaXNFZGl0aW5nTW9udGggPSBjdXJzb3JQb3MgPiAzICYmIGN1cnNvclBvcyA8PSAoMyArIG1vbnRoUGFydC5sZW5ndGgpO1xuICAgICAgICBjb25zdCBpc0VkaXRpbmdZZWFyID0gY3Vyc29yUG9zID4gKDMgKyBtb250aFBhcnQubGVuZ3RoICsgMSk7XG5cbiAgICAgICAgLy8gUmVjb25zdHJ1Y3QgdGhlIHByZXZpb3VzIHZhbGlkIHZhbHVlIGJ5IHRyaW1taW5nIGV4Y2VzcyBjaGFyYWN0ZXJzXG4gICAgICAgIGxldCBwcmV2aW91c1ZhbGlkVmFsdWU9Jyc7XG4gICAgICAgIGlmIChpc0VkaXRpbmdEYXRlICYmIGRhdGVQYXJ0Lmxlbmd0aCA+PSAyKSB7XG4gICAgICAgICAgLy8gVHJpbSBkYXRlIHBhcnQgdG8gMiBjaGFyYWN0ZXJzIG1heFxuICAgICAgICAgIGNvbnN0IHZhbGlkRGF0ZVBhcnQgPSBkYXRlUGFydC5zdWJzdHJpbmcoMCwgMik7XG4gICAgICAgICAgcHJldmlvdXNWYWxpZFZhbHVlID0gdmFsaWREYXRlUGFydCArIChwYXJ0c1sxXSA/ICcvJyArIHBhcnRzWzFdIDogJycpICsgKHBhcnRzWzJdID8gJy8nICsgcGFydHNbMl0gOiAnJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNFZGl0aW5nTW9udGggJiYgbW9udGhQYXJ0Lmxlbmd0aCA+PSAyICYmIC9eXFxkKyQvLnRlc3QobW9udGhQYXJ0KSkge1xuICAgICAgICAgIC8vIFRyaW0gbnVtZXJpYyBtb250aCB0byAyIGNoYXJhY3RlcnMgbWF4XG4gICAgICAgICAgY29uc3QgdmFsaWRNb250aFBhcnQgPSBtb250aFBhcnQuc3Vic3RyaW5nKDAsIDIpO1xuICAgICAgICAgIHByZXZpb3VzVmFsaWRWYWx1ZSA9IHBhcnRzWzBdICsgJy8nICsgdmFsaWRNb250aFBhcnQgKyAocGFydHNbMl0gPyAnLycgKyBwYXJ0c1syXSA6ICcnKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0VkaXRpbmdNb250aCAmJiBtb250aFBhcnQubGVuZ3RoID49IDMgKSB7XG4gICAgICAgICAgLy8gVHJpbSBhbHBoYWJldGljIG1vbnRoIHRvIDMgY2hhcmFjdGVycyBtYXhcbiAgICAgICAgICBjb25zdCB2YWxpZE1vbnRoUGFydCA9IG1vbnRoUGFydC5zdWJzdHJpbmcoMCwgMyk7XG4gICAgICAgICAgcHJldmlvdXNWYWxpZFZhbHVlID0gcGFydHNbMF0gKyAnLycgKyB2YWxpZE1vbnRoUGFydCArIChwYXJ0c1syXSA/ICcvJyArIHBhcnRzWzJdIDogJycpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRWRpdGluZ1llYXIgJiYgeWVhclBhcnQubGVuZ3RoID49IDQpIHtcbiAgICAgICAgICAvLyBUcmltIHllYXIgcGFydCB0byA0IGNoYXJhY3RlcnMgbWF4XG4gICAgICAgICAgY29uc3QgdmFsaWRZZWFyUGFydCA9IHllYXJQYXJ0LnN1YnN0cmluZygwLCA0KTtcbiAgICAgICAgICBwcmV2aW91c1ZhbGlkVmFsdWUgPSBwYXJ0c1swXSArICcvJyArIHBhcnRzWzFdICsgJy8nICsgdmFsaWRZZWFyUGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFByZXZlbnQgaW5wdXQgaWYgdHJ5aW5nIHRvIGV4Y2VlZCBsaW1pdHMgYnkgcmVzdG9yaW5nIHByZXZpb3VzIHZhbHVlXG4gICAgICAgIGlmICgoaXNFZGl0aW5nRGF0ZSAmJiBkYXRlUGFydC5sZW5ndGggPj0gMikgfHxcbiAgICAgICAgICAgIChpc0VkaXRpbmdNb250aCAmJiBtb250aFBhcnQubGVuZ3RoID49IDIgJiYgL15cXGQrJC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgICAgKGlzRWRpdGluZ01vbnRoICYmIG1vbnRoUGFydC5sZW5ndGggPj0gMyApIHx8XG4gICAgICAgICAgICAoaXNFZGl0aW5nWWVhciAmJiB5ZWFyUGFydC5sZW5ndGggPj0gNCkpIHtcblxuICAgICAgICAgIC8vIFJlc3RvcmUgdGhlIHByZXZpb3VzIHZhbGlkIHZhbHVlXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBldnQudmFsdWUgPSBwcmV2aW91c1ZhbGlkVmFsdWU7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH1cblxuXG4gIH1cbiAgIF9vbkNoYW5nZTogYW55ID0gKGlucHV0VmFsdWU6YW55KSA9PiB7fTtcbiAgX3VuVG91Y2hlZDogYW55ID0gKCkgPT4ge307XG5cbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWR7XG4gICAgdGhpcy5pbnB1dFZhbHVlPW9iajtcbiAgfTtcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9O1xuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZHtcbiAgICB0aGlzLl91blRvdWNoZWQgPSBmbjtcbiAgfTtcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWR7fTtcblxuICBvbklucHV0Q2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQudmFsdWUpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5pbnB1dFZhbHVlKTtcbiAgICAgIHRoaXMuY2FsY3VsYXRlQWdlKGV2ZW50LnZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5pbnB1dFZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5kYXRlU2VsZWN0ZWQuZW1pdCh7XG4gICAgICAgIGZvcm1hdHRlZFZhbHVlOiB0aGlzLmlucHV0VmFsdWUsXG4gICAgICAgIGRhdGVPYmplY3Q6IHRoaXMuaW5wdXRWYWx1ZSxcbiAgICAgICAgaXNWYWxpZDogdHJ1ZSxcbiAgICAgICAgc291cmNlOiAnZGF0ZXBpY2tlcidcbiAgICAgIH0pO1xuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLmlucHV0VmFsdWUpO1xuICB9XG5cbiAgb25JbnB1dEJsdXIoZXZlbnQgOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc2VydmljZS5jaGVja0lmVmFsdWVJc0VtcHR5KGV2ZW50LnRhcmdldC52YWx1ZSkpIHtcbiAgICAgIGlmIChpc05hTihEYXRlLnBhcnNlKGV2ZW50LnRhcmdldC52YWx1ZSkpKSB7XG4gICAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9ICcnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jYWxjdWxhdGVBZ2UoZXZlbnQudGFyZ2V0LnZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fdW5Ub3VjaGVkKCk7XG4gICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgY2FsY3VsYXRlQWdlKGJpcnRoRGF0ZTogRGF0ZSkge1xuICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgICBjb25zdCBiaXJ0aGRhdGUgPSBuZXcgRGF0ZShiaXJ0aERhdGUpO1xuICAgIGxldCBhZ2UgPSB0b2RheS5nZXRGdWxsWWVhcigpIC0gYmlydGhkYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgY29uc3QgbW9udGhEaWZmID0gdG9kYXkuZ2V0TW9udGgoKSAtIGJpcnRoZGF0ZS5nZXRNb250aCgpO1xuICAgIGNvbnN0IGRheXNfZGlmZmVyZW5jZSA9IHRvZGF5LmdldERhdGUoKSAtIGJpcnRoZGF0ZS5nZXREYXRlKCk7XG4gICAgaWYgKG1vbnRoRGlmZiA8IDAgfHwgKG1vbnRoRGlmZiA9PT0gMCAmJiBkYXlzX2RpZmZlcmVuY2UgPCAwKSkge1xuICAgICAgYWdlID0gYWdlIC0gMTtcbiAgICB9XG4gICAgdGhpcy5hZ2UgPSBhZ2U7XG4gIH1cblxuXG59XG4iLCI8bGFiZWwgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZSAmJiBmaWVsZCgpPy5pc1Nob3dMYWJlbFwiIGNsYXNzPVwiZmllbGQtbGFibGVcIj57e2ZpZWxkKCk/LmxhYmVsfX08c3BhbiBzdHlsZT1cImNvbG9yOiByZWQ7XCIgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XG48bWF0LWZvcm0tZmllbGRcbiAgY2xhc3M9XCJ3LTEwMFwiXG4gIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCJcbiAgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZVwiXG4gIFtuZ1N0eWxlXT1cIntcbictLWN1c3RvbS1ib3JkZXItY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlckNvbG9yICxcbictLWN1c3RvbS1ib3JkZXItd2lkdGgnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlcldpZHRoICxcbictLWN1c3RvbS1ib3JkZXItcmFkaXVzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMgLFxuJy0tY3VzdG9tLWJnLWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5iYWNrZ3JvdW5kICxcbictLWN1c3RvbS1ib3JkZXItY29sb3ItZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyQ29sb3IgLFxuJy0tY3VzdG9tLWJvcmRlci13aWR0aC1mb2N1cyc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCb3JkZXJXaWR0aCAsXG4nLS1jdXN0b20tYmctY29sb3ItZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQmFja2dyb3VuZCAsXG4nLS1jdXN0b20tYm9yZGVyLWNvbG9yLWhvdmVyJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ob3ZlckJvcmRlckNvbG9yICxcbictLWN1c3RvbS1ib3JkZXItd2lkdGgtaG92ZXInOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmhvdmVyQm9yZGVyV2lkdGggLFxuJy0tY3VzdG9tLWJvcmRlci1jb2xvci1lcnJvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZXJyb3JCb3JkZXJDb2xvciAsXG4nLS1jdXN0b20tYm9yZGVyLXdpZHRoLWVycm9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5lcnJvckJvcmRlcldpZHRoICxcbictLWN1c3RvbS1mb250LXNpemUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRTaXplICxcbictLWN1c3RvbS1mb250LXdlaWdodCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFdlaWdodCAsXG4nLS1jdXN0b20tZm9udC1mYW1pbHknOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRGYW1pbHkgLFxuJy0tY3VzdG9tLWZvbnQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNvbG9yICxcbictLWN1c3RvbS1jYXJldC1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uY2FyZXRDb2xvciAsXG4nLS1jdXN0b20tZm9udC1jb2xvci1kaXNhYmxlZCcgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmRpc2FibGVDb2xvciAsXG4nLS1jdXN0b20tYmctY29sb3ItZGlzYWJsZWQnIDogZmllbGQoKT8uY29udHJvbFN0eWxlPy5kaXNhYmxlQmFja2dyb3VuZCAsXG59XCI+XG4gQGlmKHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QoKSkge1xuIDxpbnB1dFxuICAgIG1hdElucHV0XG4gICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICBbdHlwZV09XCJmaWVsZCgpPy5jb250cm9sVHlwZVwiXG4gICAgW25hbWVdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQoKT8ucGxhY2VIb2xkZXJcIlxuICAgIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcbiAgICBbcGF0dGVybl09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuXCJcbiAgICBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXJcIlxuICAgIChpbnB1dCk9XCJkYXRlRGl2aXNpb25Gb3JtYXQoJGV2ZW50KVwiXG4gICAgW2Rpc2FibGVkXT1cImZpZWxkKCk/LmlzRGlzYWJsZVwiXG4gICAgW21pbl09XCJmaWVsZCgpPy5jb25maWdEYXRhPy5taW5cIlxuICAgIFttYXhdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8ubWF4XCJcbiAgICAoZGF0ZUNoYW5nZSk9XCJvbklucHV0Q2hhbmdlKCRldmVudClcIlxuICAgIChibHVyKT1cIm9uSW5wdXRCbHVyKCRldmVudClcIlxuICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwicmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpXCJcbiAgLz5cbiB9QGVsc2V7XG4gICAgPGlucHV0XG4gICAgbWF0SW5wdXRcbiAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxuICAgIFt0eXBlXT1cImZpZWxkKCk/LmNvbnRyb2xUeXBlXCJcbiAgICBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxuICAgIFtpZF09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZCgpPy5wbGFjZUhvbGRlclwiXG4gICAgW3JlcXVpcmVkXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIlxuICAgIFtwYXR0ZXJuXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5cIlxuICAgIFttYXREYXRlcGlja2VyXT1cInBpY2tlclwiXG4gICAgW21pbl09XCJmaWVsZCgpPy5jb25maWdEYXRhPy5taW5cIlxuICAgIFttYXhdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8ubWF4XCJcbiAgICAoaW5wdXQpPVwiZGF0ZURpdmlzaW9uRm9ybWF0KCRldmVudClcIlxuICAgIFtkaXNhYmxlZF09XCJmaWVsZCgpPy5pc0Rpc2FibGVcIlxuICAgIChkYXRlQ2hhbmdlKT1cIm9uSW5wdXRDaGFuZ2UoJGV2ZW50KVwiXG4gICAgKGJsdXIpPVwib25JbnB1dEJsdXIoJGV2ZW50KVwiXG4gICAgW3ZhbHVlXT1cImlucHV0VmFsdWVcIlxuICAvPlxuIH1cbiAgPHNwYW4gbWF0U3VmZml4IGNsYXNzPVwicmlnaHQtZGF0ZS10ZXh0XCIgKm5nSWY9XCIhdGhpcy5zZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkoYWdlKSAmJiAhdGhpcy5zZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkoaW5wdXRWYWx1ZSkgJiYgYWdlID49IDBcIj5cbiAgICAoe3sgYWdlIH19KSB5cnNcbiAgPC9zcGFuPlxuICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlIG1hdFN1ZmZpeCBbZm9yXT1cInBpY2tlclwiICpuZ0lmPVwiIWZpZWxkKCk/LmlzRGlzYWJsZVwiPlxuICAgIDxpbWdcbiAgICAgIHNyYz1cImh0dHBzOi8vY2RuLmdvZGlnaXQuY29tL2RpZ2l0UGx1c0Fzc2V0cy9yZXRhaWwtbGlmZS1pY29uL3N2Z2ljb24vZGF0ZV9waWNrZXJfaWNvbi5zdmdcIlxuICAgICAgc3R5bGU9XCJ3aWR0aDogMTZweFwiXG4gICAgICBtYXREYXRlcGlja2VyVG9nZ2xlSWNvblxuICAgIC8+XG4gIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICA8bWF0LWRhdGVwaWNrZXIgI3BpY2tlcj48L21hdC1kYXRlcGlja2VyPlxuICAgPG1hdC1lcnJvciAqbmdJZj1cImZhbHNlXCI+XG4gICAge3sgZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZE1lc3NhZ2UgfX1cbiAgPC9tYXQtZXJyb3I+XG48L21hdC1mb3JtLWZpZWxkPlxuPGRpdiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIiAqbmdJZj1cImZhbHNlXCI+XG4gIHt7IGZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRNZXNzYWdlIH19LlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiZmFsc2VcIj5cbiAge3sgZmllbGQoKT8udmFsaWRhdG9ycz8ucGF0dGVybk1lc3NhZ2UgfX0uXG48L2Rpdj5cbiJdfQ==
|
|
@@ -26,11 +26,11 @@ export const MY_DATE_FORMAT = {
|
|
|
26
26
|
]
|
|
27
27
|
},
|
|
28
28
|
display: {
|
|
29
|
-
dateInput: 'DD
|
|
29
|
+
dateInput: 'DD/MMM/YYYY',
|
|
30
30
|
monthYearLabel: 'MMM YYYY',
|
|
31
|
-
dateA11yLabel: 'DD
|
|
32
|
-
monthYearA11yLabel: 'MMMM YYYY'
|
|
33
|
-
}
|
|
31
|
+
dateA11yLabel: 'DD/MMM/YYYY',
|
|
32
|
+
monthYearA11yLabel: 'MMMM YYYY',
|
|
33
|
+
},
|
|
34
34
|
};
|
|
35
35
|
export class DobComponent {
|
|
36
36
|
service;
|
|
@@ -208,4 +208,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
208
208
|
}], invalidDate: [{
|
|
209
209
|
type: Output
|
|
210
210
|
}] } });
|
|
211
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9iLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvZG9iL2RvYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2RvYi9kb2IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7O0FBSXpELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixLQUFLLEVBQUU7UUFDTCxTQUFTLEVBQUU7WUFDVCxZQUFZO1lBQ1osWUFBWTtZQUNaLFlBQVk7WUFDWixZQUFZO1lBQ1osYUFBYTtZQUNiLGNBQWM7WUFDZCxhQUFhO1NBQ2Q7S0FDRjtJQUNELE9BQU8sRUFBRTtRQUNQLFNBQVMsRUFBRSxhQUFhO1FBQ3hCLGNBQWMsRUFBRSxVQUFVO1FBQzFCLGFBQWEsRUFBRSxhQUFhO1FBQzVCLGtCQUFrQixFQUFFLFdBQVc7S0FD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QjtnQkFDM0IsSUFBSSxFQUFFLEVBQUU7YUFDVDtZQUNELEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUU7U0FDeEQsMEJDL0NILHUzR0FvREEscTlHRGxCWSxjQUFjLG14QkFBRSxrQkFBa0IsOEJBQUUsWUFBWSx1TkFBRSxtQkFBbUIsaW1CQUFFLGdCQUFnQiw4QkFBRSxtQkFBbUI7OzRGQWlCM0csWUFBWTtrQkFwQnhCLFNBQVM7K0JBQ0UsU0FBUyxjQUNQLElBQUksV0FDUCxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLENBQUMsYUFDMUc7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxjQUFjOzRCQUN6QixLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDSDs0QkFDRSxPQUFPLEVBQUUsV0FBVzs0QkFDcEIsUUFBUSxFQUFFLGlCQUFpQjs0QkFDM0IsSUFBSSxFQUFFLEVBQUU7eUJBQ1Q7d0JBQ0QsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRTtxQkFDeEQ7eUZBUVMsSUFBSTtzQkFBYixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNb21lbnREYXRlQWRhcHRlciwgTW9tZW50RGF0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsLW1vbWVudC1hZGFwdGVyJztcbmltcG9ydCB7IERhdGVBZGFwdGVyLCBNQVRfREFURV9GT1JNQVRTIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcblxuXG5leHBvcnQgY29uc3QgTVlfREFURV9GT1JNQVQgPSB7XG4gIHBhcnNlOiB7XG4gICAgZGF0ZUlucHV0OiBbXG4gICAgICAnREQtTU0tWVlZWScsXG4gICAgICAnTU0vREQvWVlZWScsXG4gICAgICAnWVlZWS9NTS9ERCcsXG4gICAgICAnREQvTU0vWVlZWScsXG4gICAgICAnREQgTU1NIFlZWVknLFxuICAgICAgJ0REIE1NTU0gWVlZWScsXG4gICAgICAnREQtTU1NLVlZWVknXG4gICAgXVxuICB9LFxuICBkaXNwbGF5OiB7XG4gICAgZGF0ZUlucHV0OiAnREQtTU1NLVlZWVknLFxuICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NIFlZWVknLFxuICAgIGRhdGVBMTF5TGFiZWw6ICdERC1NTU0tWVlZWScsXG4gICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJ1xuICB9XG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItZG9iJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW01hdElucHV0TW9kdWxlLCBNYXRGb3JtRmllbGRNb2R1bGUsIENvbW1vbk1vZHVsZSwgTWF0RGF0ZXBpY2tlck1vZHVsZSwgTW9tZW50RGF0ZU1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZV0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICB7XG4gICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICB1c2VFeGlzdGluZzogRG9iQ29tcG9uZW50LFxuICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBEYXRlQWRhcHRlcixcbiAgICAgIHVzZUNsYXNzOiBNb21lbnREYXRlQWRhcHRlcixcbiAgICAgIGRlcHM6IFtdXG4gICAgfSxcbiAgICB7IHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiBNWV9EQVRFX0ZPUk1BVCB9XG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9kb2IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vZG9iLmNvbXBvbmVudC5jc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBEb2JDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIGZpZWxkOiBhbnkgPSBpbnB1dC5yZXF1aXJlZDxhbnk+KCk7XG4gIGlucHV0VmFsdWU6IGFueSA9IG51bGw7XG4gIHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QgOiBhbnkgPSBpbnB1dDxhbnk+KCk7XG4gIEBPdXRwdXQoKSBibHVyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgZGF0ZVNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSBpbnZhbGlkRGF0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzZXJ2aWNlIDogTWFzdGVyQ29udHJvbFNlcnZpY2UpIHt9XG5cbiAgIGRhdGVEaXZpc2lvbkZvcm1hdChldmVudDogYW55KSB7XG4gICAgbGV0IGV2dCA9IGV2ZW50LnRhcmdldDtcblxuICAgIC8vIENoZWNrIGlmIHVzZXIgaXMgZGVsZXRpbmcgKGJhY2tzcGFjZS9kZWxldGUpXG4gICAgY29uc3QgaXNEZWxldGluZyA9IGV2ZW50LmlucHV0VHlwZSA9PT0gJ2RlbGV0ZUNvbnRlbnRCYWNrd2FyZCcgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuaW5wdXRUeXBlID09PSAnZGVsZXRlQ29udGVudEZvcndhcmQnIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICFldmVudC5kYXRhO1xuXG4gICAgLy8gSWYgZGVsZXRpbmcsIGFsbG93IG5vcm1hbCBkZWxldGlvbiB3aXRob3V0IGF1dG8tYWRkaW5nIGRhc2hlc1xuICAgIGlmIChpc0RlbGV0aW5nKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IHZhbHVlID0gZXZ0LnZhbHVlO1xuXG4gICAgLy8gSGFuZGxlIGNhc2Ugd2hlcmUgd2UgaGF2ZSBleGlzdGluZyBkYXNoZXMgYnV0IG5lZWQgdG8gcmVmb3JtYXRcbiAgICAvLyBTcGxpdCBieSBkYXNoIHRvIHVuZGVyc3RhbmQgY3VycmVudCBzdHJ1Y3R1cmVcbiAgICBjb25zdCBwYXJ0cyA9IHZhbHVlLnNwbGl0KCctJyk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGV4YWN0bHkgMyBwYXJ0cyAoZGF0ZS1tb250aC15ZWFyKSwgZG9uJ3QgYWRkIG1vcmUgZGFzaGVzXG4gICAgaWYgKHBhcnRzLmxlbmd0aCA8IDMpIHtcbiAgICAgICAvLyBGb3IgZmlyc3QgZGFzaCBhZnRlciBkYXRlICgyIGRpZ2l0cylcbiAgICBpZiAodmFsdWUubGVuZ3RoID4gMiAmJiAhdmFsdWUuaW5jbHVkZXMoJy0nKSkge1xuICAgICAgZXZ0LnZhbHVlID0gW3ZhbHVlLnNsaWNlKDAsIDIpLCAnLScsIHZhbHVlLnNsaWNlKDIpXS5qb2luKCcnKTtcbiAgICB9XG4gICAgLy8gRm9yIHNlY29uZCBkYXNoIGFmdGVyIG1vbnRoXG4gICAgZWxzZSBpZiAocGFydHMubGVuZ3RoID09PSAyKSB7XG4gICAgICBjb25zdCBkYXRlUGFydCA9IHBhcnRzWzBdO1xuICAgICAgY29uc3QgbW9udGhQYXJ0ID0gcGFydHNbMV07XG5cbiAgICAgIC8vIEFkZCBkYXNoIGFmdGVyIG51bWVyaWMgbW9udGggKGV4YWN0bHkgMiBkaWdpdHMpIG9yIGFscGhhYmV0aWMgbW9udGggKGV4YWN0bHkgMyBsZXR0ZXJzKVxuICAgICAgaWYgKChtb250aFBhcnQubGVuZ3RoID09PSAyICYmIC9eXFxkezJ9JC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgIChtb250aFBhcnQubGVuZ3RoID09PSAzICYmIC9eW2EtekEtWl17M30kLy50ZXN0KG1vbnRoUGFydCkpKSB7XG4gICAgICAgIGV2dC52YWx1ZSA9IGRhdGVQYXJ0ICsgJy0nICsgbW9udGhQYXJ0ICsgJy0nO1xuICAgICAgfVxuICAgIH1cblxuICAgIH1cbiAgICAgY29uc3QgZGF0ZVBhcnQgPSBwYXJ0c1swXSB8fCAnJztcbiAgICAgIGNvbnN0IG1vbnRoUGFydCA9IHBhcnRzWzFdIHx8ICcnO1xuICAgICAgY29uc3QgeWVhclBhcnQgPSBwYXJ0c1syXSB8fCAnJztcblxuICAgICAvLyBQcmV2ZW50IGZ1cnRoZXIgaW5wdXQgaWYgbGltaXRzIGFyZSByZWFjaGVkIGFuZCByZXN0b3JlIHByZXZpb3VzIHZhbHVlXG4gICAgICBpZiAoKGRhdGVQYXJ0Lmxlbmd0aCA+PSAyKSB8fFxuICAgICAgICAgIChtb250aFBhcnQubGVuZ3RoID49IDIgJiYgL15cXGQrJC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgIChtb250aFBhcnQubGVuZ3RoID49IDMgJiYgL15bYS16QS1aXSskLy50ZXN0KG1vbnRoUGFydCkpIHx8XG4gICAgICAgICAgKHllYXJQYXJ0Lmxlbmd0aCA+PSA0KSkge1xuXG4gICAgICAgIC8vIEdldCBjdXJzb3IgcG9zaXRpb24gdG8gZGV0ZXJtaW5lIHdoaWNoIHBhcnQgaXMgYmVpbmcgZWRpdGVkXG4gICAgICAgIGNvbnN0IGN1cnNvclBvcyA9IGV2dC5zZWxlY3Rpb25TdGFydDtcbiAgICAgICAgY29uc3QgaXNFZGl0aW5nRGF0ZSA9IGN1cnNvclBvcyA8PSAzO1xuICAgICAgICBjb25zdCBpc0VkaXRpbmdNb250aCA9IGN1cnNvclBvcyA+IDMgJiYgY3Vyc29yUG9zIDw9ICgzICsgbW9udGhQYXJ0Lmxlbmd0aCk7XG4gICAgICAgIGNvbnN0IGlzRWRpdGluZ1llYXIgPSBjdXJzb3JQb3MgPiAoMyArIG1vbnRoUGFydC5sZW5ndGggKyAxKTtcblxuICAgICAgICAvLyBSZWNvbnN0cnVjdCB0aGUgcHJldmlvdXMgdmFsaWQgdmFsdWUgYnkgdHJpbW1pbmcgZXhjZXNzIGNoYXJhY3RlcnNcbiAgICAgICAgbGV0IHByZXZpb3VzVmFsaWRWYWx1ZT0nJztcbiAgICAgICAgaWYgKGlzRWRpdGluZ0RhdGUgJiYgZGF0ZVBhcnQubGVuZ3RoID49IDIpIHtcbiAgICAgICAgICAvLyBUcmltIGRhdGUgcGFydCB0byAyIGNoYXJhY3RlcnMgbWF4XG4gICAgICAgICAgY29uc3QgdmFsaWREYXRlUGFydCA9IGRhdGVQYXJ0LnN1YnN0cmluZygwLCAyKTtcbiAgICAgICAgICBwcmV2aW91c1ZhbGlkVmFsdWUgPSB2YWxpZERhdGVQYXJ0ICsgKHBhcnRzWzFdID8gJy0nICsgcGFydHNbMV0gOiAnJykgKyAocGFydHNbMl0gPyAnLScgKyBwYXJ0c1syXSA6ICcnKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0VkaXRpbmdNb250aCAmJiBtb250aFBhcnQubGVuZ3RoID49IDIgJiYgL15cXGQrJC8udGVzdChtb250aFBhcnQpKSB7XG4gICAgICAgICAgLy8gVHJpbSBudW1lcmljIG1vbnRoIHRvIDIgY2hhcmFjdGVycyBtYXhcbiAgICAgICAgICBjb25zdCB2YWxpZE1vbnRoUGFydCA9IG1vbnRoUGFydC5zdWJzdHJpbmcoMCwgMik7XG4gICAgICAgICAgcHJldmlvdXNWYWxpZFZhbHVlID0gcGFydHNbMF0gKyAnLScgKyB2YWxpZE1vbnRoUGFydCArIChwYXJ0c1syXSA/ICctJyArIHBhcnRzWzJdIDogJycpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRWRpdGluZ01vbnRoICYmIG1vbnRoUGFydC5sZW5ndGggPj0gMyApIHtcbiAgICAgICAgICAvLyBUcmltIGFscGhhYmV0aWMgbW9udGggdG8gMyBjaGFyYWN0ZXJzIG1heFxuICAgICAgICAgIGNvbnN0IHZhbGlkTW9udGhQYXJ0ID0gbW9udGhQYXJ0LnN1YnN0cmluZygwLCAzKTtcbiAgICAgICAgICBwcmV2aW91c1ZhbGlkVmFsdWUgPSBwYXJ0c1swXSArICctJyArIHZhbGlkTW9udGhQYXJ0ICsgKHBhcnRzWzJdID8gJy0nICsgcGFydHNbMl0gOiAnJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNFZGl0aW5nWWVhciAmJiB5ZWFyUGFydC5sZW5ndGggPj0gNCkge1xuICAgICAgICAgIC8vIFRyaW0geWVhciBwYXJ0IHRvIDQgY2hhcmFjdGVycyBtYXhcbiAgICAgICAgICBjb25zdCB2YWxpZFllYXJQYXJ0ID0geWVhclBhcnQuc3Vic3RyaW5nKDAsIDQpO1xuICAgICAgICAgIHByZXZpb3VzVmFsaWRWYWx1ZSA9IHBhcnRzWzBdICsgJy0nICsgcGFydHNbMV0gKyAnLScgKyB2YWxpZFllYXJQYXJ0O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUHJldmVudCBpbnB1dCBpZiB0cnlpbmcgdG8gZXhjZWVkIGxpbWl0cyBieSByZXN0b3JpbmcgcHJldmlvdXMgdmFsdWVcbiAgICAgICAgaWYgKChpc0VkaXRpbmdEYXRlICYmIGRhdGVQYXJ0Lmxlbmd0aCA+PSAyKSB8fFxuICAgICAgICAgICAgKGlzRWRpdGluZ01vbnRoICYmIG1vbnRoUGFydC5sZW5ndGggPj0gMiAmJiAvXlxcZCskLy50ZXN0KG1vbnRoUGFydCkpIHx8XG4gICAgICAgICAgICAoaXNFZGl0aW5nTW9udGggJiYgbW9udGhQYXJ0Lmxlbmd0aCA+PSAzICkgfHxcbiAgICAgICAgICAgIChpc0VkaXRpbmdZZWFyICYmIHllYXJQYXJ0Lmxlbmd0aCA+PSA0KSkge1xuXG4gICAgICAgICAgLy8gUmVzdG9yZSB0aGUgcHJldmlvdXMgdmFsaWQgdmFsdWVcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGV2dC52YWx1ZSA9IHByZXZpb3VzVmFsaWRWYWx1ZTtcbiAgICAgICAgICB9LCAwKTtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gIH1cblxuXG5cblxuXG5cbiAgX29uQ2hhbmdlOiBhbnkgPSAoaW5wdXRWYWx1ZTphbnkpID0+IHt9O1xuICBfdW5Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fTtcblxuICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZHtcbiAgICB0aGlzLmlucHV0VmFsdWU9b2JqO1xuICB9O1xuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lke1xuICAgIHRoaXMuX29uQ2hhbmdlID0gZm47XG4gIH07XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lke1xuICAgIHRoaXMuX3VuVG91Y2hlZCA9IGZuO1xuICB9O1xuICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZHt9O1xuXG4gIG9uSW5wdXRDaGFuZ2UoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGV2ZW50LnRhcmdldC52YWx1ZTtcbiAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLmlucHV0VmFsdWUpO1xuICB9XG5cbiAgb25JbnB1dEJsdXIoZXZlbnQ/IDogYW55KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNlcnZpY2UuY2hlY2tJZlZhbHVlSXNFbXB0eShldmVudC50YXJnZXQudmFsdWUpKSB7XG4gICAgICBpZiAoaXNOYU4oRGF0ZS5wYXJzZShldmVudC50YXJnZXQudmFsdWUpKSkge1xuICAgICAgICBldmVudC50YXJnZXQudmFsdWUgPSAnJztcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fdW5Ub3VjaGVkKCk7XG4gICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICB9XG5cblxuICAvLyBIYW5kbGUgZGF0ZXBpY2tlciBzZWxlY3Rpb25cbiAgb25EYXRlQ2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQudmFsdWUpIHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkRGF0ZSA9IGV2ZW50LnZhbHVlO1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gc2VsZWN0ZWREYXRlO1xuICAgICAgdGhpcy5fb25DaGFuZ2UodGhpcy5pbnB1dFZhbHVlKTtcblxuICAgICAgLy8gRW1pdCBkYXRlIHNlbGVjdGlvbiBldmVudFxuICAgICAgdGhpcy5kYXRlU2VsZWN0ZWQuZW1pdCh7XG4gICAgICAgIGZvcm1hdHRlZFZhbHVlOiB0aGlzLmlucHV0VmFsdWUsXG4gICAgICAgIGRhdGVPYmplY3Q6IHNlbGVjdGVkRGF0ZSxcbiAgICAgICAgaXNWYWxpZDogdHJ1ZSxcbiAgICAgICAgc291cmNlOiAnZGF0ZXBpY2tlcidcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy5pbnB1dFZhbHVlKTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGxhYmVsICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGUgJiYgZmllbGQoKS5pc1Nob3dMYWJlbFwiIGNsYXNzPVwiZmllbGQtbGFibGVcIj57eyBmaWVsZCgpPy5sYWJlbFxuICB9fTxzcGFuIHN0eWxlPVwiY29sb3I6IHJlZFwiICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxuPG1hdC1mb3JtLWZpZWxkIFtjbGFzc109XCIndy0xMDAgJyArIGZpZWxkKCk/LmZpZWxkTmFtZVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZVwiIFtuZ1N0eWxlXT1cIntcbiAgICAnLS1jdXN0b20tYm9yZGVyLWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJDb2xvciAsXG4gICAgJy0tY3VzdG9tLWJvcmRlci13aWR0aCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyV2lkdGggLFxuICAgICctLWN1c3RvbS1ib3JkZXItcmFkaXVzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMgLFxuICAgICctLWN1c3RvbS1ib3JkZXItY29sb3ItZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyQ29sb3IgLFxuICAgICctLWN1c3RvbS1ib3JkZXItd2lkdGgtZm9jdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyV2lkdGggLFxuICAgICctLWN1c3RvbS1ib3JkZXItY29sb3ItaG92ZXInOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmhvdmVyQm9yZGVyQ29sb3IgLFxuICAgICctLWN1c3RvbS1ib3JkZXItd2lkdGgtaG92ZXInOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmhvdmVyQm9yZGVyV2lkdGggLFxuICAgICctLWN1c3RvbS1ib3JkZXItY29sb3ItZXJyb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmVycm9yQm9yZGVyQ29sb3IgLFxuICAgICctLWN1c3RvbS1ib3JkZXItd2lkdGgtZXJyb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmVycm9yQm9yZGVyV2lkdGggLFxuICAgICctLWN1c3RvbS1mb250LXNpemUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRTaXplICxcbiAgICAnLS1jdXN0b20tZm9udC13ZWlnaHQnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRXZWlnaHQgLFxuICAgICctLWN1c3RvbS1mb250LWZhbWlseSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udEZhbWlseSAsXG4gICAgJy0tY3VzdG9tLWZvbnQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNvbG9yICxcbiAgICAnLS1jdXN0b20tY2FyZXQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNhcmV0Q29sb3IgLFxuICAgICctLWN1c3RvbS1mb250LWNvbG9yLWRpc2FibGVkJyA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZGlzYWJsZUNvbG9yICxcbiAgICAnLS1jdXN0b20tYmctY29sb3ItZGlzYWJsZWQnIDogZmllbGQoKT8uY29udHJvbFN0eWxlPy5kaXNhYmxlQmFja2dyb3VuZCAsXG4gICAgJy0tY3VzdG9tLWJnLWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5iYWNrZ3JvdW5kICxcbiAgICAgJy0tY3VzdG9tLWJnLWNvbG9yLWZvY3VzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JhY2tncm91bmQgLFxuICAgIH1cIj5cbiAgQGlmKHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QoKSkge1xuICA8aW5wdXQgbWF0SW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIiBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQoKT8ucGxhY2VIb2xkZXIgfHwgJ0RELU1NLVlZWVknXCIgW3JlcXVpcmVkXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIlxuICAgIFtwYXR0ZXJuXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5cIiBbbWF0RGF0ZXBpY2tlcl09XCJwaWNrZXJcIiAoaW5wdXQpPVwiZGF0ZURpdmlzaW9uRm9ybWF0KCRldmVudClcIlxuICAgIFttaW5dPVwiZmllbGQoKT8uY29uZmlnRGF0YT8ubWluXCIgW21heF09XCJmaWVsZCgpPy5jb25maWdEYXRhPy5tYXhcIiBbZGlzYWJsZWRdPVwiZmllbGQoKT8uaXNEaXNhYmxlXCJcbiAgICAoZGF0ZUNoYW5nZSk9XCJvbkRhdGVDaGFuZ2UoJGV2ZW50KVwiIChibHVyKT1cIm9uSW5wdXRCbHVyKCRldmVudClcIiBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXG4gICAgW2Zvcm1Db250cm9sXT1cInJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QoKVwiIC8+XG4gIH1AZWxzZSB7XG4gIDxpbnB1dCBtYXRJbnB1dCBhdXRvY29tcGxldGU9XCJvZmZcIiB0eXBlPVwidGV4dFwiIFtuYW1lXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiIFtpZF09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJmaWVsZCgpPy5wbGFjZUhvbGRlclwiIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcbiAgICBbcGF0dGVybl09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuXCIgW21hdERhdGVwaWNrZXJdPVwicGlja2VyXCIgKGlucHV0KT1cImRhdGVEaXZpc2lvbkZvcm1hdCgkZXZlbnQpXCJcbiAgICBbbWluXT1cImZpZWxkKCk/LmNvbmZpZ0RhdGE/Lm1pblwiIFttYXhdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8ubWF4XCIgW2Rpc2FibGVkXT1cImZpZWxkKCk/LmlzRGlzYWJsZVwiXG4gICAgKGRhdGVDaGFuZ2UpPVwib25EYXRlQ2hhbmdlKCRldmVudClcIiAoYmx1cik9XCJvbklucHV0Qmx1cigkZXZlbnQpXCIgW3ZhbHVlXT1cImlucHV0VmFsdWVcIiAvPlxuICB9XG5cbiAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJwaWNrZXJcIj5cbiAgICA8aW1nIHNyYz1cImh0dHBzOi8vY2RuLmdvZGlnaXQuY29tL2RpZ2l0UGx1c0Fzc2V0cy9yZXRhaWwtbGlmZS1pY29uL3N2Z2ljb24vZGF0ZV9waWNrZXJfaWNvbi5zdmdcIiBzdHlsZT1cIndpZHRoOiAxNnB4XCJcbiAgICAgIG1hdERhdGVwaWNrZXJUb2dnbGVJY29uIC8+XG4gIDwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxuICA8bWF0LWRhdGVwaWNrZXIgI3BpY2tlcj48L21hdC1kYXRlcGlja2VyPlxuICA8bWF0LWVycm9yICpuZ0lmPVwiZmFsc2VcIj5cbiAgICB7eyBmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkTWVzc2FnZSB9fVxuICA8L21hdC1lcnJvcj5cbjwvbWF0LWZvcm0tZmllbGQ+XG48ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiZmFsc2VcIj5cbiAge3sgZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZE1lc3NhZ2UgfX0uXG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJmaWVsZCgpPy5jb25maWdEYXRhPy5pc0ludmFsaWRcIj5cbiAge3sgZmllbGQoKT8udmFsaWRhdG9ycz8ucGF0dGVybk1lc3NhZ2UgfX0uXG48L2Rpdj5cbiJdfQ==
|
|
211
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9iLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hc3Rlci1jb250cm9sL3NyYy9saWIvZG9iL2RvYi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2RvYi9kb2IuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7O0FBSXpELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixLQUFLLEVBQUU7UUFDTCxTQUFTLEVBQUU7WUFDVCxZQUFZO1lBQ1osWUFBWTtZQUNaLFlBQVk7WUFDWixZQUFZO1lBQ1osYUFBYTtZQUNiLGNBQWM7WUFDZCxhQUFhO1NBQ2Q7S0FDRjtJQUNGLE9BQU8sRUFBRTtRQUNOLFNBQVMsRUFBRSxhQUFhO1FBQ3hCLGNBQWMsRUFBRSxVQUFVO1FBQzFCLGFBQWEsRUFBRSxhQUFhO1FBQzVCLGtCQUFrQixFQUFFLFdBQVc7S0FDaEM7Q0FDRixDQUFDO0FBc0JGLE1BQU0sT0FBTyxZQUFZO0lBU0o7SUFSbkIsS0FBSyxHQUFRLEtBQUssQ0FBQyxRQUFRLEVBQU8sQ0FBQztJQUNuQyxVQUFVLEdBQVEsSUFBSSxDQUFDO0lBQ3ZCLHlCQUF5QixHQUFTLEtBQUssRUFBTyxDQUFDO0lBQ3JDLElBQUksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQy9CLFdBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ3RDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ3ZDLFdBQVcsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBRWhELFlBQW1CLE9BQThCO1FBQTlCLFlBQU8sR0FBUCxPQUFPLENBQXVCO0lBQUcsQ0FBQztJQUVwRCxrQkFBa0IsQ0FBQyxLQUFVO1FBQzVCLElBQUksR0FBRyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFFdkIsK0NBQStDO1FBQy9DLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxTQUFTLEtBQUssdUJBQXVCO1lBQzNDLEtBQUssQ0FBQyxTQUFTLEtBQUssc0JBQXNCO1lBQzFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQztRQUUvQixnRUFBZ0U7UUFDaEUsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNmLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxLQUFLLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQztRQUV0QixpRUFBaUU7UUFDakUsZ0RBQWdEO1FBQ2hELE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFL0Isc0VBQXNFO1FBQ3RFLElBQUksS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQix1Q0FBdUM7WUFDMUMsSUFBSSxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDN0MsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLENBQUM7WUFDRCw4QkFBOEI7aUJBQ3pCLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDNUIsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUMxQixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBRTNCLDBGQUEwRjtnQkFDMUYsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7b0JBQ3JELENBQUMsU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQ2hFLEdBQUcsQ0FBQyxLQUFLLEdBQUcsUUFBUSxHQUFHLEdBQUcsR0FBRyxTQUFTLEdBQUcsR0FBRyxDQUFDO2dCQUMvQyxDQUFDO1lBQ0gsQ0FBQztRQUVELENBQUM7UUFDQSxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakMsTUFBTSxRQUFRLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVqQyx5RUFBeUU7UUFDeEUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDO1lBQ3RCLENBQUMsU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNsRCxDQUFDLFNBQVMsQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDeEQsQ0FBQyxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFFM0IsOERBQThEO1lBQzlELE1BQU0sU0FBUyxHQUFHLEdBQUcsQ0FBQyxjQUFjLENBQUM7WUFDckMsTUFBTSxhQUFhLEdBQUcsU0FBUyxJQUFJLENBQUMsQ0FBQztZQUNyQyxNQUFNLGNBQWMsR0FBRyxTQUFTLEdBQUcsQ0FBQyxJQUFJLFNBQVMsSUFBSSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUUsTUFBTSxhQUFhLEdBQUcsU0FBUyxHQUFHLENBQUMsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFFN0QscUVBQXFFO1lBQ3JFLElBQUksa0JBQWtCLEdBQUMsRUFBRSxDQUFDO1lBQzFCLElBQUksYUFBYSxJQUFJLFFBQVEsQ0FBQyxNQUFNLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQzFDLHFDQUFxQztnQkFDckMsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQy9DLGtCQUFrQixHQUFHLGFBQWEsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzNHLENBQUM7aUJBQU0sSUFBSSxjQUFjLElBQUksU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUM5RSx5Q0FBeUM7Z0JBQ3pDLE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxrQkFBa0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLGNBQWMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDMUYsQ0FBQztpQkFBTSxJQUFJLGNBQWMsSUFBSSxTQUFTLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRyxDQUFDO2dCQUNwRCw0Q0FBNEM7Z0JBQzVDLE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxrQkFBa0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLGNBQWMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDMUYsQ0FBQztpQkFBTSxJQUFJLGFBQWEsSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNqRCxxQ0FBcUM7Z0JBQ3JDLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUMvQyxrQkFBa0IsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsYUFBYSxDQUFDO1lBQ3ZFLENBQUM7WUFFRCx1RUFBdUU7WUFDdkUsSUFBSSxDQUFDLGFBQWEsSUFBSSxRQUFRLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQztnQkFDdkMsQ0FBQyxjQUFjLElBQUksU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDcEUsQ0FBQyxjQUFjLElBQUksU0FBUyxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUU7Z0JBQzFDLENBQUMsYUFBYSxJQUFJLFFBQVEsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFFNUMsbUNBQW1DO2dCQUNuQyxVQUFVLENBQUMsR0FBRyxFQUFFO29CQUNkLEdBQUcsQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLENBQUM7Z0JBQ2pDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDTixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3ZCLE9BQU87WUFDVCxDQUFDO1FBQ0gsQ0FBQztJQUVMLENBQUM7SUFPRCxTQUFTLEdBQVEsQ0FBQyxVQUFjLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUN4QyxVQUFVLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBRTNCLFVBQVUsQ0FBQyxHQUFRO1FBQ2pCLElBQUksQ0FBQyxVQUFVLEdBQUMsR0FBRyxDQUFDO0lBQ3RCLENBQUM7SUFBQSxDQUFDO0lBQ0YsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQUEsQ0FBQztJQUNGLGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUFBLENBQUM7SUFDRixnQkFBZ0IsQ0FBRSxVQUFtQixJQUFRLENBQUM7SUFBQSxDQUFDO0lBRS9DLGFBQWEsQ0FBQyxLQUFVO1FBQ3RCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFZO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUMxRCxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO2dCQUMxQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7WUFDMUIsQ0FBQztRQUNILENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUdELDhCQUE4QjtJQUM5QixZQUFZLENBQUMsS0FBVTtRQUNyQixJQUFJLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNoQixNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxVQUFVLEdBQUcsWUFBWSxDQUFDO1lBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBRWhDLDRCQUE0QjtZQUM1QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDckIsY0FBYyxFQUFFLElBQUksQ0FBQyxVQUFVO2dCQUMvQixVQUFVLEVBQUUsWUFBWTtnQkFDeEIsT0FBTyxFQUFFLElBQUk7Z0JBQ2IsTUFBTSxFQUFFLFlBQVk7YUFDckIsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO3dHQTFKVSxZQUFZOzRGQUFaLFlBQVksOGRBaEJWO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFlBQVk7Z0JBQ3pCLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDSDtnQkFDRSxPQUFPLEVBQUUsV0FBVztnQkFDcEIsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsSUFBSSxFQUFFLEVBQUU7YUFDVDtZQUNELEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxjQUFjLEVBQUU7U0FDeEQsMEJDL0NILHUzR0FvREEscTlHRGxCWSxjQUFjLG14QkFBRSxrQkFBa0IsOEJBQUUsWUFBWSx1TkFBRSxtQkFBbUIsaW1CQUFFLGdCQUFnQiw4QkFBRSxtQkFBbUI7OzRGQWlCM0csWUFBWTtrQkFwQnhCLFNBQVM7K0JBQ0UsU0FBUyxjQUNQLElBQUksV0FDUCxDQUFDLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLENBQUMsYUFDMUc7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxjQUFjOzRCQUN6QixLQUFLLEVBQUUsSUFBSTt5QkFDWjt3QkFDSDs0QkFDRSxPQUFPLEVBQUUsV0FBVzs0QkFDcEIsUUFBUSxFQUFFLGlCQUFpQjs0QkFDM0IsSUFBSSxFQUFFLEVBQUU7eUJBQ1Q7d0JBQ0QsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRTtxQkFDeEQ7eUZBUVMsSUFBSTtzQkFBYixNQUFNO2dCQUNHLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBpbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNb21lbnREYXRlQWRhcHRlciwgTW9tZW50RGF0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsLW1vbWVudC1hZGFwdGVyJztcbmltcG9ydCB7IERhdGVBZGFwdGVyLCBNQVRfREFURV9GT1JNQVRTIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcblxuXG5leHBvcnQgY29uc3QgTVlfREFURV9GT1JNQVQgPSB7XG4gIHBhcnNlOiB7XG4gICAgZGF0ZUlucHV0OiBbXG4gICAgICAnREQtTU0tWVlZWScsXG4gICAgICAnTU0vREQvWVlZWScsXG4gICAgICAnWVlZWS9NTS9ERCcsXG4gICAgICAnREQvTU0vWVlZWScsXG4gICAgICAnREQgTU1NIFlZWVknLFxuICAgICAgJ0REIE1NTU0gWVlZWScsXG4gICAgICAnREQtTU1NLVlZWVknXG4gICAgXVxuICB9LFxuIGRpc3BsYXk6IHtcbiAgICBkYXRlSW5wdXQ6ICdERC9NTU0vWVlZWScsXG4gICAgbW9udGhZZWFyTGFiZWw6ICdNTU0gWVlZWScsXG4gICAgZGF0ZUExMXlMYWJlbDogJ0REL01NTS9ZWVlZJyxcbiAgICBtb250aFllYXJBMTF5TGFiZWw6ICdNTU1NIFlZWVknLFxuICB9LFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWRvYicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtNYXRJbnB1dE1vZHVsZSwgTWF0Rm9ybUZpZWxkTW9kdWxlLCBDb21tb25Nb2R1bGUsIE1hdERhdGVwaWNrZXJNb2R1bGUsIE1vbWVudERhdGVNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAge1xuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgdXNlRXhpc3Rpbmc6IERvYkNvbXBvbmVudCxcbiAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsXG4gICAgICB1c2VDbGFzczogTW9tZW50RGF0ZUFkYXB0ZXIsXG4gICAgICBkZXBzOiBbXVxuICAgIH0sXG4gICAgeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogTVlfREFURV9GT1JNQVQgfVxuICBdLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9iLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2RvYi5jb21wb25lbnQuY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgRG9iQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBmaWVsZDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xuICBpbnB1dFZhbHVlOiBhbnkgPSBudWxsO1xuICByZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0IDogYW55ID0gaW5wdXQ8YW55PigpO1xuICBAT3V0cHV0KCkgYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgQE91dHB1dCgpIGRhdGVTZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuICBAT3V0cHV0KCkgaW52YWxpZERhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKSB7fVxuXG4gICBkYXRlRGl2aXNpb25Gb3JtYXQoZXZlbnQ6IGFueSkge1xuICAgIGxldCBldnQgPSBldmVudC50YXJnZXQ7XG5cbiAgICAvLyBDaGVjayBpZiB1c2VyIGlzIGRlbGV0aW5nIChiYWNrc3BhY2UvZGVsZXRlKVxuICAgIGNvbnN0IGlzRGVsZXRpbmcgPSBldmVudC5pbnB1dFR5cGUgPT09ICdkZWxldGVDb250ZW50QmFja3dhcmQnIHx8XG4gICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LmlucHV0VHlwZSA9PT0gJ2RlbGV0ZUNvbnRlbnRGb3J3YXJkJyB8fFxuICAgICAgICAgICAgICAgICAgICAgICAhZXZlbnQuZGF0YTtcblxuICAgIC8vIElmIGRlbGV0aW5nLCBhbGxvdyBub3JtYWwgZGVsZXRpb24gd2l0aG91dCBhdXRvLWFkZGluZyBkYXNoZXNcbiAgICBpZiAoaXNEZWxldGluZykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCB2YWx1ZSA9IGV2dC52YWx1ZTtcblxuICAgIC8vIEhhbmRsZSBjYXNlIHdoZXJlIHdlIGhhdmUgZXhpc3RpbmcgZGFzaGVzIGJ1dCBuZWVkIHRvIHJlZm9ybWF0XG4gICAgLy8gU3BsaXQgYnkgZGFzaCB0byB1bmRlcnN0YW5kIGN1cnJlbnQgc3RydWN0dXJlXG4gICAgY29uc3QgcGFydHMgPSB2YWx1ZS5zcGxpdCgnLScpO1xuXG4gICAgLy8gSWYgd2UgaGF2ZSBleGFjdGx5IDMgcGFydHMgKGRhdGUtbW9udGgteWVhciksIGRvbid0IGFkZCBtb3JlIGRhc2hlc1xuICAgIGlmIChwYXJ0cy5sZW5ndGggPCAzKSB7XG4gICAgICAgLy8gRm9yIGZpcnN0IGRhc2ggYWZ0ZXIgZGF0ZSAoMiBkaWdpdHMpXG4gICAgaWYgKHZhbHVlLmxlbmd0aCA+IDIgJiYgIXZhbHVlLmluY2x1ZGVzKCctJykpIHtcbiAgICAgIGV2dC52YWx1ZSA9IFt2YWx1ZS5zbGljZSgwLCAyKSwgJy0nLCB2YWx1ZS5zbGljZSgyKV0uam9pbignJyk7XG4gICAgfVxuICAgIC8vIEZvciBzZWNvbmQgZGFzaCBhZnRlciBtb250aFxuICAgIGVsc2UgaWYgKHBhcnRzLmxlbmd0aCA9PT0gMikge1xuICAgICAgY29uc3QgZGF0ZVBhcnQgPSBwYXJ0c1swXTtcbiAgICAgIGNvbnN0IG1vbnRoUGFydCA9IHBhcnRzWzFdO1xuXG4gICAgICAvLyBBZGQgZGFzaCBhZnRlciBudW1lcmljIG1vbnRoIChleGFjdGx5IDIgZGlnaXRzKSBvciBhbHBoYWJldGljIG1vbnRoIChleGFjdGx5IDMgbGV0dGVycylcbiAgICAgIGlmICgobW9udGhQYXJ0Lmxlbmd0aCA9PT0gMiAmJiAvXlxcZHsyfSQvLnRlc3QobW9udGhQYXJ0KSkgfHxcbiAgICAgICAgICAobW9udGhQYXJ0Lmxlbmd0aCA9PT0gMyAmJiAvXlthLXpBLVpdezN9JC8udGVzdChtb250aFBhcnQpKSkge1xuICAgICAgICBldnQudmFsdWUgPSBkYXRlUGFydCArICctJyArIG1vbnRoUGFydCArICctJztcbiAgICAgIH1cbiAgICB9XG5cbiAgICB9XG4gICAgIGNvbnN0IGRhdGVQYXJ0ID0gcGFydHNbMF0gfHwgJyc7XG4gICAgICBjb25zdCBtb250aFBhcnQgPSBwYXJ0c1sxXSB8fCAnJztcbiAgICAgIGNvbnN0IHllYXJQYXJ0ID0gcGFydHNbMl0gfHwgJyc7XG5cbiAgICAgLy8gUHJldmVudCBmdXJ0aGVyIGlucHV0IGlmIGxpbWl0cyBhcmUgcmVhY2hlZCBhbmQgcmVzdG9yZSBwcmV2aW91cyB2YWx1ZVxuICAgICAgaWYgKChkYXRlUGFydC5sZW5ndGggPj0gMikgfHxcbiAgICAgICAgICAobW9udGhQYXJ0Lmxlbmd0aCA+PSAyICYmIC9eXFxkKyQvLnRlc3QobW9udGhQYXJ0KSkgfHxcbiAgICAgICAgICAobW9udGhQYXJ0Lmxlbmd0aCA+PSAzICYmIC9eW2EtekEtWl0rJC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgICh5ZWFyUGFydC5sZW5ndGggPj0gNCkpIHtcblxuICAgICAgICAvLyBHZXQgY3Vyc29yIHBvc2l0aW9uIHRvIGRldGVybWluZSB3aGljaCBwYXJ0IGlzIGJlaW5nIGVkaXRlZFxuICAgICAgICBjb25zdCBjdXJzb3JQb3MgPSBldnQuc2VsZWN0aW9uU3RhcnQ7XG4gICAgICAgIGNvbnN0IGlzRWRpdGluZ0RhdGUgPSBjdXJzb3JQb3MgPD0gMztcbiAgICAgICAgY29uc3QgaXNFZGl0aW5nTW9udGggPSBjdXJzb3JQb3MgPiAzICYmIGN1cnNvclBvcyA8PSAoMyArIG1vbnRoUGFydC5sZW5ndGgpO1xuICAgICAgICBjb25zdCBpc0VkaXRpbmdZZWFyID0gY3Vyc29yUG9zID4gKDMgKyBtb250aFBhcnQubGVuZ3RoICsgMSk7XG5cbiAgICAgICAgLy8gUmVjb25zdHJ1Y3QgdGhlIHByZXZpb3VzIHZhbGlkIHZhbHVlIGJ5IHRyaW1taW5nIGV4Y2VzcyBjaGFyYWN0ZXJzXG4gICAgICAgIGxldCBwcmV2aW91c1ZhbGlkVmFsdWU9Jyc7XG4gICAgICAgIGlmIChpc0VkaXRpbmdEYXRlICYmIGRhdGVQYXJ0Lmxlbmd0aCA+PSAyKSB7XG4gICAgICAgICAgLy8gVHJpbSBkYXRlIHBhcnQgdG8gMiBjaGFyYWN0ZXJzIG1heFxuICAgICAgICAgIGNvbnN0IHZhbGlkRGF0ZVBhcnQgPSBkYXRlUGFydC5zdWJzdHJpbmcoMCwgMik7XG4gICAgICAgICAgcHJldmlvdXNWYWxpZFZhbHVlID0gdmFsaWREYXRlUGFydCArIChwYXJ0c1sxXSA/ICctJyArIHBhcnRzWzFdIDogJycpICsgKHBhcnRzWzJdID8gJy0nICsgcGFydHNbMl0gOiAnJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoaXNFZGl0aW5nTW9udGggJiYgbW9udGhQYXJ0Lmxlbmd0aCA+PSAyICYmIC9eXFxkKyQvLnRlc3QobW9udGhQYXJ0KSkge1xuICAgICAgICAgIC8vIFRyaW0gbnVtZXJpYyBtb250aCB0byAyIGNoYXJhY3RlcnMgbWF4XG4gICAgICAgICAgY29uc3QgdmFsaWRNb250aFBhcnQgPSBtb250aFBhcnQuc3Vic3RyaW5nKDAsIDIpO1xuICAgICAgICAgIHByZXZpb3VzVmFsaWRWYWx1ZSA9IHBhcnRzWzBdICsgJy0nICsgdmFsaWRNb250aFBhcnQgKyAocGFydHNbMl0gPyAnLScgKyBwYXJ0c1syXSA6ICcnKTtcbiAgICAgICAgfSBlbHNlIGlmIChpc0VkaXRpbmdNb250aCAmJiBtb250aFBhcnQubGVuZ3RoID49IDMgKSB7XG4gICAgICAgICAgLy8gVHJpbSBhbHBoYWJldGljIG1vbnRoIHRvIDMgY2hhcmFjdGVycyBtYXhcbiAgICAgICAgICBjb25zdCB2YWxpZE1vbnRoUGFydCA9IG1vbnRoUGFydC5zdWJzdHJpbmcoMCwgMyk7XG4gICAgICAgICAgcHJldmlvdXNWYWxpZFZhbHVlID0gcGFydHNbMF0gKyAnLScgKyB2YWxpZE1vbnRoUGFydCArIChwYXJ0c1syXSA/ICctJyArIHBhcnRzWzJdIDogJycpO1xuICAgICAgICB9IGVsc2UgaWYgKGlzRWRpdGluZ1llYXIgJiYgeWVhclBhcnQubGVuZ3RoID49IDQpIHtcbiAgICAgICAgICAvLyBUcmltIHllYXIgcGFydCB0byA0IGNoYXJhY3RlcnMgbWF4XG4gICAgICAgICAgY29uc3QgdmFsaWRZZWFyUGFydCA9IHllYXJQYXJ0LnN1YnN0cmluZygwLCA0KTtcbiAgICAgICAgICBwcmV2aW91c1ZhbGlkVmFsdWUgPSBwYXJ0c1swXSArICctJyArIHBhcnRzWzFdICsgJy0nICsgdmFsaWRZZWFyUGFydDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFByZXZlbnQgaW5wdXQgaWYgdHJ5aW5nIHRvIGV4Y2VlZCBsaW1pdHMgYnkgcmVzdG9yaW5nIHByZXZpb3VzIHZhbHVlXG4gICAgICAgIGlmICgoaXNFZGl0aW5nRGF0ZSAmJiBkYXRlUGFydC5sZW5ndGggPj0gMikgfHxcbiAgICAgICAgICAgIChpc0VkaXRpbmdNb250aCAmJiBtb250aFBhcnQubGVuZ3RoID49IDIgJiYgL15cXGQrJC8udGVzdChtb250aFBhcnQpKSB8fFxuICAgICAgICAgICAgKGlzRWRpdGluZ01vbnRoICYmIG1vbnRoUGFydC5sZW5ndGggPj0gMyApIHx8XG4gICAgICAgICAgICAoaXNFZGl0aW5nWWVhciAmJiB5ZWFyUGFydC5sZW5ndGggPj0gNCkpIHtcblxuICAgICAgICAgIC8vIFJlc3RvcmUgdGhlIHByZXZpb3VzIHZhbGlkIHZhbHVlXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBldnQudmFsdWUgPSBwcmV2aW91c1ZhbGlkVmFsdWU7XG4gICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgIH1cblxuICB9XG5cblxuXG5cblxuXG4gIF9vbkNoYW5nZTogYW55ID0gKGlucHV0VmFsdWU6YW55KSA9PiB7fTtcbiAgX3VuVG91Y2hlZDogYW55ID0gKCkgPT4ge307XG5cbiAgd3JpdGVWYWx1ZShvYmo6IGFueSk6IHZvaWR7XG4gICAgdGhpcy5pbnB1dFZhbHVlPW9iajtcbiAgfTtcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9O1xuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZHtcbiAgICB0aGlzLl91blRvdWNoZWQgPSBmbjtcbiAgfTtcbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWR7fTtcblxuICBvbklucHV0Q2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSBldmVudC50YXJnZXQudmFsdWU7XG4gICAgdGhpcy5fb25DaGFuZ2UodGhpcy5pbnB1dFZhbHVlKTtcbiAgfVxuXG4gIG9uSW5wdXRCbHVyKGV2ZW50PyA6IGFueSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5zZXJ2aWNlLmNoZWNrSWZWYWx1ZUlzRW1wdHkoZXZlbnQudGFyZ2V0LnZhbHVlKSkge1xuICAgICAgaWYgKGlzTmFOKERhdGUucGFyc2UoZXZlbnQudGFyZ2V0LnZhbHVlKSkpIHtcbiAgICAgICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gJyc7XG4gICAgICB9XG4gICAgfVxuICAgIHRoaXMuX3VuVG91Y2hlZCgpO1xuICAgIHRoaXMuYmx1ci5lbWl0KGV2ZW50KTtcbiAgfVxuXG5cbiAgLy8gSGFuZGxlIGRhdGVwaWNrZXIgc2VsZWN0aW9uXG4gIG9uRGF0ZUNoYW5nZShldmVudDogYW55KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LnZhbHVlKSB7XG4gICAgICBjb25zdCBzZWxlY3RlZERhdGUgPSBldmVudC52YWx1ZTtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHNlbGVjdGVkRGF0ZTtcbiAgICAgIHRoaXMuX29uQ2hhbmdlKHRoaXMuaW5wdXRWYWx1ZSk7XG5cbiAgICAgIC8vIEVtaXQgZGF0ZSBzZWxlY3Rpb24gZXZlbnRcbiAgICAgIHRoaXMuZGF0ZVNlbGVjdGVkLmVtaXQoe1xuICAgICAgICBmb3JtYXR0ZWRWYWx1ZTogdGhpcy5pbnB1dFZhbHVlLFxuICAgICAgICBkYXRlT2JqZWN0OiBzZWxlY3RlZERhdGUsXG4gICAgICAgIGlzVmFsaWQ6IHRydWUsXG4gICAgICAgIHNvdXJjZTogJ2RhdGVwaWNrZXInXG4gICAgICB9KTtcblxuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxsYWJlbCAqbmdJZj1cImZpZWxkKCkgJiYgZmllbGQoKT8uaXNWaXNpYmxlICYmIGZpZWxkKCkuaXNTaG93TGFiZWxcIiBjbGFzcz1cImZpZWxkLWxhYmxlXCI+e3sgZmllbGQoKT8ubGFiZWxcbiAgfX08c3BhbiBzdHlsZT1cImNvbG9yOiByZWRcIiAqbmdJZj1cImZpZWxkKCkgJiYgZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZFwiPio8L3NwYW4+PC9sYWJlbD5cbjxtYXQtZm9ybS1maWVsZCBbY2xhc3NdPVwiJ3ctMTAwICcgKyBmaWVsZCgpPy5maWVsZE5hbWVcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIiBbbmdTdHlsZV09XCJ7XG4gICAgJy0tY3VzdG9tLWJvcmRlci1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyQ29sb3IgLFxuICAgICctLWN1c3RvbS1ib3JkZXItd2lkdGgnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlcldpZHRoICxcbiAgICAnLS1jdXN0b20tYm9yZGVyLXJhZGl1cyc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyUmFkaXVzICxcbiAgICAnLS1jdXN0b20tYm9yZGVyLWNvbG9yLWZvY3VzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JvcmRlckNvbG9yICxcbiAgICAnLS1jdXN0b20tYm9yZGVyLXdpZHRoLWZvY3VzJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JvcmRlcldpZHRoICxcbiAgICAnLS1jdXN0b20tYm9yZGVyLWNvbG9yLWhvdmVyJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ob3ZlckJvcmRlckNvbG9yICxcbiAgICAnLS1jdXN0b20tYm9yZGVyLXdpZHRoLWhvdmVyJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ob3ZlckJvcmRlcldpZHRoICxcbiAgICAnLS1jdXN0b20tYm9yZGVyLWNvbG9yLWVycm9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5lcnJvckJvcmRlckNvbG9yICxcbiAgICAnLS1jdXN0b20tYm9yZGVyLXdpZHRoLWVycm9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5lcnJvckJvcmRlcldpZHRoICxcbiAgICAnLS1jdXN0b20tZm9udC1zaXplJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb250U2l6ZSAsXG4gICAgJy0tY3VzdG9tLWZvbnQtd2VpZ2h0JzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb250V2VpZ2h0ICxcbiAgICAnLS1jdXN0b20tZm9udC1mYW1pbHknOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRGYW1pbHkgLFxuICAgICctLWN1c3RvbS1mb250LWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5jb2xvciAsXG4gICAgJy0tY3VzdG9tLWNhcmV0LWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5jYXJldENvbG9yICxcbiAgICAnLS1jdXN0b20tZm9udC1jb2xvci1kaXNhYmxlZCcgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmRpc2FibGVDb2xvciAsXG4gICAgJy0tY3VzdG9tLWJnLWNvbG9yLWRpc2FibGVkJyA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZGlzYWJsZUJhY2tncm91bmQgLFxuICAgICctLWN1c3RvbS1iZy1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYmFja2dyb3VuZCAsXG4gICAgICctLWN1c3RvbS1iZy1jb2xvci1mb2N1cyc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCYWNrZ3JvdW5kICxcbiAgICB9XCI+XG4gIEBpZihyZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0KCkpIHtcbiAgPGlucHV0IG1hdElucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIHR5cGU9XCJ0ZXh0XCIgW25hbWVdPVwiZmllbGQoKT8uZmllbGROYW1lXCIgW2lkXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cImZpZWxkKCk/LnBsYWNlSG9sZGVyIHx8ICdERC1NTS1ZWVlZJ1wiIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcbiAgICBbcGF0dGVybl09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5wYXR0ZXJuXCIgW21hdERhdGVwaWNrZXJdPVwicGlja2VyXCIgKGlucHV0KT1cImRhdGVEaXZpc2lvbkZvcm1hdCgkZXZlbnQpXCJcbiAgICBbbWluXT1cImZpZWxkKCk/LmNvbmZpZ0RhdGE/Lm1pblwiIFttYXhdPVwiZmllbGQoKT8uY29uZmlnRGF0YT8ubWF4XCIgW2Rpc2FibGVkXT1cImZpZWxkKCk/LmlzRGlzYWJsZVwiXG4gICAgKGRhdGVDaGFuZ2UpPVwib25EYXRlQ2hhbmdlKCRldmVudClcIiAoYmx1cik9XCJvbklucHV0Qmx1cigkZXZlbnQpXCIgW3ZhbHVlXT1cImlucHV0VmFsdWVcIlxuICAgIFtmb3JtQ29udHJvbF09XCJyZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0KClcIiAvPlxuICB9QGVsc2Uge1xuICA8aW5wdXQgbWF0SW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgdHlwZT1cInRleHRcIiBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIiBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQoKT8ucGxhY2VIb2xkZXJcIiBbcmVxdWlyZWRdPVwiZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZFwiXG4gICAgW3BhdHRlcm5dPVwiZmllbGQoKT8udmFsaWRhdG9ycz8ucGF0dGVyblwiIFttYXREYXRlcGlja2VyXT1cInBpY2tlclwiIChpbnB1dCk9XCJkYXRlRGl2aXNpb25Gb3JtYXQoJGV2ZW50KVwiXG4gICAgW21pbl09XCJmaWVsZCgpPy5jb25maWdEYXRhPy5taW5cIiBbbWF4XT1cImZpZWxkKCk/LmNvbmZpZ0RhdGE/Lm1heFwiIFtkaXNhYmxlZF09XCJmaWVsZCgpPy5pc0Rpc2FibGVcIlxuICAgIChkYXRlQ2hhbmdlKT1cIm9uRGF0ZUNoYW5nZSgkZXZlbnQpXCIgKGJsdXIpPVwib25JbnB1dEJsdXIoJGV2ZW50KVwiIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCIgLz5cbiAgfVxuXG4gIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgbWF0U3VmZml4IFtmb3JdPVwicGlja2VyXCI+XG4gICAgPGltZyBzcmM9XCJodHRwczovL2Nkbi5nb2RpZ2l0LmNvbS9kaWdpdFBsdXNBc3NldHMvcmV0YWlsLWxpZmUtaWNvbi9zdmdpY29uL2RhdGVfcGlja2VyX2ljb24uc3ZnXCIgc3R5bGU9XCJ3aWR0aDogMTZweFwiXG4gICAgICBtYXREYXRlcGlja2VyVG9nZ2xlSWNvbiAvPlxuICA8L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cbiAgPG1hdC1kYXRlcGlja2VyICNwaWNrZXI+PC9tYXQtZGF0ZXBpY2tlcj5cbiAgPG1hdC1lcnJvciAqbmdJZj1cImZhbHNlXCI+XG4gICAge3sgZmllbGQoKT8udmFsaWRhdG9ycz8uaXNSZXF1aXJlZE1lc3NhZ2UgfX1cbiAgPC9tYXQtZXJyb3I+XG48L21hdC1mb3JtLWZpZWxkPlxuPGRpdiBjbGFzcz1cImVycm9yLW1lc3NhZ2VcIiAqbmdJZj1cImZhbHNlXCI+XG4gIHt7IGZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRNZXNzYWdlIH19LlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiZmllbGQoKT8uY29uZmlnRGF0YT8uaXNJbnZhbGlkXCI+XG4gIHt7IGZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5NZXNzYWdlIH19LlxuPC9kaXY+XG4iXX0=
|
|
@@ -10,10 +10,10 @@ export class InfoComponent {
|
|
|
10
10
|
}
|
|
11
11
|
field = input.required();
|
|
12
12
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InfoComponent, deps: [{ token: i1.MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: InfoComponent, isStandalone: true, selector: "lib-info", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"info-background\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\n '--custom-info-bg-color': field()?.controlStyle?.background ,\n '--custom-info-border-radius': field()?.controlStyle?.borderRadius,\n '--custom-info-border-width': field()?.controlStyle?.borderWidth,\n '--custom-info-border-color': field()?.controlStyle?.borderColor,\n '--custom-info-border-style': field()?.controlStyle?.borderStyle,\n }\">\n <span style=\"display: flex; align-items: flex-start; gap: 16px
|
|
13
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: InfoComponent, isStandalone: true, selector: "lib-info", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div class=\"info-background\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\n '--custom-info-bg-color': field()?.controlStyle?.background ,\n '--custom-info-border-radius': field()?.controlStyle?.borderRadius,\n '--custom-info-border-width': field()?.controlStyle?.borderWidth,\n '--custom-info-border-color': field()?.controlStyle?.borderColor,\n '--custom-info-border-style': field()?.controlStyle?.borderStyle,\n }\">\n <span style=\"display: flex; align-items: flex-start; gap: 16px\">\n <img\n class=\"info-nudge-image mb-1\"\n [src]=\"field()?.controlStyle?.nudgeDisplayImage\"\n alt=\"\"\n />\n <span class=\"info-nudge-text\" [ngStyle]=\"{\n '--custom-info-font-size': field()?.controlStyle?.fontSize ,\n '--custom-info-font-weight': field()?.controlStyle?.fontWeight ,\n '--custom-info-font-family': field()?.controlStyle?.fontFamily ,\n '--custom-info-font-color': field()?.controlStyle?.color ,\n }\">{{ field()?.label }}</span>\n </span>\n</div>\n", styles: ["*{font-family:mulish!important}.info-background{background:var(--custom-info-bg-color , #FFFBE5)!important;border-radius:var(--custom-info-border-radius, 8px);line-height:20.08px;padding:12px 16px;border-width:1px solid var(--custom-info-border-width, 1px);border-color:1px solid var(--custom-info-border-color, #FFBB0033);border-style:1px solid var(--custom-info-border-style, solid);color:var(--custom-info-font-color, #444);font-weight:var(--custom-info-font-weight, 600);font-size:var(--custom-info-font-size, 12px)}.info-nudge-image{height:20px;margin-right:4px 10px 0px 0px}.info-nudge-text{font-size:var(--custom-info-font-size, 10px);font-family:var(--custom-info-font-family, \"Mulish\");font-weight:var(--custom-info-font-weight, 400);color:var(--custom-info-font-color, #444)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
14
14
|
}
|
|
15
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: InfoComponent, decorators: [{
|
|
16
16
|
type: Component,
|
|
17
|
-
args: [{ selector: 'lib-info', standalone: true, imports: [CommonModule], template: "<div class=\"info-background\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\n '--custom-info-bg-color': field()?.controlStyle?.background ,\n '--custom-info-border-radius': field()?.controlStyle?.borderRadius,\n '--custom-info-border-width': field()?.controlStyle?.borderWidth,\n '--custom-info-border-color': field()?.controlStyle?.borderColor,\n '--custom-info-border-style': field()?.controlStyle?.borderStyle,\n }\">\n <span style=\"display: flex; align-items: flex-start; gap: 16px
|
|
17
|
+
args: [{ selector: 'lib-info', standalone: true, imports: [CommonModule], template: "<div class=\"info-background\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\n '--custom-info-bg-color': field()?.controlStyle?.background ,\n '--custom-info-border-radius': field()?.controlStyle?.borderRadius,\n '--custom-info-border-width': field()?.controlStyle?.borderWidth,\n '--custom-info-border-color': field()?.controlStyle?.borderColor,\n '--custom-info-border-style': field()?.controlStyle?.borderStyle,\n }\">\n <span style=\"display: flex; align-items: flex-start; gap: 16px\">\n <img\n class=\"info-nudge-image mb-1\"\n [src]=\"field()?.controlStyle?.nudgeDisplayImage\"\n alt=\"\"\n />\n <span class=\"info-nudge-text\" [ngStyle]=\"{\n '--custom-info-font-size': field()?.controlStyle?.fontSize ,\n '--custom-info-font-weight': field()?.controlStyle?.fontWeight ,\n '--custom-info-font-family': field()?.controlStyle?.fontFamily ,\n '--custom-info-font-color': field()?.controlStyle?.color ,\n }\">{{ field()?.label }}</span>\n </span>\n</div>\n", styles: ["*{font-family:mulish!important}.info-background{background:var(--custom-info-bg-color , #FFFBE5)!important;border-radius:var(--custom-info-border-radius, 8px);line-height:20.08px;padding:12px 16px;border-width:1px solid var(--custom-info-border-width, 1px);border-color:1px solid var(--custom-info-border-color, #FFBB0033);border-style:1px solid var(--custom-info-border-style, solid);color:var(--custom-info-font-color, #444);font-weight:var(--custom-info-font-weight, 600);font-size:var(--custom-info-font-size, 12px)}.info-nudge-image{height:20px;margin-right:4px 10px 0px 0px}.info-nudge-text{font-size:var(--custom-info-font-size, 10px);font-family:var(--custom-info-font-family, \"Mulish\");font-weight:var(--custom-info-font-weight, 400);color:var(--custom-info-font-color, #444)}\n"] }]
|
|
18
18
|
}], ctorParameters: () => [{ type: i1.MasterControlService }] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2luZm8vaW5mby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2luZm8vaW5mby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFVakQsTUFBTSxPQUFPLGFBQWE7SUFDTDtJQUFuQixZQUFtQixhQUFvQztRQUFwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7SUFBRSxDQUFDO0lBQzFELEtBQUssR0FBUSxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7d0dBRnhCLGFBQWE7NEZBQWIsYUFBYSx1TUNYMUIsKytCQXFCQSw4MEJEZFksWUFBWTs7NEZBSVgsYUFBYTtrQkFQekIsU0FBUzsrQkFDRSxVQUFVLGNBQ1IsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hc3RlckNvbnRyb2xTZXJ2aWNlIH0gZnJvbSAnLi4vbWFzdGVyLWNvbnRyb2wuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1pbmZvJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9pbmZvLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2luZm8uY29tcG9uZW50LmNzcydcbn0pXG5leHBvcnQgY2xhc3MgSW5mb0NvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBtYXN0ZXJTZXJ2aWNlIDogTWFzdGVyQ29udHJvbFNlcnZpY2Upe31cbiAgZmllbGQ6IGFueSA9IGlucHV0LnJlcXVpcmVkPGFueT4oKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJpbmZvLWJhY2tncm91bmRcIiAqbmdJZj1cImZpZWxkKCkgJiYgZmllbGQoKT8uaXNWaXNpYmxlXCIgW25nU3R5bGVdPVwie1xuICAnLS1jdXN0b20taW5mby1iZy1jb2xvcic6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYmFja2dyb3VuZCAsXG4gICctLWN1c3RvbS1pbmZvLWJvcmRlci1yYWRpdXMnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlclJhZGl1cyxcbiAgJy0tY3VzdG9tLWluZm8tYm9yZGVyLXdpZHRoJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJXaWR0aCxcbiAgJy0tY3VzdG9tLWluZm8tYm9yZGVyLWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJDb2xvcixcbiAgJy0tY3VzdG9tLWluZm8tYm9yZGVyLXN0eWxlJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJTdHlsZSxcbiAgfVwiPlxuICA8c3BhbiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyBnYXA6IDE2cHhcIj5cbiAgICA8aW1nXG4gICAgICBjbGFzcz1cImluZm8tbnVkZ2UtaW1hZ2UgbWItMVwiXG4gICAgICBbc3JjXT1cImZpZWxkKCk/LmNvbnRyb2xTdHlsZT8ubnVkZ2VEaXNwbGF5SW1hZ2VcIlxuICAgICAgYWx0PVwiXCJcbiAgICAvPlxuICAgIDxzcGFuIGNsYXNzPVwiaW5mby1udWRnZS10ZXh0XCIgW25nU3R5bGVdPVwie1xuICAnLS1jdXN0b20taW5mby1mb250LXNpemUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRTaXplICxcbiAgJy0tY3VzdG9tLWluZm8tZm9udC13ZWlnaHQnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRXZWlnaHQgLFxuICAnLS1jdXN0b20taW5mby1mb250LWZhbWlseSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udEZhbWlseSAsXG4gICctLWN1c3RvbS1pbmZvLWZvbnQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNvbG9yICxcbiAgfVwiPnt7IGZpZWxkKCk/LmxhYmVsIH19PC9zcGFuPlxuICA8L3NwYW4+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -5,10 +5,10 @@ import * as i1 from "@angular/common";
|
|
|
5
5
|
export class LabelComponent {
|
|
6
6
|
field = input.required();
|
|
7
7
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: LabelComponent, isStandalone: true, selector: "lib-label", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div *ngIf=\"field()?.isVisible\">\n<span class=\"master-label\" [ngStyle]=\"{\n'--master-heading-font-color': field()?.controlStyle?.color,\n'--master-heading-font-size': field()?.controlStyle?.fontSize,\n'--master-heading-font-weight': field()?.controlStyle?.fontWeight\n}\">{{field()?.label}}</span>\n</div>\n", styles: ["*{font-family:mulish!important}.master-label{font-weight:400;font-size:
|
|
8
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: LabelComponent, isStandalone: true, selector: "lib-label", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "<div *ngIf=\"field()?.isVisible\">\n<span class=\"master-label\" [ngStyle]=\"{\n'--master-heading-font-color': field()?.controlStyle?.color,\n'--master-heading-font-size': field()?.controlStyle?.fontSize,\n'--master-heading-font-weight': field()?.controlStyle?.fontWeight\n}\">{{field()?.label}}</span>\n</div>\n", styles: ["*{font-family:mulish!important}.master-label{font-weight:400;font-size:12px;color:#000}.master-label{color:var(--master-heading-font-color, #000000)!important;font-size:var(--master-heading-font-size, 14px)!important;font-weight:var(--master-heading-font-weight, 400)!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
9
9
|
}
|
|
10
10
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: LabelComponent, decorators: [{
|
|
11
11
|
type: Component,
|
|
12
|
-
args: [{ selector: 'lib-label', standalone: true, imports: [CommonModule], template: "<div *ngIf=\"field()?.isVisible\">\n<span class=\"master-label\" [ngStyle]=\"{\n'--master-heading-font-color': field()?.controlStyle?.color,\n'--master-heading-font-size': field()?.controlStyle?.fontSize,\n'--master-heading-font-weight': field()?.controlStyle?.fontWeight\n}\">{{field()?.label}}</span>\n</div>\n", styles: ["*{font-family:mulish!important}.master-label{font-weight:400;font-size:
|
|
12
|
+
args: [{ selector: 'lib-label', standalone: true, imports: [CommonModule], template: "<div *ngIf=\"field()?.isVisible\">\n<span class=\"master-label\" [ngStyle]=\"{\n'--master-heading-font-color': field()?.controlStyle?.color,\n'--master-heading-font-size': field()?.controlStyle?.fontSize,\n'--master-heading-font-weight': field()?.controlStyle?.fontWeight\n}\">{{field()?.label}}</span>\n</div>\n", styles: ["*{font-family:mulish!important}.master-label{font-weight:400;font-size:12px;color:#000}.master-label{color:var(--master-heading-font-color, #000000)!important;font-size:var(--master-heading-font-size, 14px)!important;font-weight:var(--master-heading-font-weight, 400)!important}\n"] }]
|
|
13
13
|
}] });
|
|
14
14
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9sYWJlbC9sYWJlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL2xhYmVsL2xhYmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBVWpELE1BQU0sT0FBTyxjQUFjO0lBQzNCLEtBQUssR0FBUyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7d0dBRHZCLGNBQWM7NEZBQWQsY0FBYyx3TUNYM0IsMFRBT0EsaVZEQVksWUFBWTs7NEZBSVgsY0FBYztrQkFQMUIsU0FBUzsrQkFDRSxXQUFXLGNBQ1QsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItbGFiZWwnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2xhYmVsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2xhYmVsLmNvbXBvbmVudC5jc3MnXG59KVxuZXhwb3J0IGNsYXNzIExhYmVsQ29tcG9uZW50IHtcbmZpZWxkIDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xufVxuIiwiPGRpdiAqbmdJZj1cImZpZWxkKCk/LmlzVmlzaWJsZVwiPlxuPHNwYW4gY2xhc3M9XCJtYXN0ZXItbGFiZWxcIiBbbmdTdHlsZV09XCJ7XG4nLS1tYXN0ZXItaGVhZGluZy1mb250LWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5jb2xvcixcbictLW1hc3Rlci1oZWFkaW5nLWZvbnQtc2l6ZSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFNpemUsXG4nLS1tYXN0ZXItaGVhZGluZy1mb250LXdlaWdodCc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFdlaWdodFxufVwiPnt7ZmllbGQoKT8ubGFiZWx9fTwvc3Bhbj5cbjwvZGl2PlxuIl19
|
|
@@ -61,7 +61,7 @@ export class RadioComponent {
|
|
|
61
61
|
useExisting: RadioComponent,
|
|
62
62
|
multi: true
|
|
63
63
|
}
|
|
64
|
-
], ngImport: i0, template: "<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\n }\">{{field()?.label}}<span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n <span [appTooltipTemplate]=\"HtmlContent\" arrowPosition=\"left\" tooltipPosition=\"bottom\">\n <img [src]=\"field().configData?.labelIconUrl\" class=\"toggle-img mx-1\" />\n </span>\n <ng-template #HtmlContent>\n <span [innerHTML]=\"field().configData?.tooltipMessage\"></span>\n </ng-template>\n </label>\n @if(reactiveFormControlobject()) {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable || reactiveFormControlobject?.disabled, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }@else {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }\n <div class=\"error-message\" *ngIf=\"false\">\n {{field()?.validators?.patternMessage}}.\n</div>\n", styles: [".radio-selection-border{border:1px solid #ffbb00!important;background:#fffaeb!important}*{font-family:mulish!important}.field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important;white-space:
|
|
64
|
+
], ngImport: i0, template: "<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\n }\">{{field()?.label}}<span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n <span [appTooltipTemplate]=\"HtmlContent\" arrowPosition=\"left\" tooltipPosition=\"bottom\">\n <img [src]=\"field().configData?.labelIconUrl\" class=\"toggle-img mx-1\" />\n </span>\n <ng-template #HtmlContent>\n <span [innerHTML]=\"field().configData?.tooltipMessage\"></span>\n </ng-template>\n </label>\n @if(reactiveFormControlobject()) {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable || reactiveFormControlobject?.disabled, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }@else {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }\n <div class=\"error-message\" *ngIf=\"false\">\n {{field()?.validators?.patternMessage}}.\n</div>\n", styles: [".radio-selection-border{border:1px solid #ffbb00!important;background:#fffaeb!important}*{font-family:mulish!important}.field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important;white-space:nowrap!important}.error-message{color:red}.toggle-img{width:12px;margin-left:8px!important}@media screen and (max-width: 768px){.toggle-img{width:16px}}.radio-btn-group{display:flex;align-items:center;gap:1rem;align-self:stretch}::ng-deep .radio-btn-gender .mdc-form-field .mdc-radio{display:none!important}.radio-card-gender{box-shadow:none;border-color:var(--radio-button-border-color,#DADADA);border-width:var(--radio-button-border-width, 1px solid);background:var(--radio-button-background-color, #FFFFFF);display:flex;align-items:center;cursor:pointer;width:max-content!important;border-radius:var(--radio-button-border-radius, 6px)}.radio-card-gender.two-options{min-width:144px!important}@media (max-width: 400px){.radio-card-gender.two-options{min-width:none!important;width:144px!important}}::ng-deep .radioButtonGender .mdc-form-field .mdc-radio{display:none!important}.forRadioLabel{font-size:var(--radio-button-font-size, 12px)!important;font-weight:var(--radio-button-font-weight, 400);cursor:pointer;color:var(--radio-button-font-color, #444444)}.radio-btn-icon{margin-top:-2px;margin-left:4px}.selected-radio-btn{border:1px solid #ffbb00!important}.disable-radio-btn{background:#f5f5f5;pointer-events:none;cursor:none}\n"], dependencies: [{ kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i2.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i2.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: CustomizedTooltipDirective, selector: "[appTooltipTemplate]", inputs: ["appTooltipTemplate"] }] });
|
|
65
65
|
}
|
|
66
66
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioComponent, decorators: [{
|
|
67
67
|
type: Component,
|
|
@@ -77,8 +77,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
77
77
|
useExisting: RadioComponent,
|
|
78
78
|
multi: true
|
|
79
79
|
}
|
|
80
|
-
], template: "<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\n }\">{{field()?.label}}<span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n <span [appTooltipTemplate]=\"HtmlContent\" arrowPosition=\"left\" tooltipPosition=\"bottom\">\n <img [src]=\"field().configData?.labelIconUrl\" class=\"toggle-img mx-1\" />\n </span>\n <ng-template #HtmlContent>\n <span [innerHTML]=\"field().configData?.tooltipMessage\"></span>\n </ng-template>\n </label>\n @if(reactiveFormControlobject()) {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable || reactiveFormControlobject?.disabled, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }@else {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }\n <div class=\"error-message\" *ngIf=\"false\">\n {{field()?.validators?.patternMessage}}.\n</div>\n", styles: [".radio-selection-border{border:1px solid #ffbb00!important;background:#fffaeb!important}*{font-family:mulish!important}.field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important;white-space:
|
|
80
|
+
], template: "<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\n }\">{{field()?.label}}<span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n <span [appTooltipTemplate]=\"HtmlContent\" arrowPosition=\"left\" tooltipPosition=\"bottom\">\n <img [src]=\"field().configData?.labelIconUrl\" class=\"toggle-img mx-1\" />\n </span>\n <ng-template #HtmlContent>\n <span [innerHTML]=\"field().configData?.tooltipMessage\"></span>\n </ng-template>\n </label>\n @if(reactiveFormControlobject()) {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n [formControl]=\"reactiveFormControlobject()\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable || reactiveFormControlobject?.disabled, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }@else {\n <mat-radio-group [class]=\"'w-100 radio-btn-group radio-btn-gender ' + field()?.fieldName\" *ngIf=\"field() && field()?.isVisible\"\n [required]=\"field()?.validators?.isRequired\"\n [value]=\"inputValue\"\n (change)=\"onRadioGroupChange($event)\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n >\n <div\n class=\"card radio-card-gender py-auto px-1\"\n *ngFor=\"let data of field()?.options\"\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable, 'two-options': field()?.options?.length === 2}\"\n (click)=\"toggleRadio(data.value, $event)\"\n [ngStyle]=\"{\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\n }\"\n >\n <mat-radio-button\n style=\"min-width: 72px; text-align: center;\"\n class=\"radioButtonGender\"\n [value]=\"data.value\"\n [id]=\"field()?.fieldName + '_' + data.value\"\n [name]=\"field()?.fieldName + '_' + data.value\"\n >\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color,\n }\">{{ data.label }}\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\n </span>\n </mat-radio-button>\n </div>\n </mat-radio-group>\n }\n <div class=\"error-message\" *ngIf=\"false\">\n {{field()?.validators?.patternMessage}}.\n</div>\n", styles: [".radio-selection-border{border:1px solid #ffbb00!important;background:#fffaeb!important}*{font-family:mulish!important}.field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important;white-space:nowrap!important}.error-message{color:red}.toggle-img{width:12px;margin-left:8px!important}@media screen and (max-width: 768px){.toggle-img{width:16px}}.radio-btn-group{display:flex;align-items:center;gap:1rem;align-self:stretch}::ng-deep .radio-btn-gender .mdc-form-field .mdc-radio{display:none!important}.radio-card-gender{box-shadow:none;border-color:var(--radio-button-border-color,#DADADA);border-width:var(--radio-button-border-width, 1px solid);background:var(--radio-button-background-color, #FFFFFF);display:flex;align-items:center;cursor:pointer;width:max-content!important;border-radius:var(--radio-button-border-radius, 6px)}.radio-card-gender.two-options{min-width:144px!important}@media (max-width: 400px){.radio-card-gender.two-options{min-width:none!important;width:144px!important}}::ng-deep .radioButtonGender .mdc-form-field .mdc-radio{display:none!important}.forRadioLabel{font-size:var(--radio-button-font-size, 12px)!important;font-weight:var(--radio-button-font-weight, 400);cursor:pointer;color:var(--radio-button-font-color, #444444)}.radio-btn-icon{margin-top:-2px;margin-left:4px}.selected-radio-btn{border:1px solid #ffbb00!important}.disable-radio-btn{background:#f5f5f5;pointer-events:none;cursor:none}\n"] }]
|
|
81
81
|
}], ctorParameters: () => [{ type: i1.MasterControlService }], propDecorators: { change: [{
|
|
82
82
|
type: Output
|
|
83
83
|
}] } });
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9yYWRpby9yYWRpby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3JhZGlvL3JhZGlvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFxQixLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNHLE9BQU8sRUFBRSxjQUFjLEVBQWtCLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXVCekUsTUFBTSxPQUFPLGNBQWM7SUFDTjtJQUFuQixZQUFtQixhQUFvQztRQUFwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7SUFBRSxDQUFDO0lBQzFELHlCQUF5QixHQUFTLEtBQUssRUFBTyxDQUFDO0lBQy9DLEtBQUssR0FBUyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDcEMsVUFBVSxHQUFRLElBQUksQ0FBQztJQUV2QixRQUFRLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBQ3pCLFNBQVMsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFFaEIsTUFBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFM0MsUUFBUTtRQUNOLGtFQUFrRTtJQUNwRSxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxRQUFhO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFxQjtRQUN0QyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNCLE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVLEVBQUUsS0FBWTtRQUNsQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLHlCQUF5QixJQUFJLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM5RSxJQUFJLENBQUMseUJBQXlCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7d0dBbkRVLGNBQWM7NEZBQWQsY0FBYyw4WUFSWjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxjQUFjO2dCQUMzQixLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsMEJDekJMLGtuSkF3RkEsdTVDRDdFSSxjQUFjLG9sQkFDZCxZQUFZLGtiQUNaLG1CQUFtQixzaEJBQ25CLFdBQVcsK0JBQ1gsMEJBQTBCOzs0RkFZakIsY0FBYztrQkFwQjFCLFNBQVM7K0JBQ0UsV0FBVyxjQUNULElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLDBCQUEwQjtxQkFDM0IsYUFHWTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLGdCQUFnQjs0QkFDM0IsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7eUZBV08sTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9taXplZFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLy4uL2RpcmVjdGl2ZXMvY3VzdG9taXplZC50b29sdGlwLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgaW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0UmFkaW9Nb2R1bGUsIE1hdFJhZGlvQ2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcmFkaW8nO1xuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXJhZGlvJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdFJhZGlvTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEN1c3RvbWl6ZWRUb29sdGlwRGlyZWN0aXZlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9yYWRpby5jb21wb25lbnQuY3NzJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgIHVzZUV4aXN0aW5nOiBSYWRpb0NvbXBvbmVudCxcbiAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgbWFzdGVyU2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKXt9XG4gIHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QgOiBhbnkgPSBpbnB1dDxhbnk+KCk7XG4gIGZpZWxkIDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xuICBpbnB1dFZhbHVlOiBhbnkgPSBudWxsO1xuXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fTtcblxuICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gSW5pdGlhbGl6ZSBpbnB1dFZhbHVlIHdpdGggYSBkZWZhdWx0IG9yIGluaXRpYWwgdmFsdWUgaWYgbmVlZGVkXG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZShuZXdWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgfVxuXG4gIG9uUmFkaW9Hcm91cENoYW5nZShldmVudDogTWF0UmFkaW9DaGFuZ2UpOiB2b2lkIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgdGhpcy5jaGFuZ2UuZW1pdChuZXdWYWx1ZSk7XG4gICAgY29uc29sZS5sb2coJ1JhZGlvIGdyb3VwIGNoYW5nZWQ6JywgbmV3VmFsdWUpO1xuICB9XG5cbiAgdG9nZ2xlUmFkaW8odmFsdWU6IGFueSwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5yZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0ICYmIHRoaXMucmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdC5zZXRWYWx1ZSkge1xuICAgICAgdGhpcy5yZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0LnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5vblJhZGlvR3JvdXBDaGFuZ2UoeyBzb3VyY2U6IHt9IGFzIGFueSwgdmFsdWU6IHZhbHVlIH0pO1xuICB9XG5cbn1cblxuIiwiPGxhYmVsIGNsYXNzPVwiZmllbGQtbGFibGVcIiAgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZSAmJiBmaWVsZCgpLmlzU2hvd0xhYmVsXCIgW25nU3R5bGVdPVwie1xuICB9XCI+e3tmaWVsZCgpPy5sYWJlbH19PHNwYW4gY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCI+Kjwvc3Bhbj5cbiAgPHNwYW4gW2FwcFRvb2x0aXBUZW1wbGF0ZV09XCJIdG1sQ29udGVudFwiIGFycm93UG9zaXRpb249XCJsZWZ0XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCI+XG4gICAgPGltZyBbc3JjXT1cImZpZWxkKCkuY29uZmlnRGF0YT8ubGFiZWxJY29uVXJsXCIgY2xhc3M9XCJ0b2dnbGUtaW1nIG14LTFcIiAvPlxuICA8L3NwYW4+XG4gIDxuZy10ZW1wbGF0ZSAjSHRtbENvbnRlbnQ+XG4gICAgPHNwYW4gW2lubmVySFRNTF09XCJmaWVsZCgpLmNvbmZpZ0RhdGE/LnRvb2x0aXBNZXNzYWdlXCI+PC9zcGFuPlxuICA8L25nLXRlbXBsYXRlPlxuICA8L2xhYmVsPlxuICBAaWYocmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpKSB7XG4gICAgIDxtYXQtcmFkaW8tZ3JvdXAgW2NsYXNzXT1cIid3LTEwMCByYWRpby1idG4tZ3JvdXAgcmFkaW8tYnRuLWdlbmRlciAnICsgZmllbGQoKT8uZmllbGROYW1lXCIgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZVwiXG4gICAgW3JlcXVpcmVkXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIlxuICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwicmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpXCJcbiAgICAoY2hhbmdlKT1cIm9uUmFkaW9Hcm91cENoYW5nZSgkZXZlbnQpXCJcbiAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxuICAgID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImNhcmQgcmFkaW8tY2FyZC1nZW5kZXIgcHktYXV0byBweC0xXCJcbiAgICAgICpuZ0Zvcj1cImxldCBkYXRhIG9mIGZpZWxkKCk/Lm9wdGlvbnNcIlxuICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlLXJhZGlvLWJ0bic6IGZpZWxkKCk/LmlzRGlzYWJsZSB8fCByZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0Py5kaXNhYmxlZCwgJ3R3by1vcHRpb25zJzogZmllbGQoKT8ub3B0aW9ucz8ubGVuZ3RoID09PSAyfVwiXG4gICAgICAoY2xpY2spPVwidG9nZ2xlUmFkaW8oZGF0YS52YWx1ZSwgJGV2ZW50KVwiXG4gICAgICAgW25nU3R5bGVdPVwie1xuICAgICctLXJhZGlvLWJ1dHRvbi1ib3JkZXItY29sb3InOiBpbnB1dFZhbHVlID09PSBkYXRhLnZhbHVlID8gZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JvcmRlckNvbG9yIDogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJDb2xvcixcbiAgICAnLS1yYWRpby1idXR0b24tYmFja2dyb3VuZC1jb2xvcic6IGlucHV0VmFsdWUgPT09IGRhdGEudmFsdWUgPyBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQmFja2dyb3VuZCA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYmFja2dyb3VuZCxcbiAgICAnLS1yYWRpby1idXR0b24tYm9yZGVyLXdpZHRoJzogaW5wdXRWYWx1ZSA9PT0gZGF0YS52YWx1ZSA/IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCb3JkZXJXaWR0aCA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyV2lkdGgsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWJvcmRlci1yYWRpdXMnOiBpbnB1dFZhbHVlID09PSBkYXRhLnZhbHVlID8gZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlclJhZGl1cyxcbiAgfVwiXG4gICAgICA+XG4gICAgICA8bWF0LXJhZGlvLWJ1dHRvblxuICAgICAgICBzdHlsZT1cIm1pbi13aWR0aDogNzJweDsgdGV4dC1hbGlnbjogY2VudGVyO1wiXG4gICAgICAgIGNsYXNzPVwicmFkaW9CdXR0b25HZW5kZXJcIlxuICAgICAgICBbdmFsdWVdPVwiZGF0YS52YWx1ZVwiXG4gICAgICAgIFtpZF09XCJmaWVsZCgpPy5maWVsZE5hbWUgKyAnXycgKyBkYXRhLnZhbHVlXCJcbiAgICAgICAgW25hbWVdPVwiZmllbGQoKT8uZmllbGROYW1lICsgJ18nICsgZGF0YS52YWx1ZVwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuIHN0eWxlPVwid2hpdGUtc3BhY2U6IHByZS1saW5lO1wiIGNsYXNzPVwiZm9yUmFkaW9MYWJlbFwiIFtuZ1N0eWxlXT1cIntcbiAgICAnLS1yYWRpby1idXR0b24tZm9udC13ZWlnaHQnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRXZWlnaHQsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWZvbnQtc2l6ZSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFNpemUsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWZvbnQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNvbG9yLFxuICB9XCI+e3sgZGF0YS5sYWJlbCB9fVxuICA8aW1nIGNsYXNzPVwicmFkaW8tYnRuLWljb25cIiAqbmdJZj1cImZpZWxkKCk/LmltYWdlVXJsXCIgW3NyY109XCJmaWVsZCgpPy5pbWFnZVVybFwiIGFsdD1cIlwiPlxuICA8L3NwYW4+XG4gICAgICA8L21hdC1yYWRpby1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXJhZGlvLWdyb3VwPlxuICB9QGVsc2Uge1xuICAgICA8bWF0LXJhZGlvLWdyb3VwIFtjbGFzc109XCIndy0xMDAgcmFkaW8tYnRuLWdyb3VwIHJhZGlvLWJ0bi1nZW5kZXIgJyArIGZpZWxkKCk/LmZpZWxkTmFtZVwiICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIlxuICAgIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcbiAgICBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXG4gICAgKGNoYW5nZSk9XCJvblJhZGlvR3JvdXBDaGFuZ2UoJGV2ZW50KVwiXG4gICAgW2lkXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiXG4gICAgW25hbWVdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICA+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJjYXJkIHJhZGlvLWNhcmQtZ2VuZGVyIHB5LWF1dG8gcHgtMVwiXG4gICAgICAqbmdGb3I9XCJsZXQgZGF0YSBvZiBmaWVsZCgpPy5vcHRpb25zXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsnZGlzYWJsZS1yYWRpby1idG4nOiBmaWVsZCgpPy5pc0Rpc2FibGUsICd0d28tb3B0aW9ucyc6IGZpZWxkKCk/Lm9wdGlvbnM/Lmxlbmd0aCA9PT0gMn1cIlxuICAgICAgKGNsaWNrKT1cInRvZ2dsZVJhZGlvKGRhdGEudmFsdWUsICRldmVudClcIlxuICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAnLS1yYWRpby1idXR0b24tYm9yZGVyLWNvbG9yJzogaW5wdXRWYWx1ZSA9PT0gZGF0YS52YWx1ZSA/IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCb3JkZXJDb2xvciA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyQ29sb3IsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWJhY2tncm91bmQtY29sb3InOiBpbnB1dFZhbHVlID09PSBkYXRhLnZhbHVlID8gZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JhY2tncm91bmQgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJhY2tncm91bmQsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWJvcmRlci13aWR0aCc6IGlucHV0VmFsdWUgPT09IGRhdGEudmFsdWUgPyBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyV2lkdGggOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlcldpZHRoLFxuICAgICctLXJhZGlvLWJ1dHRvbi1ib3JkZXItcmFkaXVzJzogaW5wdXRWYWx1ZSA9PT0gZGF0YS52YWx1ZSA/IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyUmFkaXVzIDogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMsXG4gIH1cIlxuICAgICAgPlxuICAgICAgPG1hdC1yYWRpby1idXR0b25cbiAgICAgICAgc3R5bGU9XCJtaW4td2lkdGg6IDcycHg7IHRleHQtYWxpZ246IGNlbnRlcjtcIlxuICAgICAgICBjbGFzcz1cInJhZGlvQnV0dG9uR2VuZGVyXCJcbiAgICAgICAgW3ZhbHVlXT1cImRhdGEudmFsdWVcIlxuICAgICAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lICsgJ18nICsgZGF0YS52YWx1ZVwiXG4gICAgICAgIFtuYW1lXT1cImZpZWxkKCk/LmZpZWxkTmFtZSArICdfJyArIGRhdGEudmFsdWVcIlxuICAgICAgPlxuICAgICAgICA8c3BhbiBzdHlsZT1cIndoaXRlLXNwYWNlOiBwcmUtbGluZTtcIiBjbGFzcz1cImZvclJhZGlvTGFiZWxcIiBbbmdTdHlsZV09XCJ7XG4gICAgJy0tcmFkaW8tYnV0dG9uLWZvbnQtd2VpZ2h0JzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb250V2VpZ2h0LFxuICAgICctLXJhZGlvLWJ1dHRvbi1mb250LXNpemUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRTaXplLFxuICAgICctLXJhZGlvLWJ1dHRvbi1mb250LWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5jb2xvcixcbiAgfVwiPnt7IGRhdGEubGFiZWwgfX1cbiAgPGltZyBjbGFzcz1cInJhZGlvLWJ0bi1pY29uXCIgKm5nSWY9XCJmaWVsZCgpPy5pbWFnZVVybFwiIFtzcmNdPVwiZmllbGQoKT8uaW1hZ2VVcmxcIiBhbHQ9XCJcIj5cbiAgPC9zcGFuPlxuICAgICAgPC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L21hdC1yYWRpby1ncm91cD5cbiAgfVxuICA8ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiZmFsc2VcIj5cbiAgICB7e2ZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5NZXNzYWdlfX0uXG48L2Rpdj5cbiJdfQ==
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWFzdGVyLWNvbnRyb2wvc3JjL2xpYi9yYWRpby9yYWRpby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXN0ZXItY29udHJvbC9zcmMvbGliL3JhZGlvL3JhZGlvLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzFGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFxQixLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNHLE9BQU8sRUFBRSxjQUFjLEVBQWtCLE1BQU0seUJBQXlCLENBQUM7Ozs7OztBQXVCekUsTUFBTSxPQUFPLGNBQWM7SUFDTjtJQUFuQixZQUFtQixhQUFvQztRQUFwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBdUI7SUFBRSxDQUFDO0lBQzFELHlCQUF5QixHQUFTLEtBQUssRUFBTyxDQUFDO0lBQy9DLEtBQUssR0FBUyxLQUFLLENBQUMsUUFBUSxFQUFPLENBQUM7SUFDcEMsVUFBVSxHQUFRLElBQUksQ0FBQztJQUV2QixRQUFRLEdBQVEsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBQ3pCLFNBQVMsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFFaEIsTUFBTSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFM0MsUUFBUTtRQUNOLGtFQUFrRTtJQUNwRSxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQVU7UUFDbkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDMUIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEVBQU87UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQU87UUFDdkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxRQUFhO1FBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFxQjtRQUN0QyxNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQzdCLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzNCLE9BQU8sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFVLEVBQUUsS0FBWTtRQUNsQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLHlCQUF5QixJQUFJLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM5RSxJQUFJLENBQUMseUJBQXlCLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELENBQUM7UUFDRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELENBQUM7d0dBbkRVLGNBQWM7NEZBQWQsY0FBYyw4WUFSWjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLFdBQVcsRUFBRSxjQUFjO2dCQUMzQixLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsMEJDekJMLGtuSkF3RkEsOC9DRDdFSSxjQUFjLG9sQkFDZCxZQUFZLGtiQUNaLG1CQUFtQixzaEJBQ25CLFdBQVcsK0JBQ1gsMEJBQTBCOzs0RkFZakIsY0FBYztrQkFwQjFCLFNBQVM7K0JBQ0UsV0FBVyxjQUNULElBQUksV0FDUDt3QkFDUCxjQUFjO3dCQUNkLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixXQUFXO3dCQUNYLDBCQUEwQjtxQkFDM0IsYUFHWTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLGdCQUFnQjs0QkFDM0IsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0Y7eUZBV08sTUFBTTtzQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9taXplZFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICcuLy4uL2RpcmVjdGl2ZXMvY3VzdG9taXplZC50b29sdGlwLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgaW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0UmFkaW9Nb2R1bGUsIE1hdFJhZGlvQ2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcmFkaW8nO1xuaW1wb3J0IHsgTWFzdGVyQ29udHJvbFNlcnZpY2UgfSBmcm9tICcuLi9tYXN0ZXItY29udHJvbC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLXJhZGlvJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdFJhZGlvTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEN1c3RvbWl6ZWRUb29sdGlwRGlyZWN0aXZlXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9yYWRpby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9yYWRpby5jb21wb25lbnQuY3NzJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgIHtcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgIHVzZUV4aXN0aW5nOiBSYWRpb0NvbXBvbmVudCxcbiAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgIH1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgbWFzdGVyU2VydmljZSA6IE1hc3RlckNvbnRyb2xTZXJ2aWNlKXt9XG4gIHJlYWN0aXZlRm9ybUNvbnRyb2xvYmplY3QgOiBhbnkgPSBpbnB1dDxhbnk+KCk7XG4gIGZpZWxkIDogYW55ID0gaW5wdXQucmVxdWlyZWQ8YW55PigpO1xuICBpbnB1dFZhbHVlOiBhbnkgPSBudWxsO1xuXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fTtcblxuICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gSW5pdGlhbGl6ZSBpbnB1dFZhbHVlIHdpdGggYSBkZWZhdWx0IG9yIGluaXRpYWwgdmFsdWUgaWYgbmVlZGVkXG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWx1ZTtcbiAgfVxuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZShuZXdWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFZhbHVlID0gbmV3VmFsdWU7XG4gICAgdGhpcy5vbkNoYW5nZShuZXdWYWx1ZSk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLmNoYW5nZS5lbWl0KG5ld1ZhbHVlKTtcbiAgfVxuXG4gIG9uUmFkaW9Hcm91cENoYW5nZShldmVudDogTWF0UmFkaW9DaGFuZ2UpOiB2b2lkIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGV2ZW50LnZhbHVlO1xuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IG5ld1ZhbHVlO1xuICAgIHRoaXMub25DaGFuZ2UobmV3VmFsdWUpO1xuICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgdGhpcy5jaGFuZ2UuZW1pdChuZXdWYWx1ZSk7XG4gICAgY29uc29sZS5sb2coJ1JhZGlvIGdyb3VwIGNoYW5nZWQ6JywgbmV3VmFsdWUpO1xuICB9XG5cbiAgdG9nZ2xlUmFkaW8odmFsdWU6IGFueSwgZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLmlucHV0VmFsdWUgPSB2YWx1ZTtcbiAgICBpZiAodGhpcy5yZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0ICYmIHRoaXMucmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdC5zZXRWYWx1ZSkge1xuICAgICAgdGhpcy5yZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0LnNldFZhbHVlKHZhbHVlKTtcbiAgICB9XG4gICAgdGhpcy5vblJhZGlvR3JvdXBDaGFuZ2UoeyBzb3VyY2U6IHt9IGFzIGFueSwgdmFsdWU6IHZhbHVlIH0pO1xuICB9XG5cbn1cblxuIiwiPGxhYmVsIGNsYXNzPVwiZmllbGQtbGFibGVcIiAgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZSAmJiBmaWVsZCgpLmlzU2hvd0xhYmVsXCIgW25nU3R5bGVdPVwie1xuICB9XCI+e3tmaWVsZCgpPy5sYWJlbH19PHNwYW4gY2xhc3M9XCJlcnJvci1tZXNzYWdlXCIgKm5nSWY9XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCI+Kjwvc3Bhbj5cbiAgPHNwYW4gW2FwcFRvb2x0aXBUZW1wbGF0ZV09XCJIdG1sQ29udGVudFwiIGFycm93UG9zaXRpb249XCJsZWZ0XCIgdG9vbHRpcFBvc2l0aW9uPVwiYm90dG9tXCI+XG4gICAgPGltZyBbc3JjXT1cImZpZWxkKCkuY29uZmlnRGF0YT8ubGFiZWxJY29uVXJsXCIgY2xhc3M9XCJ0b2dnbGUtaW1nIG14LTFcIiAvPlxuICA8L3NwYW4+XG4gIDxuZy10ZW1wbGF0ZSAjSHRtbENvbnRlbnQ+XG4gICAgPHNwYW4gW2lubmVySFRNTF09XCJmaWVsZCgpLmNvbmZpZ0RhdGE/LnRvb2x0aXBNZXNzYWdlXCI+PC9zcGFuPlxuICA8L25nLXRlbXBsYXRlPlxuICA8L2xhYmVsPlxuICBAaWYocmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpKSB7XG4gICAgIDxtYXQtcmFkaW8tZ3JvdXAgW2NsYXNzXT1cIid3LTEwMCByYWRpby1idG4tZ3JvdXAgcmFkaW8tYnRuLWdlbmRlciAnICsgZmllbGQoKT8uZmllbGROYW1lXCIgKm5nSWY9XCJmaWVsZCgpICYmIGZpZWxkKCk/LmlzVmlzaWJsZVwiXG4gICAgW3JlcXVpcmVkXT1cImZpZWxkKCk/LnZhbGlkYXRvcnM/LmlzUmVxdWlyZWRcIlxuICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwicmVhY3RpdmVGb3JtQ29udHJvbG9iamVjdCgpXCJcbiAgICAoY2hhbmdlKT1cIm9uUmFkaW9Hcm91cENoYW5nZSgkZXZlbnQpXCJcbiAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICBbbmFtZV09XCJmaWVsZCgpPy5maWVsZE5hbWVcIlxuICAgID5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImNhcmQgcmFkaW8tY2FyZC1nZW5kZXIgcHktYXV0byBweC0xXCJcbiAgICAgICpuZ0Zvcj1cImxldCBkYXRhIG9mIGZpZWxkKCk/Lm9wdGlvbnNcIlxuICAgICAgW25nQ2xhc3NdPVwieydkaXNhYmxlLXJhZGlvLWJ0bic6IGZpZWxkKCk/LmlzRGlzYWJsZSB8fCByZWFjdGl2ZUZvcm1Db250cm9sb2JqZWN0Py5kaXNhYmxlZCwgJ3R3by1vcHRpb25zJzogZmllbGQoKT8ub3B0aW9ucz8ubGVuZ3RoID09PSAyfVwiXG4gICAgICAoY2xpY2spPVwidG9nZ2xlUmFkaW8oZGF0YS52YWx1ZSwgJGV2ZW50KVwiXG4gICAgICAgW25nU3R5bGVdPVwie1xuICAgICctLXJhZGlvLWJ1dHRvbi1ib3JkZXItY29sb3InOiBpbnB1dFZhbHVlID09PSBkYXRhLnZhbHVlID8gZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JvcmRlckNvbG9yIDogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJDb2xvcixcbiAgICAnLS1yYWRpby1idXR0b24tYmFja2dyb3VuZC1jb2xvcic6IGlucHV0VmFsdWUgPT09IGRhdGEudmFsdWUgPyBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQmFja2dyb3VuZCA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYmFja2dyb3VuZCxcbiAgICAnLS1yYWRpby1idXR0b24tYm9yZGVyLXdpZHRoJzogaW5wdXRWYWx1ZSA9PT0gZGF0YS52YWx1ZSA/IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCb3JkZXJXaWR0aCA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyV2lkdGgsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWJvcmRlci1yYWRpdXMnOiBpbnB1dFZhbHVlID09PSBkYXRhLnZhbHVlID8gZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlclJhZGl1cyxcbiAgfVwiXG4gICAgICA+XG4gICAgICA8bWF0LXJhZGlvLWJ1dHRvblxuICAgICAgICBzdHlsZT1cIm1pbi13aWR0aDogNzJweDsgdGV4dC1hbGlnbjogY2VudGVyO1wiXG4gICAgICAgIGNsYXNzPVwicmFkaW9CdXR0b25HZW5kZXJcIlxuICAgICAgICBbdmFsdWVdPVwiZGF0YS52YWx1ZVwiXG4gICAgICAgIFtpZF09XCJmaWVsZCgpPy5maWVsZE5hbWUgKyAnXycgKyBkYXRhLnZhbHVlXCJcbiAgICAgICAgW25hbWVdPVwiZmllbGQoKT8uZmllbGROYW1lICsgJ18nICsgZGF0YS52YWx1ZVwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuIHN0eWxlPVwid2hpdGUtc3BhY2U6IHByZS1saW5lO1wiIGNsYXNzPVwiZm9yUmFkaW9MYWJlbFwiIFtuZ1N0eWxlXT1cIntcbiAgICAnLS1yYWRpby1idXR0b24tZm9udC13ZWlnaHQnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRXZWlnaHQsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWZvbnQtc2l6ZSc6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9udFNpemUsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWZvbnQtY29sb3InOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmNvbG9yLFxuICB9XCI+e3sgZGF0YS5sYWJlbCB9fVxuICA8aW1nIGNsYXNzPVwicmFkaW8tYnRuLWljb25cIiAqbmdJZj1cImZpZWxkKCk/LmltYWdlVXJsXCIgW3NyY109XCJmaWVsZCgpPy5pbWFnZVVybFwiIGFsdD1cIlwiPlxuICA8L3NwYW4+XG4gICAgICA8L21hdC1yYWRpby1idXR0b24+XG4gICAgPC9kaXY+XG4gIDwvbWF0LXJhZGlvLWdyb3VwPlxuICB9QGVsc2Uge1xuICAgICA8bWF0LXJhZGlvLWdyb3VwIFtjbGFzc109XCIndy0xMDAgcmFkaW8tYnRuLWdyb3VwIHJhZGlvLWJ0bi1nZW5kZXIgJyArIGZpZWxkKCk/LmZpZWxkTmFtZVwiICpuZ0lmPVwiZmllbGQoKSAmJiBmaWVsZCgpPy5pc1Zpc2libGVcIlxuICAgIFtyZXF1aXJlZF09XCJmaWVsZCgpPy52YWxpZGF0b3JzPy5pc1JlcXVpcmVkXCJcbiAgICBbdmFsdWVdPVwiaW5wdXRWYWx1ZVwiXG4gICAgKGNoYW5nZSk9XCJvblJhZGlvR3JvdXBDaGFuZ2UoJGV2ZW50KVwiXG4gICAgW2lkXT1cImZpZWxkKCk/LmZpZWxkTmFtZVwiXG4gICAgW25hbWVdPVwiZmllbGQoKT8uZmllbGROYW1lXCJcbiAgICA+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJjYXJkIHJhZGlvLWNhcmQtZ2VuZGVyIHB5LWF1dG8gcHgtMVwiXG4gICAgICAqbmdGb3I9XCJsZXQgZGF0YSBvZiBmaWVsZCgpPy5vcHRpb25zXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsnZGlzYWJsZS1yYWRpby1idG4nOiBmaWVsZCgpPy5pc0Rpc2FibGUsICd0d28tb3B0aW9ucyc6IGZpZWxkKCk/Lm9wdGlvbnM/Lmxlbmd0aCA9PT0gMn1cIlxuICAgICAgKGNsaWNrKT1cInRvZ2dsZVJhZGlvKGRhdGEudmFsdWUsICRldmVudClcIlxuICAgICAgIFtuZ1N0eWxlXT1cIntcbiAgICAnLS1yYWRpby1idXR0b24tYm9yZGVyLWNvbG9yJzogaW5wdXRWYWx1ZSA9PT0gZGF0YS52YWx1ZSA/IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uZm9jdXNCb3JkZXJDb2xvciA6IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyQ29sb3IsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWJhY2tncm91bmQtY29sb3InOiBpbnB1dFZhbHVlID09PSBkYXRhLnZhbHVlID8gZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb2N1c0JhY2tncm91bmQgOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJhY2tncm91bmQsXG4gICAgJy0tcmFkaW8tYnV0dG9uLWJvcmRlci13aWR0aCc6IGlucHV0VmFsdWUgPT09IGRhdGEudmFsdWUgPyBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvY3VzQm9yZGVyV2lkdGggOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmJvcmRlcldpZHRoLFxuICAgICctLXJhZGlvLWJ1dHRvbi1ib3JkZXItcmFkaXVzJzogaW5wdXRWYWx1ZSA9PT0gZGF0YS52YWx1ZSA/IGZpZWxkKCk/LmNvbnRyb2xTdHlsZT8uYm9yZGVyUmFkaXVzIDogZmllbGQoKT8uY29udHJvbFN0eWxlPy5ib3JkZXJSYWRpdXMsXG4gIH1cIlxuICAgICAgPlxuICAgICAgPG1hdC1yYWRpby1idXR0b25cbiAgICAgICAgc3R5bGU9XCJtaW4td2lkdGg6IDcycHg7IHRleHQtYWxpZ246IGNlbnRlcjtcIlxuICAgICAgICBjbGFzcz1cInJhZGlvQnV0dG9uR2VuZGVyXCJcbiAgICAgICAgW3ZhbHVlXT1cImRhdGEudmFsdWVcIlxuICAgICAgICBbaWRdPVwiZmllbGQoKT8uZmllbGROYW1lICsgJ18nICsgZGF0YS52YWx1ZVwiXG4gICAgICAgIFtuYW1lXT1cImZpZWxkKCk/LmZpZWxkTmFtZSArICdfJyArIGRhdGEudmFsdWVcIlxuICAgICAgPlxuICAgICAgICA8c3BhbiBzdHlsZT1cIndoaXRlLXNwYWNlOiBwcmUtbGluZTtcIiBjbGFzcz1cImZvclJhZGlvTGFiZWxcIiBbbmdTdHlsZV09XCJ7XG4gICAgJy0tcmFkaW8tYnV0dG9uLWZvbnQtd2VpZ2h0JzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5mb250V2VpZ2h0LFxuICAgICctLXJhZGlvLWJ1dHRvbi1mb250LXNpemUnOiBmaWVsZCgpPy5jb250cm9sU3R5bGU/LmZvbnRTaXplLFxuICAgICctLXJhZGlvLWJ1dHRvbi1mb250LWNvbG9yJzogZmllbGQoKT8uY29udHJvbFN0eWxlPy5jb2xvcixcbiAgfVwiPnt7IGRhdGEubGFiZWwgfX1cbiAgPGltZyBjbGFzcz1cInJhZGlvLWJ0bi1pY29uXCIgKm5nSWY9XCJmaWVsZCgpPy5pbWFnZVVybFwiIFtzcmNdPVwiZmllbGQoKT8uaW1hZ2VVcmxcIiBhbHQ9XCJcIj5cbiAgPC9zcGFuPlxuICAgICAgPC9tYXQtcmFkaW8tYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L21hdC1yYWRpby1ncm91cD5cbiAgfVxuICA8ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiICpuZ0lmPVwiZmFsc2VcIj5cbiAgICB7e2ZpZWxkKCk/LnZhbGlkYXRvcnM/LnBhdHRlcm5NZXNzYWdlfX0uXG48L2Rpdj5cbiJdfQ==
|