fx-form-builder-wrapper 2.0.85 → 2.0.87
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.
|
@@ -120,13 +120,13 @@ export class DatePickerComponent extends FxBaseComponent {
|
|
|
120
120
|
return [FxValidatorService.required];
|
|
121
121
|
}
|
|
122
122
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.HttpClient }, { token: i2.FxBuilderWrapperService }], target: i0.ɵɵFactoryTarget.Component });
|
|
123
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DatePickerComponent, isStandalone: true, selector: "lib-date-picker", viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: CalendarModule }] });
|
|
123
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DatePickerComponent, isStandalone: true, selector: "lib-date-picker", viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\" class=\"input-label\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: CalendarModule }] });
|
|
124
124
|
}
|
|
125
125
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatePickerComponent, decorators: [{
|
|
126
126
|
type: Component,
|
|
127
|
-
args: [{ selector: 'lib-date-picker', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"] }]
|
|
127
|
+
args: [{ selector: 'lib-date-picker', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\" class=\"input-label\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"] }]
|
|
128
128
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.HttpClient }, { type: i2.FxBuilderWrapperService }], propDecorators: { fxComponent: [{
|
|
129
129
|
type: ViewChild,
|
|
130
130
|
args: ['fxComponent']
|
|
131
131
|
}] } });
|
|
132
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZngtYnVpbGRlci13cmFwcGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9meC1idWlsZGVyLXdyYXBwZXIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQXFCLFNBQVMsRUFBRSxNQUFNLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RHLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFhLGVBQWUsRUFBZ0Isa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqSSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7OztBQVExQyxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsZUFBZTtJQWlCakM7SUFBK0I7SUFBeUI7SUFoQnBFLEVBQUUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEMseUJBQXlCO0lBQ3pCLDBCQUEwQjtJQUM1QixPQUFPLENBQVU7SUFDakIsT0FBTyxDQUFVO0lBQ2QsS0FBSyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDTyxXQUFXLENBQWU7SUFDNUMsUUFBUSxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7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QUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDakUsSUFBSSxlQUFlLENBQUMsRUFBRSxHQUFHLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsQ0FBQztTQUVwSCxDQUFDO0lBQ0osQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7d0dBN0lNLG1CQUFtQjs0RkFBbkIsbUJBQW1CLDhNQ2ZoQyw2M0xBeURlLDQ3QkQ5Q0osWUFBWSxrSUFBRSxtQkFBbUIsNDhCQUFFLFdBQVcsK0JBQUUsV0FBVyw0RUFBRSxjQUFjOzs0RkFJekUsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUixDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGNBQWMsQ0FBQztxSkFXMUQsV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRnhCYXNlQ29tcG9uZW50LCBGeENvbXBvbmVudCwgRnhTZXR0aW5nLCBGeFN0cmluZ1NldHRpbmcsIEZ4VmFsaWRhdGlvbiwgRnhWYWxpZGF0b3JTZXJ2aWNlIH0gZnJvbSAnQGluc3RhbnRzeXMtbGFicy9meCc7XHJcbmltcG9ydCB7IENhbGVuZGFyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcic7XHJcbmltcG9ydCB7IEZ4QnVpbGRlcldyYXBwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZngtYnVpbGRlci13cmFwcGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItZGF0ZS1waWNrZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSwgRnhDb21wb25lbnQsIENhbGVuZGFyTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9kYXRlLXBpY2tlci5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZVBpY2tlckNvbXBvbmVudCBleHRlbmRzIEZ4QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICAgcHJpdmF0ZSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XHJcbiAgLy8gIG1pbkRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gIC8vICBtYXhEYXRlICA9IG5ldyBEYXRlKCk7XHJcbm1pbkRhdGUhOiBzdHJpbmc7XHJcbm1heERhdGUhOiBzdHJpbmc7XHJcbiAgIHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICAgQFZpZXdDaGlsZCgnZnhDb21wb25lbnQnKSBmeENvbXBvbmVudCE6IEZ4Q29tcG9uZW50O1xyXG4gICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Qm9vbGVhbj4oKTtcclxuICAgIGRhdGVQaWNrZXJNYXAgPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xyXG4gICBcclxuXHJcblxyXG4gICAgcHVibGljIGRhdGVQaWNrZXJGb3JtOiBGb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgIGRhdGU6IFtuZXcgRGF0ZSgpLFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgfSlcclxuXHJcbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQscHJpdmF0ZSBmeEJ1aWxkZXJXcmFwcGVyU2VydmljZTogRnhCdWlsZGVyV3JhcHBlclNlcnZpY2UpIHtcclxuICAgICAgc3VwZXIoY2RyKVxyXG4gICAgICB0aGlzLm9uSW5pdC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX3JlZ2lzdGVyKHRoaXMuZGF0ZVBpY2tlckZvcm0pO1xyXG4gICAgICB9KTtcclxuICAgICBcclxuICAgIH1cclxuXHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgdGhpcy5meEJ1aWxkZXJXcmFwcGVyU2VydmljZS52YXJpYWJsZXMkXHJcbiAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gIC5zdWJzY3JpYmUoKHZhcmlhYmxlczogYW55KSA9PiB7XHJcbiAgICBpZiAoIXZhcmlhYmxlcykgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuZGF0ZVBpY2tlck1hcCA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XHJcblxyXG4gICAgLy8gZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModmFyaWFibGVzKSBhcyBbc3RyaW5nLCBhbnldW10pIHtcclxuICAgIC8vICAgaWYgKGtleS5pbmNsdWRlcygnbGliLWRhdGUtcGlja2VyJykpIHtcclxuICAgIC8vICAgICB0aGlzLmRhdGVQaWNrZXJNYXAuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9XHJcblxyXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModmFyaWFibGVzKSBhcyBbc3RyaW5nLCBhbnldW10pIHtcclxuICBpZiAoXHJcbiAgICB2YWx1ZSAmJlxyXG4gICAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxyXG4gICAgJ2RhdGUnIGluIHZhbHVlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXJNYXAuc2V0KGtleSwgdmFsdWUpO1xyXG4gIH1cclxufVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgICAvLyBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XHJcbiAgICAvLyB0aGlzLm1pbkRhdGUgPSBuZXcgRGF0ZSh0b2RheSk7XHJcbiAgICAvLyB0aGlzLm1pbkRhdGUuc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgLSAzMCk7XHJcblxyXG4gICAgLy8gdGhpcy5tYXhEYXRlID0gbmV3IERhdGUodG9kYXkpO1xyXG4gICAgLy8gdGhpcy5tYXhEYXRlLnNldERhdGUodG9kYXkuZ2V0RGF0ZSgpICsgMzApO1xyXG5cclxuICAvLyB0aGlzLm1pbkRhdGUgPSB0aGlzLmZvcm1hdERhdGUobmV3IERhdGUodGhpcy50b2RheS5zZXREYXRlKG5ldyBEYXRlKCkuZ2V0RGF0ZSgpIC0gMzApKSk7XHJcbiAgLy8gdGhpcy5tYXhEYXRlID0gdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKHRoaXMudG9kYXkuc2V0RGF0ZShuZXcgRGF0ZSgpLmdldERhdGUoKSArIDMxKSkpO1xyXG5cclxuICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XHJcblxyXG5jb25zdCBtaW4gPSBuZXcgRGF0ZSgpO1xyXG5taW4uc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgLSAzMCk7XHJcblxyXG5jb25zdCBtYXggPSBuZXcgRGF0ZSgpO1xyXG5tYXguc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkpO1xyXG5cclxudGhpcy5taW5EYXRlID0gdGhpcy5mb3JtYXREYXRlKG1pbik7XHJcbnRoaXMubWF4RGF0ZSA9IHRoaXMuZm9ybWF0RGF0ZShtYXgpO1xyXG5cclxuICAgIC8vIHRoaXMuZ2V0UmFuZ2VWYWx1ZXMoKTtcclxuXHJcblxyXG4gIH1cclxuXHJcbiAgZ2V0IGRhdGVDb250cm9sKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpY2tlckZvcm0uZ2V0KCdkYXRlJyk7XHJcbiAgfVxyXG5cclxuICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3Qga2V5ID0gdGhpcy5meENvbXBvbmVudD8uZnhEYXRhPy5uYW1lO1xyXG4gICAgaWYoa2V5KXtcclxuICAgICAgICBjb25zdCBkYXRlUGF0Y2ggPSB0aGlzLmRhdGVQaWNrZXJNYXAuZ2V0KGtleSlcclxuICAgICAgICBjb25zdCBmaW5hbERhdGUgPSBkYXRlUGF0Y2ggfHwgdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKCkpXHJcbiAgICAgICAgaWYoZGF0ZVBhdGNoKXtcclxuICAgICAgICAgICAgdGhpcy5taW5EYXRlID0gZGF0ZVBhdGNoXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgIHRoaXMubWluRGF0ZSA9IHRoaXMuZm9ybWF0RGF0ZShuZXcgRGF0ZSh0aGlzLnRvZGF5LnNldERhdGUobmV3IERhdGUoKS5nZXREYXRlKCkgLSAzMCkpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcblxyXG4gICAgICB0aGlzLmRhdGVQaWNrZXJGb3JtLnBhdGNoVmFsdWUoe2RhdGU6ZmluYWxEYXRlfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmdldENvbnRleHRCYXNlSWQoKTtcclxuICB9XHJcblxyXG4gIGdldFJhbmdlVmFsdWVzKCkge1xyXG4gICAgdGhpcy5odHRwLmdldDxhbnk+KHRoaXMuc2V0dGluZygnYXBpVVJMJykpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XHJcbiAgICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICBcclxuICAgICAgY29uc3QgbWluT2Zmc2V0ID0gcmVzcG9uc2VbdGhpcy5zZXR0aW5nKCdtaW5EYXRlS2V5JyldIHx8IHRoaXMuc2V0dGluZygnbWluVmFsaWRhdGlvbicpO1xyXG4gICAgICBjb25zdCBtYXhPZmZzZXQgPSByZXNwb25zZVt0aGlzLnNldHRpbmcoJ21heERhdGVLZXknKV0gfHwgdGhpcy5zZXR0aW5nKCdtYXhWYWxpZGF0aW9uJyk7XHJcbiAgXHJcbiAgICAgIC8vIHRoaXMubWluRGF0ZSA9IG5ldyBEYXRlKHRvZGF5KTtcclxuICAgICAgLy8gdGhpcy5taW5EYXRlLnNldERhdGUodG9kYXkuZ2V0RGF0ZSgpICsgbWluT2Zmc2V0KTtcclxuICBcclxuICAgICAgLy8gdGhpcy5tYXhEYXRlID0gbmV3IERhdGUodG9kYXkpO1xyXG4gICAgICAvLyB0aGlzLm1heERhdGUuc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgKyBtYXhPZmZzZXQpO1xyXG5cclxuICAgIHRoaXMubWluRGF0ZSA9IHRoaXMuZm9ybWF0RGF0ZShuZXcgRGF0ZSh0aGlzLnRvZGF5LnNldERhdGUobmV3IERhdGUoKS5nZXREYXRlKCkgKyBtaW5PZmZzZXQpKSk7XHJcbiAgdGhpcy5tYXhEYXRlID0gdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKHRoaXMudG9kYXkuc2V0RGF0ZShuZXcgRGF0ZSgpLmdldERhdGUoKSArIG1heE9mZnNldCkpKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXREYXRlKGRhdGU6IERhdGUpOiBzdHJpbmcge1xyXG4gIHJldHVybiBkYXRlLnRvSVNPU3RyaW5nKCkuc3BsaXQoJ1QnKVswXTsgXHJcbn1cclxuICBcclxuXHJcblxyXG4gICAgcHJvdGVjdGVkIHNldHRpbmdzKCk6IEZ4U2V0dGluZ1tdIHtcclxuICAgICAgICByZXR1cm4gW1xyXG4gICAgICAgICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ21pblZhbGlkYXRpb24nLCAkdGl0bGU6ICdNaW4gVmFsaWRhdGlvbicsIHZhbHVlOiAnJyB9KSxcclxuICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdtYXhWYWxpZGF0aW9uJywgJHRpdGxlOiAnTWF4IFZhbGlkYXRpb24nLCB2YWx1ZTogJycgfSksXHJcbiAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnYXBpVVJMJywgJHRpdGxlOiAnQVBJIFVybCcsIHZhbHVlOiAnJyB9KSxcclxuICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdtaW5EYXRlS2V5JywgJHRpdGxlOiAnTWluIFJhbmdlIEFQSSBLZXknLCB2YWx1ZTogJycgfSksXHJcbiAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnbWF4RGF0ZUtleScsICR0aXRsZTogJ01heCBSYW5nZSBBUEkgS2V5JywgdmFsdWU6ICcnIH0pLFxyXG4gICAgICAgICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ3BsYWNlSG9sZGVyJywgJHRpdGxlOiAnUGxhY2Vob2xkZXInLCB2YWx1ZTogJ1NlbGVjdCBEYXRlJyB9KSxcclxuICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdsYWJlbCcsICR0aXRsZTogJ0xhYmVsJywgdmFsdWU6ICcnIH0pLFxyXG4gICAgICAgICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ2RhdGVQaWNrZXJFcnJvck1lc3NhZ2UnLCAkdGl0bGU6ICdFcnJvciBNZXNzYWdlJywgdmFsdWU6ICdQbGVhc2UgZmlsbCBvdXQgdGhlIGZpZWxkJyB9KSxcclxuICAgICAgICAgXHJcbiAgICAgICAgXTtcclxuICAgICAgfVxyXG4gICAgXHJcbiAgICAgIHByb3RlY3RlZCB2YWxpZGF0aW9ucygpOiBGeFZhbGlkYXRpb25bXSB7XHJcbiAgICAgICAgcmV0dXJuIFtGeFZhbGlkYXRvclNlcnZpY2UucmVxdWlyZWRdO1xyXG4gICAgICB9XHJcbn1cclxuIiwiPGZ4LWNvbXBvbmVudCBbZnhEYXRhXT1cImZ4RGF0YVwiICNmeENvbXBvbmVudD5cclxuICA8ZGl2IGNsYXNzPVwiY3VzdG9tLWRhdGUtcGlja2VyIHJlbGF0aXZlXCI+XHJcbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImRhdGVQaWNrZXJGb3JtXCI+XHJcbiAgICAgIDwhLS0gPHAtY2FsZW5kYXIgIGZvcm1Db250cm9sTmFtZT1cImRhdGVcIiBbc2hvd0ljb25dPVwidHJ1ZVwiIFttaW5EYXRlXT1cIm1pbkRhdGVcIiBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcclxuICAgICAgICBbaWNvbkRpc3BsYXldPVwiJ2lucHV0J1wiIFtzaG93T25Gb2N1c109XCJmYWxzZVwiIGRhdGVGb3JtYXQ9XCJkZC9tbS95eVwiIFtzaG93QnV0dG9uQmFyXT1cInRydWVcIlxyXG4gICAgICAgIHBsYWNlaG9sZGVyPVwie3sgc2V0dGluZygncGxhY2VIb2xkZXInKSB9fVwiPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJpbnB1dGljb25cIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWJzb2x1dGUgcmlnaHQtMCBwdC0yIHByLTJcIj5cclxuICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICBkPVwiTTE5LjU2MjQgMi4yNTk5MUgxOC4xOTU2VjMuMTM1ODJDMTguMTk1NiAzLjYxOTQ4IDE3Ljc5ODIgNC4wMTE3MyAxNy4zMDc4IDQuMDExNzNDMTYuODE3NyA0LjAxMTczIDE2LjQyMDIgMy42MTk0OCAxNi40MjAyIDMuMTM1ODJWMi4yNTk5MUg3LjU4MDAxVjMuMTM1ODJDNy41ODAwMSAzLjYxOTQ4IDcuMTgyNTMgNC4wMTE3MyA2LjY5MjQ0IDQuMDExNzNDNi4yMDIwOSA0LjAxMTczIDUuODA0ODYgMy42MTk0OCA1LjgwNDg2IDMuMTM1ODJWMi4yNTk5MUg0LjQzNzg3QzMuMjYxMDcgMi4yNjA0IDIuMTMyNTIgMi43MjE4MiAxLjMwMDQyIDMuNTQyOTlDMC40NjgzMjMgNC4zNjQ0MSAwLjAwMDUwNzE4NSA1LjQ3ODEzIDAgNi42Mzk0NlYxOS42MjA0QzAuMDAwNDk1MjY2IDIwLjc4MTggMC40NjgzMDQgMjEuODk1NSAxLjMwMDQyIDIyLjcxNjdDMi4xMzI1MiAyMy41MzgxIDMuMjYxMDcgMjMuOTk5NSA0LjQzNzg3IDI0SDE5LjU2MjFDMjAuNzM4OSAyMy45OTk1IDIxLjg2NzUgMjMuNTM4MSAyMi42OTk2IDIyLjcxNjdDMjMuNTMxNyAyMS44OTU1IDIzLjk5OTUgMjAuNzgxOCAyNCAxOS42MjA0VjYuNjM5NDZDMjMuOTk5NSA1LjQ3ODEzIDIzLjUzMTcgNC4zNjQ0MSAyMi42OTk2IDMuNTQyOTlDMjEuODY3NSAyLjcyMTgzIDIwLjczODkgMi4yNjA0MSAxOS41NjIxIDIuMjU5OTFIMTkuNTYyNFpNMTkuNTYyNCAyMi4yNDgySDQuNDM4MThDMy43MzI2MiAyMi4yNDYgMy4wNTY1NSAyMS45Njg2IDIuNTU3NzkgMjEuNDc2MUMyLjA1ODc4IDIwLjk4MzkgMS43Nzc2OCAyMC4zMTY3IDEuNzc1NDYgMTkuNjIwNFY5LjA1Njk4SDIyLjIyNTJWMTkuNjIwNEMyMi4yMjI5IDIwLjMxNjcgMjEuOTQxOSAyMC45ODM5IDIxLjQ0MjggMjEuNDc2MUMyMC45NDQxIDIxLjk2ODYgMjAuMjY4IDIyLjI0NiAxOS41NjI0IDIyLjI0ODJaTTcuNTgwMDEgMi4yNTk5MUg1LjgwNDg2TDUuODA1MDUgMC44NzU5MUM1LjgwNTA1IDAuMzkyMjUxIDYuMjAyMjcgMCA2LjY5MjYyIDBDNy4xODI3MiAwIDcuNTgwMTkgMC4zOTIyNTEgNy41ODAxOSAwLjg3NTkxTDcuNTgwMDEgMi4yNTk5MVpNMTguMTk1NiAyLjI1OTkxSDE2LjQyMDJMMTYuNDIwMiAwLjg3NTkxQzE2LjQyMDIgMC4zOTIyNTEgMTYuODE3NyAwIDE3LjMwNzggMEMxNy43OTgxIDAgMTguMTk1MyAwLjM5MjI1MSAxOC4xOTUzIDAuODc1OTFMMTguMTk1NiAyLjI1OTkxWlwiXHJcbiAgICAgICAgICAgICAgICBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjUuMzMyMDNcIiB5PVwiMTEuNTU0N1wiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCI1LjMzMjAzXCIgeT1cIjE2LjU4OThcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiMTAuMzcxMVwiIHk9XCIxMS41NTQ3XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjEwLjM3MTFcIiB5PVwiMTYuNTg5OFwiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCIxNS40MDYyXCIgeT1cIjExLjU1NDdcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiMTUuNDA2MlwiIHk9XCIxNi41ODk4XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvcC1jYWxlbmRhcj4gLS0+XHJcbiAgICAgICAgICA8IS0tIDxwLWNhbGVuZGFyICBmb3JtQ29udHJvbE5hbWU9XCJkYXRlXCJcclxuICAgICAgICAgIGRhdGVGb3JtYXQ9XCJkZC9tbS95eVwiXHJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBzZXR0aW5nKCdwbGFjZUhvbGRlcicpIH19XCI+IC0tPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJkYXRlXCI+e3sgc2V0dGluZygnbGFiZWwnKSB9fTxzcGFuIGNsYXNzPVwiZmllbGQtcmVxdWlyZWRcIj4qPC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlXCI+XHJcbiAgICAgICAgPGlucHV0IHR5cGU9XCJkYXRlXCIgaWQ9XCJkYXRlXCIgbmFtZT1cImRhdGVcIiBmb3JtQ29udHJvbE5hbWU9XCJkYXRlXCIgIFttaW5dPVwibWluRGF0ZVwiIFttYXhdPVwibWF4RGF0ZVwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwhLS0gPGxhYmVsIGZvcj1cImRhdGVcIiBjbGFzcz1cInBsYWNlaG9sZGVyXCI+U2VsZWN0IERhdGU8L2xhYmVsPiAtLT5cclxuICAgICAgICA8IS0tIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJpbnB1dGljb25cIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWJzb2x1dGUgcmlnaHQtMCBwdC0yIHByLTJcIj5cclxuICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICBkPVwiTTE5LjU2MjQgMi4yNTk5MUgxOC4xOTU2VjMuMTM1ODJDMTguMTk1NiAzLjYxOTQ4IDE3Ljc5ODIgNC4wMTE3MyAxNy4zMDc4IDQuMDExNzNDMTYuODE3NyA0LjAxMTczIDE2LjQyMDIgMy42MTk0OCAxNi40MjAyIDMuMTM1ODJWMi4yNTk5MUg3LjU4MDAxVjMuMTM1ODJDNy41ODAwMSAzLjYxOTQ4IDcuMTgyNTMgNC4wMTE3MyA2LjY5MjQ0IDQuMDExNzNDNi4yMDIwOSA0LjAxMTczIDUuODA0ODYgMy42MTk0OCA1LjgwNDg2IDMuMTM1ODJWMi4yNTk5MUg0LjQzNzg3QzMuMjYxMDcgMi4yNjA0IDIuMTMyNTIgMi43MjE4MiAxLjMwMDQyIDMuNTQyOTlDMC40NjgzMjMgNC4zNjQ0MSAwLjAwMDUwNzE4NSA1LjQ3ODEzIDAgNi42Mzk0NlYxOS42MjA0QzAuMDAwNDk1MjY2IDIwLjc4MTggMC40NjgzMDQgMjEuODk1NSAxLjMwMDQyIDIyLjcxNjdDMi4xMzI1MiAyMy41MzgxIDMuMjYxMDcgMjMuOTk5NSA0LjQzNzg3IDI0SDE5LjU2MjFDMjAuNzM4OSAyMy45OTk1IDIxLjg2NzUgMjMuNTM4MSAyMi42OTk2IDIyLjcxNjdDMjMuNTMxNyAyMS44OTU1IDIzLjk5OTUgMjAuNzgxOCAyNCAxOS42MjA0VjYuNjM5NDZDMjMuOTk5NSA1LjQ3ODEzIDIzLjUzMTcgNC4zNjQ0MSAyMi42OTk2IDMuNTQyOTlDMjEuODY3NSAyLjcyMTgzIDIwLjczODkgMi4yNjA0MSAxOS41NjIxIDIuMjU5OTFIMTkuNTYyNFpNMTkuNTYyNCAyMi4yNDgySDQuNDM4MThDMy43MzI2MiAyMi4yNDYgMy4wNTY1NSAyMS45Njg2IDIuNTU3NzkgMjEuNDc2MUMyLjA1ODc4IDIwLjk4MzkgMS43Nzc2OCAyMC4zMTY3IDEuNzc1NDYgMTkuNjIwNFY5LjA1Njk4SDIyLjIyNTJWMTkuNjIwNEMyMi4yMjI5IDIwLjMxNjcgMjEuOTQxOSAyMC45ODM5IDIxLjQ0MjggMjEuNDc2MUMyMC45NDQxIDIxLjk2ODYgMjAuMjY4IDIyLjI0NiAxOS41NjI0IDIyLjI0ODJaTTcuNTgwMDEgMi4yNTk5MUg1LjgwNDg2TDUuODA1MDUgMC44NzU5MUM1LjgwNTA1IDAuMzkyMjUxIDYuMjAyMjcgMCA2LjY5MjYyIDBDNy4xODI3MiAwIDcuNTgwMTkgMC4zOTIyNTEgNy41ODAxOSAwLjg3NTkxTDcuNTgwMDEgMi4yNTk5MVpNMTguMTk1NiAyLjI1OTkxSDE2LjQyMDJMMTYuNDIwMiAwLjg3NTkxQzE2LjQyMDIgMC4zOTIyNTEgMTYuODE3NyAwIDE3LjMwNzggMEMxNy43OTgxIDAgMTguMTk1MyAwLjM5MjI1MSAxOC4xOTUzIDAuODc1OTFMMTguMTk1NiAyLjI1OTkxWlwiXHJcbiAgICAgICAgICAgICAgICBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjUuMzMyMDNcIiB5PVwiMTEuNTU0N1wiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCI1LjMzMjAzXCIgeT1cIjE2LjU4OThcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiMTAuMzcxMVwiIHk9XCIxMS41NTQ3XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjEwLjM3MTFcIiB5PVwiMTYuNTg5OFwiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCIxNS40MDYyXCIgeT1cIjExLjU1NDdcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiMTUuNDA2MlwiIHk9XCIxNi41ODk4XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+IC0tPlxyXG4gICAgICA8IS0tIDwvcC1jYWxlbmRhcj4gLS0+XHJcbiAgICA8ZGl2PlxyXG4gICAgICA8c21hbGwgKm5nSWY9XCJkYXRlUGlja2VyRm9ybS5nZXQoJ2RhdGUnKT8udG91Y2hlZCAmJiBkYXRlUGlja2VyRm9ybS5nZXQoJ2RhdGUnKT8uZXJyb3JzPy5bJ3JlcXVpcmVkJ11cIlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1yZWQtNTAwXCI+XHJcbiAgICAgIHt7IHNldHRpbmcoJ2RhdGVQaWNrZXJFcnJvck1lc3NhZ2UnKSB9fVxyXG4gICAgICA8L3NtYWxsPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8L2Zvcm0+XHJcbiAgPC9kaXY+XHJcblxyXG48L2Z4LWNvbXBvbmVudD4iXX0=
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZngtYnVpbGRlci13cmFwcGVyL3NyYy9saWIvY29tcG9uZW50cy9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9meC1idWlsZGVyLXdyYXBwZXIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQXFCLFNBQVMsRUFBRSxNQUFNLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RHLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFhLGVBQWUsRUFBZ0Isa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNqSSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFbEQsT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7OztBQVExQyxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsZUFBZTtJQWlCakM7SUFBK0I7SUFBeUI7SUFoQnBFLEVBQUUsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEMseUJBQXlCO0lBQ3pCLDBCQUEwQjtJQUM1QixPQUFPLENBQVU7SUFDakIsT0FBTyxDQUFVO0lBQ2QsS0FBSyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUM7SUFDTyxXQUFXLENBQWU7SUFDNUMsUUFBUSxHQUFHLElBQUksT0FBTyxFQUFXLENBQUM7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QUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUM7WUFDakUsSUFBSSxlQUFlLENBQUMsRUFBRSxHQUFHLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsQ0FBQztTQUVwSCxDQUFDO0lBQ0osQ0FBQztJQUVTLFdBQVc7UUFDbkIsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7d0dBN0lNLG1CQUFtQjs0RkFBbkIsbUJBQW1CLDhNQ2ZoQyxtNUxBeURlLDQ3QkQ5Q0osWUFBWSxrSUFBRSxtQkFBbUIsNDhCQUFFLFdBQVcsK0JBQUUsV0FBVyw0RUFBRSxjQUFjOzs0RkFJekUsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUixDQUFDLFlBQVksRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGNBQWMsQ0FBQztxSkFXMUQsV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSwgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRnhCYXNlQ29tcG9uZW50LCBGeENvbXBvbmVudCwgRnhTZXR0aW5nLCBGeFN0cmluZ1NldHRpbmcsIEZ4VmFsaWRhdGlvbiwgRnhWYWxpZGF0b3JTZXJ2aWNlIH0gZnJvbSAnQGluc3RhbnRzeXMtbGFicy9meCc7XHJcbmltcG9ydCB7IENhbGVuZGFyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcic7XHJcbmltcG9ydCB7IEZ4QnVpbGRlcldyYXBwZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZngtYnVpbGRlci13cmFwcGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItZGF0ZS1waWNrZXInLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSwgRnhDb21wb25lbnQsIENhbGVuZGFyTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9kYXRlLXBpY2tlci5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZVBpY2tlckNvbXBvbmVudCBleHRlbmRzIEZ4QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICAgcHJpdmF0ZSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XHJcbiAgLy8gIG1pbkRhdGUgPSBuZXcgRGF0ZSgpO1xyXG4gIC8vICBtYXhEYXRlICA9IG5ldyBEYXRlKCk7XHJcbm1pbkRhdGUhOiBzdHJpbmc7XHJcbm1heERhdGUhOiBzdHJpbmc7XHJcbiAgIHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICAgQFZpZXdDaGlsZCgnZnhDb21wb25lbnQnKSBmeENvbXBvbmVudCE6IEZ4Q29tcG9uZW50O1xyXG4gICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8Qm9vbGVhbj4oKTtcclxuICAgIGRhdGVQaWNrZXJNYXAgPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xyXG4gICBcclxuXHJcblxyXG4gICAgcHVibGljIGRhdGVQaWNrZXJGb3JtOiBGb3JtR3JvdXAgPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgIGRhdGU6IFtuZXcgRGF0ZSgpLFtWYWxpZGF0b3JzLnJlcXVpcmVkXV0sXHJcbiAgICAgfSlcclxuXHJcbiAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQscHJpdmF0ZSBmeEJ1aWxkZXJXcmFwcGVyU2VydmljZTogRnhCdWlsZGVyV3JhcHBlclNlcnZpY2UpIHtcclxuICAgICAgc3VwZXIoY2RyKVxyXG4gICAgICB0aGlzLm9uSW5pdC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX3JlZ2lzdGVyKHRoaXMuZGF0ZVBpY2tlckZvcm0pO1xyXG4gICAgICB9KTtcclxuICAgICBcclxuICAgIH1cclxuXHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgdGhpcy5meEJ1aWxkZXJXcmFwcGVyU2VydmljZS52YXJpYWJsZXMkXHJcbiAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gIC5zdWJzY3JpYmUoKHZhcmlhYmxlczogYW55KSA9PiB7XHJcbiAgICBpZiAoIXZhcmlhYmxlcykgcmV0dXJuO1xyXG5cclxuICAgIHRoaXMuZGF0ZVBpY2tlck1hcCA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XHJcblxyXG4gICAgLy8gZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModmFyaWFibGVzKSBhcyBbc3RyaW5nLCBhbnldW10pIHtcclxuICAgIC8vICAgaWYgKGtleS5pbmNsdWRlcygnbGliLWRhdGUtcGlja2VyJykpIHtcclxuICAgIC8vICAgICB0aGlzLmRhdGVQaWNrZXJNYXAuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9XHJcblxyXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModmFyaWFibGVzKSBhcyBbc3RyaW5nLCBhbnldW10pIHtcclxuICBpZiAoXHJcbiAgICB2YWx1ZSAmJlxyXG4gICAgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJlxyXG4gICAgJ2RhdGUnIGluIHZhbHVlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmRhdGVQaWNrZXJNYXAuc2V0KGtleSwgdmFsdWUpO1xyXG4gIH1cclxufVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgICAvLyBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XHJcbiAgICAvLyB0aGlzLm1pbkRhdGUgPSBuZXcgRGF0ZSh0b2RheSk7XHJcbiAgICAvLyB0aGlzLm1pbkRhdGUuc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgLSAzMCk7XHJcblxyXG4gICAgLy8gdGhpcy5tYXhEYXRlID0gbmV3IERhdGUodG9kYXkpO1xyXG4gICAgLy8gdGhpcy5tYXhEYXRlLnNldERhdGUodG9kYXkuZ2V0RGF0ZSgpICsgMzApO1xyXG5cclxuICAvLyB0aGlzLm1pbkRhdGUgPSB0aGlzLmZvcm1hdERhdGUobmV3IERhdGUodGhpcy50b2RheS5zZXREYXRlKG5ldyBEYXRlKCkuZ2V0RGF0ZSgpIC0gMzApKSk7XHJcbiAgLy8gdGhpcy5tYXhEYXRlID0gdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKHRoaXMudG9kYXkuc2V0RGF0ZShuZXcgRGF0ZSgpLmdldERhdGUoKSArIDMxKSkpO1xyXG5cclxuICBjb25zdCB0b2RheSA9IG5ldyBEYXRlKCk7XHJcblxyXG5jb25zdCBtaW4gPSBuZXcgRGF0ZSgpO1xyXG5taW4uc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgLSAzMCk7XHJcblxyXG5jb25zdCBtYXggPSBuZXcgRGF0ZSgpO1xyXG5tYXguc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkpO1xyXG5cclxudGhpcy5taW5EYXRlID0gdGhpcy5mb3JtYXREYXRlKG1pbik7XHJcbnRoaXMubWF4RGF0ZSA9IHRoaXMuZm9ybWF0RGF0ZShtYXgpO1xyXG5cclxuICAgIC8vIHRoaXMuZ2V0UmFuZ2VWYWx1ZXMoKTtcclxuXHJcblxyXG4gIH1cclxuXHJcbiAgZ2V0IGRhdGVDb250cm9sKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpY2tlckZvcm0uZ2V0KCdkYXRlJyk7XHJcbiAgfVxyXG5cclxuICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3Qga2V5ID0gdGhpcy5meENvbXBvbmVudD8uZnhEYXRhPy5uYW1lO1xyXG4gICAgaWYoa2V5KXtcclxuICAgICAgICBjb25zdCBkYXRlUGF0Y2ggPSB0aGlzLmRhdGVQaWNrZXJNYXAuZ2V0KGtleSlcclxuICAgICAgICBjb25zdCBmaW5hbERhdGUgPSBkYXRlUGF0Y2ggfHwgdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKCkpXHJcbiAgICAgICAgaWYoZGF0ZVBhdGNoKXtcclxuICAgICAgICAgICAgdGhpcy5taW5EYXRlID0gZGF0ZVBhdGNoXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2V7XHJcbiAgICAgICAgIHRoaXMubWluRGF0ZSA9IHRoaXMuZm9ybWF0RGF0ZShuZXcgRGF0ZSh0aGlzLnRvZGF5LnNldERhdGUobmV3IERhdGUoKS5nZXREYXRlKCkgLSAzMCkpKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcblxyXG4gICAgICB0aGlzLmRhdGVQaWNrZXJGb3JtLnBhdGNoVmFsdWUoe2RhdGU6ZmluYWxEYXRlfSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmdldENvbnRleHRCYXNlSWQoKTtcclxuICB9XHJcblxyXG4gIGdldFJhbmdlVmFsdWVzKCkge1xyXG4gICAgdGhpcy5odHRwLmdldDxhbnk+KHRoaXMuc2V0dGluZygnYXBpVVJMJykpLnN1YnNjcmliZShyZXNwb25zZSA9PiB7XHJcbiAgICAgIGNvbnN0IHRvZGF5ID0gbmV3IERhdGUoKTtcclxuICBcclxuICAgICAgY29uc3QgbWluT2Zmc2V0ID0gcmVzcG9uc2VbdGhpcy5zZXR0aW5nKCdtaW5EYXRlS2V5JyldIHx8IHRoaXMuc2V0dGluZygnbWluVmFsaWRhdGlvbicpO1xyXG4gICAgICBjb25zdCBtYXhPZmZzZXQgPSByZXNwb25zZVt0aGlzLnNldHRpbmcoJ21heERhdGVLZXknKV0gfHwgdGhpcy5zZXR0aW5nKCdtYXhWYWxpZGF0aW9uJyk7XHJcbiAgXHJcbiAgICAgIC8vIHRoaXMubWluRGF0ZSA9IG5ldyBEYXRlKHRvZGF5KTtcclxuICAgICAgLy8gdGhpcy5taW5EYXRlLnNldERhdGUodG9kYXkuZ2V0RGF0ZSgpICsgbWluT2Zmc2V0KTtcclxuICBcclxuICAgICAgLy8gdGhpcy5tYXhEYXRlID0gbmV3IERhdGUodG9kYXkpO1xyXG4gICAgICAvLyB0aGlzLm1heERhdGUuc2V0RGF0ZSh0b2RheS5nZXREYXRlKCkgKyBtYXhPZmZzZXQpO1xyXG5cclxuICAgIHRoaXMubWluRGF0ZSA9IHRoaXMuZm9ybWF0RGF0ZShuZXcgRGF0ZSh0aGlzLnRvZGF5LnNldERhdGUobmV3IERhdGUoKS5nZXREYXRlKCkgKyBtaW5PZmZzZXQpKSk7XHJcbiAgdGhpcy5tYXhEYXRlID0gdGhpcy5mb3JtYXREYXRlKG5ldyBEYXRlKHRoaXMudG9kYXkuc2V0RGF0ZShuZXcgRGF0ZSgpLmdldERhdGUoKSArIG1heE9mZnNldCkpKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmb3JtYXREYXRlKGRhdGU6IERhdGUpOiBzdHJpbmcge1xyXG4gIHJldHVybiBkYXRlLnRvSVNPU3RyaW5nKCkuc3BsaXQoJ1QnKVswXTsgXHJcbn1cclxuICBcclxuXHJcblxyXG4gICAgcHJvdGVjdGVkIHNldHRpbmdzKCk6IEZ4U2V0dGluZ1tdIHtcclxuICAgICAgICByZXR1cm4gW1xyXG4gICAgICAgICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ21pblZhbGlkYXRpb24nLCAkdGl0bGU6ICdNaW4gVmFsaWRhdGlvbicsIHZhbHVlOiAnJyB9KSxcclxuICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdtYXhWYWxpZGF0aW9uJywgJHRpdGxlOiAnTWF4IFZhbGlkYXRpb24nLCB2YWx1ZTogJycgfSksXHJcbiAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnYXBpVVJMJywgJHRpdGxlOiAnQVBJIFVybCcsIHZhbHVlOiAnJyB9KSxcclxuICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdtaW5EYXRlS2V5JywgJHRpdGxlOiAnTWluIFJhbmdlIEFQSSBLZXknLCB2YWx1ZTogJycgfSksXHJcbiAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnbWF4RGF0ZUtleScsICR0aXRsZTogJ01heCBSYW5nZSBBUEkgS2V5JywgdmFsdWU6ICcnIH0pLFxyXG4gICAgICAgICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ3BsYWNlSG9sZGVyJywgJHRpdGxlOiAnUGxhY2Vob2xkZXInLCB2YWx1ZTogJ1NlbGVjdCBEYXRlJyB9KSxcclxuICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdsYWJlbCcsICR0aXRsZTogJ0xhYmVsJywgdmFsdWU6ICcnIH0pLFxyXG4gICAgICAgICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ2RhdGVQaWNrZXJFcnJvck1lc3NhZ2UnLCAkdGl0bGU6ICdFcnJvciBNZXNzYWdlJywgdmFsdWU6ICdQbGVhc2UgZmlsbCBvdXQgdGhlIGZpZWxkJyB9KSxcclxuICAgICAgICAgXHJcbiAgICAgICAgXTtcclxuICAgICAgfVxyXG4gICAgXHJcbiAgICAgIHByb3RlY3RlZCB2YWxpZGF0aW9ucygpOiBGeFZhbGlkYXRpb25bXSB7XHJcbiAgICAgICAgcmV0dXJuIFtGeFZhbGlkYXRvclNlcnZpY2UucmVxdWlyZWRdO1xyXG4gICAgICB9XHJcbn1cclxuIiwiPGZ4LWNvbXBvbmVudCBbZnhEYXRhXT1cImZ4RGF0YVwiICNmeENvbXBvbmVudD5cclxuICA8ZGl2IGNsYXNzPVwiY3VzdG9tLWRhdGUtcGlja2VyIHJlbGF0aXZlXCI+XHJcbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cImRhdGVQaWNrZXJGb3JtXCI+XHJcbiAgICAgIDwhLS0gPHAtY2FsZW5kYXIgIGZvcm1Db250cm9sTmFtZT1cImRhdGVcIiBbc2hvd0ljb25dPVwidHJ1ZVwiIFttaW5EYXRlXT1cIm1pbkRhdGVcIiBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcclxuICAgICAgICBbaWNvbkRpc3BsYXldPVwiJ2lucHV0J1wiIFtzaG93T25Gb2N1c109XCJmYWxzZVwiIGRhdGVGb3JtYXQ9XCJkZC9tbS95eVwiIFtzaG93QnV0dG9uQmFyXT1cInRydWVcIlxyXG4gICAgICAgIHBsYWNlaG9sZGVyPVwie3sgc2V0dGluZygncGxhY2VIb2xkZXInKSB9fVwiPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJpbnB1dGljb25cIj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYWJzb2x1dGUgcmlnaHQtMCBwdC0yIHByLTJcIj5cclxuICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcclxuICAgICAgICAgICAgICAgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICBkPVwiTTE5LjU2MjQgMi4yNTk5MUgxOC4xOTU2VjMuMTM1ODJDMTguMTk1NiAzLjYxOTQ4IDE3Ljc5ODIgNC4wMTE3MyAxNy4zMDc4IDQuMDExNzNDMTYuODE3NyA0LjAxMTczIDE2LjQyMDIgMy42MTk0OCAxNi40MjAyIDMuMTM1ODJWMi4yNTk5MUg3LjU4MDAxVjMuMTM1ODJDNy41ODAwMSAzLjYxOTQ4IDcuMTgyNTMgNC4wMTE3MyA2LjY5MjQ0IDQuMDExNzNDNi4yMDIwOSA0LjAxMTczIDUuODA0ODYgMy42MTk0OCA1LjgwNDg2IDMuMTM1ODJWMi4yNTk5MUg0LjQzNzg3QzMuMjYxMDcgMi4yNjA0IDIuMTMyNTIgMi43MjE4MiAxLjMwMDQyIDMuNTQyOTlDMC40NjgzMjMgNC4zNjQ0MSAwLjAwMDUwNzE4NSA1LjQ3ODEzIDAgNi42Mzk0NlYxOS42MjA0QzAuMDAwNDk1MjY2IDIwLjc4MTggMC40NjgzMDQgMjEuODk1NSAxLjMwMDQyIDIyLjcxNjdDMi4xMzI1MiAyMy41MzgxIDMuMjYxMDcgMjMuOTk5NSA0LjQzNzg3IDI0SDE5LjU2MjFDMjAuNzM4OSAyMy45OTk1IDIxLjg2NzUgMjMuNTM4MSAyMi42OTk2IDIyLjcxNjdDMjMuNTMxNyAyMS44OTU1IDIzLjk5OTUgMjAuNzgxOCAyNCAxOS42MjA0VjYuNjM5NDZDMjMuOTk5NSA1LjQ3ODEzIDIzLjUzMTcgNC4zNjQ0MSAyMi42OTk2IDMuNTQyOTlDMjEuODY3NSAyLjcyMTgzIDIwLjczODkgMi4yNjA0MSAxOS41NjIxIDIuMjU5OTFIMTkuNTYyNFpNMTkuNTYyNCAyMi4yNDgySDQuNDM4MThDMy43MzI2MiAyMi4yNDYgMy4wNTY1NSAyMS45Njg2IDIuNTU3NzkgMjEuNDc2MUMyLjA1ODc4IDIwLjk4MzkgMS43Nzc2OCAyMC4zMTY3IDEuNzc1NDYgMTkuNjIwNFY5LjA1Njk4SDIyLjIyNTJWMTkuNjIwNEMyMi4yMjI5IDIwLjMxNjcgMjEuOTQxOSAyMC45ODM5IDIxLjQ0MjggMjEuNDc2MUMyMC45NDQxIDIxLjk2ODYgMjAuMjY4IDIyLjI0NiAxOS41NjI0IDIyLjI0ODJaTTcuNTgwMDEgMi4yNTk5MUg1LjgwNDg2TDUuODA1MDUgMC44NzU5MUM1LjgwNTA1IDAuMzkyMjUxIDYuMjAyMjcgMCA2LjY5MjYyIDBDNy4xODI3MiAwIDcuNTgwMTkgMC4zOTIyNTEgNy41ODAxOSAwLjg3NTkxTDcuNTgwMDEgMi4yNTk5MVpNMTguMTk1NiAyLjI1OTkxSDE2LjQyMDJMMTYuNDIwMiAwLjg3NTkxQzE2LjQyMDIgMC4zOTIyNTEgMTYuODE3NyAwIDE3LjMwNzggMEMxNy43OTgxIDAgMTguMTk1MyAwLjM5MjI1MSAxOC4xOTUzIDAuODc1OTFMMTguMTk1NiAyLjI1OTkxWlwiXHJcbiAgICAgICAgICAgICAgICBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjUuMzMyMDNcIiB5PVwiMTEuNTU0N1wiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCI1LjMzMjAzXCIgeT1cIjE2LjU4OThcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiMTAuMzcxMVwiIHk9XCIxMS41NTQ3XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjEwLjM3MTFcIiB5PVwiMTYuNTg5OFwiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCIxNS40MDYyXCIgeT1cIjExLjU1NDdcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiMTUuNDA2MlwiIHk9XCIxNi41ODk4XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgIDwvcC1jYWxlbmRhcj4gLS0+XHJcbiAgICAgICAgICA8IS0tIDxwLWNhbGVuZGFyICBmb3JtQ29udHJvbE5hbWU9XCJkYXRlXCJcclxuICAgICAgICAgIGRhdGVGb3JtYXQ9XCJkZC9tbS95eVwiXHJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBzZXR0aW5nKCdwbGFjZUhvbGRlcicpIH19XCI+IC0tPlxyXG4gICAgICAgIDxsYWJlbCBmb3I9XCJkYXRlXCIgY2xhc3M9XCJpbnB1dC1sYWJlbFwiPnt7IHNldHRpbmcoJ2xhYmVsJykgfX08c3BhbiBjbGFzcz1cImZpZWxkLXJlcXVpcmVkXCI+Kjwvc3Bhbj48L2xhYmVsPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZVwiPlxyXG4gICAgICAgIDxpbnB1dCB0eXBlPVwiZGF0ZVwiIGlkPVwiZGF0ZVwiIG5hbWU9XCJkYXRlXCIgZm9ybUNvbnRyb2xOYW1lPVwiZGF0ZVwiICBbbWluXT1cIm1pbkRhdGVcIiBbbWF4XT1cIm1heERhdGVcIj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8IS0tIDxsYWJlbCBmb3I9XCJkYXRlXCIgY2xhc3M9XCJwbGFjZWhvbGRlclwiPlNlbGVjdCBEYXRlPC9sYWJlbD4gLS0+XHJcbiAgICAgICAgPCEtLSA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaW5wdXRpY29uXCI+XHJcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImFic29sdXRlIHJpZ2h0LTAgcHQtMiBwci0yXCI+XHJcbiAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXHJcbiAgICAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgZD1cIk0xOS41NjI0IDIuMjU5OTFIMTguMTk1NlYzLjEzNTgyQzE4LjE5NTYgMy42MTk0OCAxNy43OTgyIDQuMDExNzMgMTcuMzA3OCA0LjAxMTczQzE2LjgxNzcgNC4wMTE3MyAxNi40MjAyIDMuNjE5NDggMTYuNDIwMiAzLjEzNTgyVjIuMjU5OTFINy41ODAwMVYzLjEzNTgyQzcuNTgwMDEgMy42MTk0OCA3LjE4MjUzIDQuMDExNzMgNi42OTI0NCA0LjAxMTczQzYuMjAyMDkgNC4wMTE3MyA1LjgwNDg2IDMuNjE5NDggNS44MDQ4NiAzLjEzNTgyVjIuMjU5OTFINC40Mzc4N0MzLjI2MTA3IDIuMjYwNCAyLjEzMjUyIDIuNzIxODIgMS4zMDA0MiAzLjU0Mjk5QzAuNDY4MzIzIDQuMzY0NDEgMC4wMDA1MDcxODUgNS40NzgxMyAwIDYuNjM5NDZWMTkuNjIwNEMwLjAwMDQ5NTI2NiAyMC43ODE4IDAuNDY4MzA0IDIxLjg5NTUgMS4zMDA0MiAyMi43MTY3QzIuMTMyNTIgMjMuNTM4MSAzLjI2MTA3IDIzLjk5OTUgNC40Mzc4NyAyNEgxOS41NjIxQzIwLjczODkgMjMuOTk5NSAyMS44Njc1IDIzLjUzODEgMjIuNjk5NiAyMi43MTY3QzIzLjUzMTcgMjEuODk1NSAyMy45OTk1IDIwLjc4MTggMjQgMTkuNjIwNFY2LjYzOTQ2QzIzLjk5OTUgNS40NzgxMyAyMy41MzE3IDQuMzY0NDEgMjIuNjk5NiAzLjU0Mjk5QzIxLjg2NzUgMi43MjE4MyAyMC43Mzg5IDIuMjYwNDEgMTkuNTYyMSAyLjI1OTkxSDE5LjU2MjRaTTE5LjU2MjQgMjIuMjQ4Mkg0LjQzODE4QzMuNzMyNjIgMjIuMjQ2IDMuMDU2NTUgMjEuOTY4NiAyLjU1Nzc5IDIxLjQ3NjFDMi4wNTg3OCAyMC45ODM5IDEuNzc3NjggMjAuMzE2NyAxLjc3NTQ2IDE5LjYyMDRWOS4wNTY5OEgyMi4yMjUyVjE5LjYyMDRDMjIuMjIyOSAyMC4zMTY3IDIxLjk0MTkgMjAuOTgzOSAyMS40NDI4IDIxLjQ3NjFDMjAuOTQ0MSAyMS45Njg2IDIwLjI2OCAyMi4yNDYgMTkuNTYyNCAyMi4yNDgyWk03LjU4MDAxIDIuMjU5OTFINS44MDQ4Nkw1LjgwNTA1IDAuODc1OTFDNS44MDUwNSAwLjM5MjI1MSA2LjIwMjI3IDAgNi42OTI2MiAwQzcuMTgyNzIgMCA3LjU4MDE5IDAuMzkyMjUxIDcuNTgwMTkgMC44NzU5MUw3LjU4MDAxIDIuMjU5OTFaTTE4LjE5NTYgMi4yNTk5MUgxNi40MjAyTDE2LjQyMDIgMC44NzU5MUMxNi40MjAyIDAuMzkyMjUxIDE2LjgxNzcgMCAxNy4zMDc4IDBDMTcuNzk4MSAwIDE4LjE5NTMgMC4zOTIyNTEgMTguMTk1MyAwLjg3NTkxTDE4LjE5NTYgMi4yNTk5MVpcIlxyXG4gICAgICAgICAgICAgICAgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCI1LjMzMjAzXCIgeT1cIjExLjU1NDdcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiNS4zMzIwM1wiIHk9XCIxNi41ODk4XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjEwLjM3MTFcIiB5PVwiMTEuNTU0N1wiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICAgIDxyZWN0IHg9XCIxMC4zNzExXCIgeT1cIjE2LjU4OThcIiB3aWR0aD1cIjIuOTYyOTZcIiBoZWlnaHQ9XCIyLjk2Mjk2XCIgcng9XCIwLjQ0NDQ0NFwiIGZpbGw9XCIjRjNBMDQxXCIgLz5cclxuICAgICAgICAgICAgICA8cmVjdCB4PVwiMTUuNDA2MlwiIHk9XCIxMS41NTQ3XCIgd2lkdGg9XCIyLjk2Mjk2XCIgaGVpZ2h0PVwiMi45NjI5NlwiIHJ4PVwiMC40NDQ0NDRcIiBmaWxsPVwiI0YzQTA0MVwiIC8+XHJcbiAgICAgICAgICAgICAgPHJlY3QgeD1cIjE1LjQwNjJcIiB5PVwiMTYuNTg5OFwiIHdpZHRoPVwiMi45NjI5NlwiIGhlaWdodD1cIjIuOTYyOTZcIiByeD1cIjAuNDQ0NDQ0XCIgZmlsbD1cIiNGM0EwNDFcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPiAtLT5cclxuICAgICAgPCEtLSA8L3AtY2FsZW5kYXI+IC0tPlxyXG4gICAgPGRpdj5cclxuICAgICAgPHNtYWxsICpuZ0lmPVwiZGF0ZVBpY2tlckZvcm0uZ2V0KCdkYXRlJyk/LnRvdWNoZWQgJiYgZGF0ZVBpY2tlckZvcm0uZ2V0KCdkYXRlJyk/LmVycm9ycz8uWydyZXF1aXJlZCddXCJcclxuICAgICAgICBjbGFzcz1cInRleHQtcmVkLTUwMFwiPlxyXG4gICAgICB7eyBzZXR0aW5nKCdkYXRlUGlja2VyRXJyb3JNZXNzYWdlJykgfX1cclxuICAgICAgPC9zbWFsbD5cclxuICAgIDwvZGl2PlxyXG4gICAgPC9mb3JtPlxyXG4gIDwvZGl2PlxyXG5cclxuPC9meC1jb21wb25lbnQ+Il19
|
|
@@ -150,15 +150,15 @@ export class RadioGroupComponent extends FxBaseComponent {
|
|
|
150
150
|
}
|
|
151
151
|
}
|
|
152
152
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.HttpClient }, { token: i2.FxBuilderWrapperService }, { token: i3.ApiServiceRegistry }], target: i0.ɵɵFactoryTarget.Component });
|
|
153
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RadioGroupComponent, isStandalone: true, selector: "radio-group-custom", inputs: { showOnSelection: "showOnSelection" }, viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"
|
|
153
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RadioGroupComponent, isStandalone: true, selector: "radio-group-custom", inputs: { showOnSelection: "showOnSelection" }, viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"input-label font-medium text-gray-700\">\r\n {{ setting('additional-field-label') }} <span class=\"field-required\" *ngIf=\"isChildRequired\">*</span>\r\n </label>\r\n\r\n <textarea\r\n formControlName=\"remarks\"\r\n rows=\"3\"\r\n placeholder=\"{{ setting('remark-placeholder') }}\"\r\n class=\"border border-gray-300 rounded-lg p-3 w-full resize-none shadow-sm\r\n focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n ></textarea>\r\n\r\n <!-- Textarea error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('remarks')?.touched &&\r\n confirmationForm.get('remarks')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('additional-field-error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n\r\n\r\n</form>\r\n</div>\r\n\r\n\r\n</fx-component>\r\n", styles: [".custom-gap{gap:1rem}.field-required{color:red;font-size:1.1em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "ngmodule", type: RadioButtonModule }] });
|
|
154
154
|
}
|
|
155
155
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioGroupComponent, decorators: [{
|
|
156
156
|
type: Component,
|
|
157
|
-
args: [{ selector: 'radio-group-custom', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule, RadioButtonModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"
|
|
157
|
+
args: [{ selector: 'radio-group-custom', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule, RadioButtonModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"input-label font-medium text-gray-700\">\r\n {{ setting('additional-field-label') }} <span class=\"field-required\" *ngIf=\"isChildRequired\">*</span>\r\n </label>\r\n\r\n <textarea\r\n formControlName=\"remarks\"\r\n rows=\"3\"\r\n placeholder=\"{{ setting('remark-placeholder') }}\"\r\n class=\"border border-gray-300 rounded-lg p-3 w-full resize-none shadow-sm\r\n focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n ></textarea>\r\n\r\n <!-- Textarea error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('remarks')?.touched &&\r\n confirmationForm.get('remarks')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('additional-field-error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n\r\n\r\n</form>\r\n</div>\r\n\r\n\r\n</fx-component>\r\n", styles: [".custom-gap{gap:1rem}.field-required{color:red;font-size:1.1em}\n"] }]
|
|
158
158
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.HttpClient }, { type: i2.FxBuilderWrapperService }, { type: i3.ApiServiceRegistry }], propDecorators: { showOnSelection: [{
|
|
159
159
|
type: Input
|
|
160
160
|
}], fxComponent: [{
|
|
161
161
|
type: ViewChild,
|
|
162
162
|
args: ['fxComponent']
|
|
163
163
|
}] } });
|
|
164
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZngtYnVpbGRlci13cmFwcGVyL3NyYy9saWIvY29tcG9uZW50cy9yYWRpby1ncm91cC9yYWRpby1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9meC1idWlsZGVyLXdyYXBwZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhZGlvLWdyb3VwL3JhZGlvLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBb0MsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQWEsZUFBZSxFQUFvQyxNQUFNLHFCQUFxQixDQUFDO0FBQ25LLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFTeEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7SUF5QmhDO0lBQStCO0lBQXlCO0lBQXlEO0lBeEJqSSxFQUFFLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3pCLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0lBQzFDLFVBQVUsR0FBVyxFQUFFLENBQUM7SUFDZixlQUFlLEdB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bnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGluamVjdCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQXBpU2VydmljZVJlZ2lzdHJ5IH0gZnJvbSAnQGluc3RhbnRzeXMtbGFicy9jb3JlJztcclxuaW1wb3J0IHsgRnhCYXNlQ29tcG9uZW50LCBGeENvbXBvbmVudCwgRnhPcHRpb25TZXR0aW5nLCBGeFNlbGVjdFNldHRpbmcsIEZ4U2V0dGluZywgRnhTdHJpbmdTZXR0aW5nLCBGeFZhbGlkYXRpb24sIEZ4VmFsaWRhdG9yU2VydmljZSB9IGZyb20gJ0BpbnN0YW50c3lzLWxhYnMvZngnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRnhCdWlsZGVyV3JhcHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9meC1idWlsZGVyLXdyYXBwZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENhbGVuZGFyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcic7XHJcbmltcG9ydCB7IFJhZGlvQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9yYWRpb2J1dHRvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JhZGlvLWdyb3VwLWN1c3RvbScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSwgRnhDb21wb25lbnQsIENhbGVuZGFyTW9kdWxlLFJhZGlvQnV0dG9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9yYWRpby1ncm91cC5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUmFkaW9Hcm91cENvbXBvbmVudCBleHRlbmRzIEZ4QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdHtcclxucHJpdmF0ZSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XHJcbnByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDxCb29sZWFuPigpO1xyXG5mb3JtT2JqZWN0OiBvYmplY3QgPSB7fTtcclxuQElucHV0KCkgc2hvd09uU2VsZWN0aW9uOiAneWVzJyB8ICdubycgPSAneWVzJzsgLy8gY29uZmlndXJhYmxlOiBzaG93IHRleHRhcmVhIG9uIFllcyBvciBOb1xyXG4gIHNob3dUZXh0QXJlYSA9IGZhbHNlO1xyXG4gcHVibGljIGNvbmZpcm1hdGlvbkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgY29uZmlybWF0aW9uOiBbJyddLFxyXG4gICAgICByZW1hcmtzOiBbJyddLFxyXG4gICAgICB2YWx1ZVRvU2hvd1RleHRBcmVhOiBbJyddLFxyXG4gICAgICBsYWJlbDpbJyddXHJcbiAgICB9KTtcclxuXHJcbiAgICBvcHRpb25zOiBhbnlbXSA9IFtcclxuICAgICAgeyBvcHRpb246ICdZZXMnLCB2YWx1ZTogJ1lFUycgfSxcclxuICAgICAgeyBvcHRpb246ICdObycsIHZhbHVlOiAnTk8nIH0sXHJcbiAgICAgIHsgb3B0aW9uOiAnTkEnLCB2YWx1ZTogJ05BJyB9XHJcbiAgICBdO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ2Z4Q29tcG9uZW50JykgZnhDb21wb25lbnQhOiBGeENvbXBvbmVudDtcclxuICAgIHJhZG9pb01hcCA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XHJcbiAgICBjb21wYXJlVmFsdWU6IGFueTtcclxuICAgIGlzUmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGlzQ2hpbGRSZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQscHJpdmF0ZSBmeEJ1aWxkZXJXcmFwcGVyU2VydmljZTogRnhCdWlsZGVyV3JhcHBlclNlcnZpY2UscHJpdmF0ZSBmeEFwaVNlcnZpY2U6IEFwaVNlcnZpY2VSZWdpc3RyeSkge1xyXG4gICAgICAgc3VwZXIoY2RyKVxyXG4gICAgICAgIHRoaXMub25Jbml0LnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9yZWdpc3Rlcih0aGlzLmNvbmZpcm1hdGlvbkZvcm0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgXHJcbiAgICAgfVxyXG5cclxuICAgICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9wdGlvbnMgID0gKHRoaXMuZnhDb21wb25lbnQ/LmZ4RGF0YT8uc2V0dGluZ3M/LmZpbmQoKHM6IGFueSkgPT4gcy5rZXkgPT09ICdpdGVtcycpIGFzIGFueSk/Lm9wdGlvbnMgfHwgW107XHJcbiAgICAgICBjb25zdCBsYWJlbERhdGEgPVxyXG4gICh0aGlzLmZ4Q29tcG9uZW50Py5meERhdGE/LnNldHRpbmdzPy5maW5kKChzOiBhbnkpID0+IHMua2V5ID09PSAnc2VsZWN0LWxhYmVsJykgYXMgYW55KT8udmFsdWUgPz9cclxuICAnJztcclxudGhpcy5jb21wYXJlVmFsdWUgPSAodGhpcy5meENvbXBvbmVudD8uZnhEYXRhPy5zZXR0aW5ncz8uZmluZCgoczogYW55KSA9PiBzLmtleSA9PT0gJ3ZhbHVlLXNob3ctdGV4dCcpIGFzIGFueSk/LnZhbHVlXHJcbiAgICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgnbGFiZWwnKTtcclxuICAgICAgICAgbGFiZWw/LnNldFZhbHVlKGxhYmVsRGF0YSk7XHJcbiAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICBjb25zdCBrZXkgPSB0aGlzLmZ4Q29tcG9uZW50Py5meERhdGE/Lm5hbWU7XHJcblxyXG4gIGlmIChrZXkgJiYgdGhpcy5yYWRvaW9NYXAuaGFzKGtleSkpIHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uRm9ybS5wYXRjaFZhbHVlKHRoaXMucmFkb2lvTWFwLmdldChrZXkpKTtcclxuICAgIGNvbnN0IGRhdGEgPSB0aGlzLnJhZG9pb01hcC5nZXQoa2V5KTtcclxuICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UoZGF0YS5jb25maXJtYXRpb24pO1xyXG4gIH1cclxufSwgMjAwKTtcclxuXHJcbiAgICAgICBzZXRUaW1lb3V0KCgpPT57XHJcbiAgICAgY29uc3QgbWFpbkNvbnRyb2wgPSB0aGlzLmNvbmZpcm1hdGlvbkZvcm0uZ2V0KCdjb25maXJtYXRpb24nKTtcclxuICAgICBpZih0aGlzLnNldHRpbmcoJ2lzUmFkaW9SZXF1aXJlZCcpID09PSAndHJ1ZScpe1xyXG4gICAgICB0aGlzLmlzUmVxdWlyZWQgPSB0cnVlO1xyXG4gICAgICBtYWluQ29udHJvbD8uc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG4gICAgICBtYWluQ29udHJvbD8udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgIH1cclxuICAgIH0sMTAwKVxyXG5cclxuICAgICAgICBcclxuICAgICAgIH1cclxuICAgICBcclxuICAgICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgICAgIHRoaXMuZnhCdWlsZGVyV3JhcHBlclNlcnZpY2UudmFyaWFibGVzJFxyXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgodmFyaWFibGVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF2YXJpYWJsZXMpIHJldHVybjtcclxuICAgICAgICBcclxuICAgICAgICBcclxuICAgICAgICAgICAgLy8gZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModmFyaWFibGVzKSBhcyBbc3RyaW5nLCBhbnldW10pIHtcclxuICAgICAgICAgICAgLy8gICBpZiAoa2V5LmluY2x1ZGVzKCdyYWRpby1ncm91cC1jdXN0b20nKSkge1xyXG4gICAgICAgICAgICAvLyAgICB0aGlzLmZvcm1PYmplY3QgPSB2YWx1ZTtcclxuICAgICAgICAgICAgLy8gICB9XHJcbiAgICAgICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHZhcmlhYmxlcykgYXMgW3N0cmluZywgYW55XVtdKSB7XHJcbiAgaWYgKFxyXG4gICAgdmFsdWUgJiZcclxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiZcclxuICAgICdjb25maXJtYXRpb24nIGluIHZhbHVlXHJcbiAgKSB7XHJcbiAgICB0aGlzLnJhZG9pb01hcC5zZXQoa2V5LCB2YWx1ZSk7XHJcbiAgfVxyXG59XHJcblxyXG4gICAgICAgICAgICBcclxuICAgICAgIH0pXHJcblxyXG4gICAgICAgIHRoaXMub3B0aW9ucyAgPSAodGhpcy5meENvbXBvbmVudD8uZnhEYXRhPy5zZXR0aW5ncz8uZmluZCgoczogYW55KSA9PiBzLmtleSA9PT0gJ2l0ZW1zJykgYXMgYW55KT8ub3B0aW9ucyB8fCBbXTtcclxuXHJcblxyXG4gICAgICAvLyAgdGhpcy5zZXR0aW5nKCdpdGVtcycpLmxlbmd0aCA+IDAgPyB0aGlzLm9wdGlvbnMgPSB0aGlzLnNldHRpbmcoJ2l0ZW1zJykgOiBudWxsO1xyXG4gICAgIFxyXG4gICAgICAvLyAgIHRoaXMuY29uZmlybWF0aW9uRm9ybS5nZXQoJ2NvbmZpcm1hdGlvbicpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgLy8gICAgY29uc3Qgb3RoZXJDb250cm9sID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgncmVtYXJrcycpO1xyXG4gICAgICAvLyAgICBjb25zdCB2YWx1ZVRvU2hvd1RleHRBcmVhID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgndmFsdWVUb1Nob3dUZXh0QXJlYScpO1xyXG4gICAgICAvLyAgICBpZiAodmFsdWUpIHtcclxuICAgICAgLy8gICAgICBvdGhlckNvbnRyb2w/LnNldFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgLy8gICAgICB2YWx1ZVRvU2hvd1RleHRBcmVhPy5zZXRWYWx1ZSh0aGlzLnNldHRpbmcoJ3ZhbHVlLXNob3ctdGV4dCcpKTtcclxuXHJcbiAgICAgIC8vICAgICB9IGVsc2Uge1xyXG4gICAgICAvLyAgICAgIG90aGVyQ29udHJvbD8uY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICAgIC8vICAgICAgb3RoZXJDb250cm9sPy5yZXNldCgpO1xyXG4gICAgICAvLyAgICAgIHZhbHVlVG9TaG93VGV4dEFyZWE/LnJlc2V0KCk7XHJcbiAgICAgIC8vICAgIH1cclxuICAgICAgLy8gIH0pO1xyXG4gICAgICAgXHJcbiAgICAgXHJcbiAgICAgfVxyXG5cclxuICAgICBwcm90ZWN0ZWQgc2V0dGluZ3MoKTogRnhTZXR0aW5nW10ge1xyXG4gICAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgLy8gbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ2NsaW5pY2FsTm90ZXNVUkwnLCAkdGl0bGU6ICdBUEkgVXJsJywgdmFsdWU6ICcnIH0pLFxyXG4gICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnY3VzdG9tQ2xhc3NzJywgJHRpdGxlOiAnQ3VzdG9tIENsYXNzIE5hbWUnLCB2YWx1ZTogJycgfSksXHJcbiAgICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnc2VsZWN0LWxhYmVsJywgJHRpdGxlOiAnSGVhZGVyIExhYmVsJywgdmFsdWU6ICdIZWFkZXIgTGFiZWwnIH0pLCBcclxuICAgICAgICAgICAgICAvLyBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnb3B0aW9uLXZhbHVlLW9uZScsICR0aXRsZTogJ1ZhbHVlIG9uZScsIHZhbHVlOiAnVmFsdWUgb25lJyB9KSwgXHJcbiAgICAgICAgICAgICAgLy8gIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdvcHRpb24tdmFsdWUtdHdvJywgJHRpdGxlOiAnVmFsdWUgdHdvJywgdmFsdWU6ICdWYWx1ZSB0d28nIH0pLCBcclxuICAgICAgICAgICAgICAvLyAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdvcHRpb24tbGFiZWwtb25lJywgJHRpdGxlOiAnTGFiZWwgb25lJywgdmFsdWU6ICdMYWJlbCBvbmUnIH0pLCBcclxuICAgICAgICAgICAgICAvLyAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdvcHRpb24tbGFiZWwtdHdvJywgJHRpdGxlOiAnTGFiZWwgdHdvJywgdmFsdWU6ICdMYWJlbCB0d28nIH0pLCBcclxuICAgICAgICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICd2YWx1ZS1zaG93LXRleHQnLCAkdGl0bGU6ICdWYWx1ZSB0byBzaG93IHRleHRhcmVhJywgdmFsdWU6ICdWYWx1ZSB0byBzaG93IHRleHRhcmVhJyB9KSxcclxuICAgICAgICAgICAgICAgIG5ldyBGeE9wdGlvblNldHRpbmcoeyBrZXk6ICdpdGVtcycsICR0aXRsZTogJ09wdGlvbnMnLCB2YWx1ZTogW3tvcHRpb246ICdZZXMnLCB2YWx1ZTogJ3llcyd9LCB7b3B0aW9uOiAnTm8nLCB2YWx1ZTogJ25vJ31dICB9LCBbe29wdGlvbjogJ1llcycsIHZhbHVlOiAneWVzJ30sIHtvcHRpb246ICdObycsIHZhbHVlOiAnbm8nfV0pLCBcclxuICAgICAgICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdhZGRpdGlvbmFsLWZpZWxkLWxhYmVsJywgJHRpdGxlOiAnQWRkaXRpb25hbCBmaWVsZCBsYWJlbCcsIHZhbHVlOiAnJyB9KSxcclxuICAgICAgICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdhZGRpdGlvbmFsLWZpZWxkLWVycm9yLW1zZycsICR0aXRsZTogJ0FkZGl0aW9uYWwgZmllbGQgZXJyb3IgbWVzc2FnZScsIHZhbHVlOiAnUGxlYXNlIGZpbGwgb3V0IHRoZSBmaWVsZCcgfSksXHJcbiAgICAgICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnZXJyb3ItbXNnJywgJHRpdGxlOiAnRXJyb3IgbWVzc2FnZScsIHZhbHVlOiAnUGxlYXNlIHNlbGVjdCcgfSksXHJcbiAgICAgICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAncmVtYXJrLXBsYWNlaG9sZGVyJywgJHRpdGxlOiAnQWRkaXRpb25hbCBmaWVsZCBwbGFjZWhvbGRlcicsIHZhbHVlOiAnZW50ZXIgaGVyZScgfSksXHJcbiAgICAgICAgICAgICAgICBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdpc1JhZGlvUmVxdWlyZWQnLCAkdGl0bGU6ICdSZXF1aXJlZCcsIHZhbHVlOiAndHJ1ZSd9LCBbe29wdGlvbjogJ1llcycsIHZhbHVlOiAndHJ1ZSd9LCB7b3B0aW9uOiAnTm8nLCB2YWx1ZTogJ2ZhbHNlJ31dKSwgICAgXHJcbiAgICAgICAgICAgIC8vICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ290aGVyLXBsYWNlaG9sZGVyJywgJHRpdGxlOiAnT3RoZXIgUGxhY2Vob2xkZXInLCB2YWx1ZTogJycgfSksICBcclxuICAgICAgICAgICAgLy8gICBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdzZXJ2aWNlTmFtZScsICR0aXRsZTogJ1NlcnZpY2UnLCB2YWx1ZTogJyd9LCBbe29wdGlvbjogJ1VzZXIgU2VydmljZScsIHZhbHVlOiAndXNlcl9zZXJ2aWNlJ30sIHtvcHRpb246ICdQYXRpZW50IFNlcnZpY2UnLCB2YWx1ZTogJ3BhdGllbnRfc2VydmljZSd9LHtvcHRpb246ICdXb3JrZmxvdyBTZXJ2aWNlJywgdmFsdWU6ICd3b3JrZmxvd19zZXJ2aWNlJ31dKSxcclxuICAgICAgICAgICAgLy8gICAvLyBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdzZXJ2aWNlJywgJHRpdGxlOiAnU2VydmljZScsIHZhbHVlOiAnbG9jYWwnfSwgW3tvcHRpb246ICdMb2NhbCcsIHZhbHVlOiAnbG9jYWwnfSwge29wdGlvbjogJ1FBJywgdmFsdWU6ICdxYSd9LHtvcHRpb246ICdVQVQnLCB2YWx1ZTogJ3VhdCd9LHtvcHRpb246ICdQcm9kdWN0aW9uJywgdmFsdWU6ICdwcm9kJ31dKSwgICBcclxuICAgICAgICAgICAgLy8gICAvLyBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdpc1JlcXVpcmVkJywgJHRpdGxlOiAnUmVxdWlyZWQnLCB2YWx1ZTogdHJ1ZX0sIFt7b3B0aW9uOiAnWWVzJywgdmFsdWU6IHRydWV9LCB7b3B0aW9uOiAnTm8nLCB2YWx1ZTogZmFsc2V9XSksICAgIFxyXG4gICAgICAgICAgICAvLyAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnZXJyb3JNZXNzYWdlJywgJHRpdGxlOiAnRXJyb3IgTWVzc2FnZScsIHZhbHVlOiAnUGxlYXNlIGZpbGwgb3V0IHRoZSBmaWVsZCcgfSksICBcclxuICAgICAgICAgIF07XHJcbiAgICAgICAgfVxyXG4gICAgICBcclxuICAgICAgICBwcm90ZWN0ZWQgdmFsaWRhdGlvbnMoKTogRnhWYWxpZGF0aW9uW10ge1xyXG4gICAgICAgICAgcmV0dXJuIFtdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgb25TZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uOiBzdHJpbmcpIHtcclxuXHJcbiAgICB0aGlzLnNob3dUZXh0QXJlYSA9IHNlbGVjdGlvbiA9PT0gdGhpcy5jb21wYXJlVmFsdWU7XHJcbiAgICBpZih0aGlzLnNob3dUZXh0QXJlYSl7XHJcbmNvbnN0IHZhbHVlVG9TaG93VGV4dEFyZWEgPSB0aGlzLmNvbmZpcm1hdGlvbkZvcm0uZ2V0KCd2YWx1ZVRvU2hvd1RleHRBcmVhJyk7XHJcbiB2YWx1ZVRvU2hvd1RleHRBcmVhPy5zZXRWYWx1ZSh0aGlzLnNldHRpbmcoJ3ZhbHVlLXNob3ctdGV4dCcpKTtcclxuY29uc3Qgb3RoZXJDb250cm9sID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgncmVtYXJrcycpO1xyXG50aGlzLmlzQ2hpbGRSZXF1aXJlZCA9IHRydWU7XHJcbm90aGVyQ29udHJvbD8uc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG5vdGhlckNvbnRyb2w/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgIGNvbnN0IG90aGVyQ29udHJvbCA9IHRoaXMuY29uZmlybWF0aW9uRm9ybS5nZXQoJ3JlbWFya3MnKTtcclxuICAgICAgdGhpcy5pc0NoaWxkUmVxdWlyZWQgPSBmYWxzZTtcclxuICAgICAgb3RoZXJDb250cm9sPy5yZXNldCgpO1xyXG4gICAgICBvdGhlckNvbnRyb2w/LmNsZWFyVmFsaWRhdG9ycygpO1xyXG4gICAgICBvdGhlckNvbnRyb2w/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG59XHJcbiIsIjxmeC1jb21wb25lbnQgW2Z4RGF0YV09XCJmeERhdGFcIiAjZnhDb21wb25lbnQ+XHJcbiAgPGRpdiAgW25nQ2xhc3NdPVwic2V0dGluZygnY3VzdG9tQ2xhc3NzJylcIj5cclxuPGZvcm0gW2Zvcm1Hcm91cF09XCJjb25maXJtYXRpb25Gb3JtXCIgY2xhc3M9XCJmbGV4IGdhcC00IHctZnVsbFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJmbGV4LTEgdy1mdWxsXCI+XHJcbiAgICA8IS0tIFRpdGxlIC0tPlxyXG4gIDxsYWJlbCBjbGFzcz1cImZvbnQtc2VtaWJvbGQgdGV4dC1ncmF5LTgwMFwiPlxyXG4gICAge3sgc2V0dGluZygnc2VsZWN0LWxhYmVsJykgfX0gPHNwYW4gY2xhc3M9XCJmaWVsZC1yZXF1aXJlZFwiICpuZ0lmPVwiaXNSZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgPC9sYWJlbD5cclxuXHJcbiAgPCEtLSBUV08gQ09MVU1OIExBWU9VVCAtLT5cclxuICBcclxuXHJcbiAgICA8IS0tIExFRlQgQ09MVU1OIChSQURJTyBHUk9VUCkgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleC0xXCI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtMyBteS0yXCI+IFxyXG4gICAgICAgIDwhLS0gc3RhY2sgdmVydGljYWxseSBzbyBoZWlnaHQgaXMgY29ycmVjdCAtLT5cclxuICAgICAgICA8bGFiZWxcclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHQgb2Ygb3B0aW9uc1wiXHJcbiAgICAgICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0yIGN1cnNvci1wb2ludGVyIHRleHQtZ3JheS03MDBcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxyXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb25maXJtYXRpb25cIlxyXG4gICAgICAgICAgICBbdmFsdWVdPVwib3B0LnZhbHVlXCJcclxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZShvcHQudmFsdWUpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ3LTQgaC00IGFjY2VudC1ibHVlLTYwMCBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAgPHNwYW4+e3sgb3B0Lm9wdGlvbiB9fTwvc3Bhbj5cclxuICAgICAgICA8L2xhYmVsPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gUmFkaW8gZXJyb3IgLS0+XHJcbiAgICAgIDxzbWFsbFxyXG4gICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICBjb25maXJtYXRpb25Gb3JtLmdldCgnY29uZmlybWF0aW9uJyk/LnRvdWNoZWQgJiZcclxuICAgICAgICAgIGNvbmZpcm1hdGlvbkZvcm0uZ2V0KCdjb25maXJtYXRpb24nKT8uZXJyb3JzPy5bJ3JlcXVpcmVkJ11cclxuICAgICAgICBcIlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1yZWQtNTAwIG10LTFcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgc2V0dGluZygnZXJyb3ItbXNnJykgfX1cclxuICAgICAgPC9zbWFsbD5cclxuXHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9kaXY+XHJcbiAgXHJcbiAgICA8IS0tIFJJR0hUIENPTFVNTiAoVEVYVEFSRUEpIC0tPlxyXG4gICAgPGRpdiAqbmdJZj1cInNob3dUZXh0QXJlYVwiIGNsYXNzPVwiZmxleC0xXCI+XHJcblxyXG4gICAgICA8bGFiZWwgY2xhc3M9XCJtYi0yIGZvbnQtbWVkaXVtIHRleHQtZ3JheS03MDBcIj5cclxuICAgICAgICB7eyBzZXR0aW5nKCdhZGRpdGlvbmFsLWZpZWxkLWxhYmVsJykgfX0gPHNwYW4gY2xhc3M9XCJmaWVsZC1yZXF1aXJlZFwiICpuZ0lmPVwiaXNDaGlsZFJlcXVpcmVkXCI+Kjwvc3Bhbj5cclxuICAgICAgPC9sYWJlbD5cclxuXHJcbiAgICAgIDx0ZXh0YXJlYVxyXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInJlbWFya3NcIlxyXG4gICAgICAgIHJvd3M9XCIzXCJcclxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHNldHRpbmcoJ3JlbWFyay1wbGFjZWhvbGRlcicpIH19XCJcclxuICAgICAgICBjbGFzcz1cImJvcmRlciBib3JkZXItZ3JheS0zMDAgcm91bmRlZC1sZyBwLTMgdy1mdWxsIHJlc2l6ZS1ub25lIHNoYWRvdy1zbVxyXG4gICAgICAgICAgICAgICBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctYmx1ZS01MDBcIlxyXG4gICAgICA+PC90ZXh0YXJlYT5cclxuXHJcbiAgICAgIDwhLS0gVGV4dGFyZWEgZXJyb3IgLS0+XHJcbiAgICAgIDxzbWFsbFxyXG4gICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICBjb25maXJtYXRpb25Gb3JtLmdldCgncmVtYXJrcycpPy50b3VjaGVkICYmXHJcbiAgICAgICAgICBjb25maXJtYXRpb25Gb3JtLmdldCgncmVtYXJrcycpPy5lcnJvcnM/LlsncmVxdWlyZWQnXVxyXG4gICAgICAgIFwiXHJcbiAgICAgICAgY2xhc3M9XCJ0ZXh0LXJlZC01MDAgbXQtMVwiXHJcbiAgICAgID5cclxuICAgICAgICB7eyBzZXR0aW5nKCdhZGRpdGlvbmFsLWZpZWxkLWVycm9yLW1zZycpIH19XHJcbiAgICAgIDwvc21hbGw+XHJcblxyXG4gICAgPC9kaXY+XHJcblxyXG5cclxuXHJcbjwvZm9ybT5cclxuPC9kaXY+XHJcblxyXG5cclxuPC9meC1jb21wb25lbnQ+XHJcbiJdfQ==
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZngtYnVpbGRlci13cmFwcGVyL3NyYy9saWIvY29tcG9uZW50cy9yYWRpby1ncm91cC9yYWRpby1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9meC1idWlsZGVyLXdyYXBwZXIvc3JjL2xpYi9jb21wb25lbnRzL3JhZGlvLWdyb3VwL3JhZGlvLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBb0MsU0FBUyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQWEsZUFBZSxFQUFvQyxNQUFNLHFCQUFxQixDQUFDO0FBQ25LLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFTeEQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7SUF5QmhDO0lBQStCO0lBQXlCO0lBQXlEO0lBeEJqSSxFQUFFLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3pCLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBVyxDQUFDO0lBQzFDLFVBQVUsR0FBVyxFQUFFLENBQUM7SUFDZixlQUFlLEdBQWlCLEtBQUssQ0FBQyxDQUFDLDJDQUEyQztJQUN6RixZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQ2YsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7UUFDbkMsWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ2xCLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNiLG1CQUFtQixFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3pCLEtBQUssRUFBQyxDQUFDLEVBQUUsQ0FBQztLQUNYLENBQUMsQ0FBQztJQUVILE9BQU8sR0FBVTtRQUNmLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFO1FBQy9CLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO1FBQzdCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO0tBQzlCLENBQUM7SUFFd0IsV0FBVyxDQUFlO0lBQ3BELFNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO0lBQ25DLFlBQVksQ0FBTTtJQUNsQixVQUFVLEdBQVksS0FBSyxDQUFDO0lBQzVCLGVBQWUsR0FBWSxLQUFLLENBQUM7SUFFakMsWUFBb0IsR0FBc0IsRUFBUyxJQUFnQixFQUFTLHVCQUFnRCxFQUFTLFlBQWdDO1FBQ2xLLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQURPLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFTLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBeUI7UUFBUyxpQkFBWSxHQUFaLFlBQVksQ0FBb0I7UUFFakssSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDeEMsQ0FBQyxDQUFDLENBQUM7SUFFTixDQUFDO0lBRUMsZUFBZTtRQUNkLElBQUksQ0FBQyxPQUFPLEdBQUssSUFBSSxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxPQUFPLENBQVMsRUFBRSxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ2pILE1BQU0sU0FBUyxHQUNuQixJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLGNBQWMsQ0FBUyxFQUFFLEtBQUs7WUFDOUYsRUFBRSxDQUFDO1FBQ0wsSUFBSSxDQUFDLFlBQVksR0FBSSxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLGlCQUFpQixDQUFTLEVBQUUsS0FBSyxDQUFBO1FBQzVHLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDakQsS0FBSyxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM3QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ3JCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQztZQUUzQyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUNuQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7Z0JBQzFELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNyQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQzVDLENBQUM7UUFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFRCxVQUFVLENBQUMsR0FBRSxFQUFFO1lBQ2pCLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDOUQsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEtBQUssTUFBTSxFQUFDLENBQUM7Z0JBQzlDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO2dCQUN2QixXQUFXLEVBQUUsYUFBYSxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7Z0JBQ2xELFdBQVcsRUFBRSxzQkFBc0IsRUFBRSxDQUFDO1lBQ3ZDLENBQUM7UUFDRixDQUFDLEVBQUMsR0FBRyxDQUFDLENBQUE7SUFHSCxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxVQUFVO2FBQ3ZDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxDQUFDLFNBQWMsRUFBRSxFQUFFO1lBQzVCLElBQUksQ0FBQyxTQUFTO2dCQUFFLE9BQU87WUFHdkIsNkVBQTZFO1lBQzdFLDhDQUE4QztZQUM5Qyw4QkFBOEI7WUFDOUIsTUFBTTtZQUNOLElBQUk7WUFFSixLQUFLLE1BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQW9CLEVBQUUsQ0FBQztnQkFDcEYsSUFDRSxLQUFLO29CQUNMLE9BQU8sS0FBSyxLQUFLLFFBQVE7b0JBQ3pCLGNBQWMsSUFBSSxLQUFLLEVBQ3ZCLENBQUM7b0JBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNqQyxDQUFDO1lBQ0gsQ0FBQztRQUdNLENBQUMsQ0FBQyxDQUFBO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBSyxJQUFJLENBQUMsV0FBVyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBUyxFQUFFLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFHbEgsbUZBQW1GO1FBRW5GLGlGQUFpRjtRQUNqRixnRUFBZ0U7UUFDaEUsbUZBQW1GO1FBQ25GLGtCQUFrQjtRQUNsQiwyREFBMkQ7UUFDM0QsdUVBQXVFO1FBRXZFLGVBQWU7UUFDZix3Q0FBd0M7UUFDeEMsOEJBQThCO1FBQzlCLHFDQUFxQztRQUNyQyxPQUFPO1FBQ1AsT0FBTztJQUdSLENBQUM7SUFFUyxRQUFRO1FBQ2IsT0FBTztZQUNMLGtGQUFrRjtZQUNsRixJQUFJLGVBQWUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLG1CQUFtQixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNuRixJQUFJLGVBQWUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLENBQUM7WUFDMUYsOEZBQThGO1lBQzlGLCtGQUErRjtZQUMvRixnR0FBZ0c7WUFDaEcsZ0dBQWdHO1lBQzlGLElBQUksZUFBZSxDQUFDLEVBQUUsR0FBRyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSx3QkFBd0IsRUFBRSxLQUFLLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQztZQUNsSCxJQUFJLGVBQWUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBQyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFDLENBQUMsRUFBRyxFQUFFLENBQUMsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUMsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBQyxDQUFDLENBQUM7WUFDNUwsSUFBSSxlQUFlLENBQUMsRUFBRSxHQUFHLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxFQUFFLHdCQUF3QixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUNuRyxJQUFJLGVBQWUsQ0FBQyxFQUFFLEdBQUcsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLEVBQUUsZ0NBQWdDLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFLENBQUM7WUFDeEksSUFBSSxlQUFlLENBQUMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxDQUFDO1lBQzFGLElBQUksZUFBZSxDQUFDLEVBQUUsR0FBRyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sRUFBRSw4QkFBOEIsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLENBQUM7WUFDL0csSUFBSSxlQUFlLENBQUMsRUFBQyxHQUFHLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFDLEVBQUUsQ0FBQyxFQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBQyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFDLENBQUMsQ0FBQztZQUN0SixpR0FBaUc7WUFDakcsK09BQStPO1lBQy9PLDBOQUEwTjtZQUMxTixvSkFBb0o7WUFDcEosa0hBQWtIO1NBQ25ILENBQUM7SUFDSixDQUFDO0lBRVMsV0FBVztRQUNuQixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUFpQjtRQUV2QyxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsS0FBSyxJQUFJLENBQUMsWUFBWSxDQUFDO1FBQ3BELElBQUcsSUFBSSxDQUFDLFlBQVksRUFBQyxDQUFDO1lBQzFCLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1lBQzVFLG1CQUFtQixFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQztZQUNoRSxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzFELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1lBQzVCLFlBQVksRUFBRSxhQUFhLENBQUMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztZQUNuRCxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO2FBQ0csQ0FBQztZQUNILE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDN0IsWUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3RCLFlBQVksRUFBRSxlQUFlLEVBQUUsQ0FBQztZQUNoQyxZQUFZLEVBQUUsc0JBQXNCLEVBQUUsQ0FBQztRQUN6QyxDQUFDO0lBRUgsQ0FBQzt3R0E5SlUsbUJBQW1COzRGQUFuQixtQkFBbUIsaVFDbEJoQyxxOUVBa0ZBLDBIRHBFWSxZQUFZLDZWQUFFLG1CQUFtQiwrcENBQUUsV0FBVywrQkFBRSxXQUFXLDRFQUFFLGNBQWMsOEJBQUMsaUJBQWlCOzs0RkFJNUYsbUJBQW1CO2tCQVAvQixTQUFTOytCQUNFLG9CQUFvQixjQUNsQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUMsaUJBQWlCLENBQUM7c0xBUWpHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBZXdCLFdBQVc7c0JBQXBDLFNBQVM7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIGluamVjdCwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQXBpU2VydmljZVJlZ2lzdHJ5IH0gZnJvbSAnQGluc3RhbnRzeXMtbGFicy9jb3JlJztcclxuaW1wb3J0IHsgRnhCYXNlQ29tcG9uZW50LCBGeENvbXBvbmVudCwgRnhPcHRpb25TZXR0aW5nLCBGeFNlbGVjdFNldHRpbmcsIEZ4U2V0dGluZywgRnhTdHJpbmdTZXR0aW5nLCBGeFZhbGlkYXRpb24sIEZ4VmFsaWRhdG9yU2VydmljZSB9IGZyb20gJ0BpbnN0YW50c3lzLWxhYnMvZngnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRnhCdWlsZGVyV3JhcHBlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9meC1idWlsZGVyLXdyYXBwZXIuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENhbGVuZGFyTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9jYWxlbmRhcic7XHJcbmltcG9ydCB7IFJhZGlvQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9yYWRpb2J1dHRvbic7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3JhZGlvLWdyb3VwLWN1c3RvbScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSwgRnhDb21wb25lbnQsIENhbGVuZGFyTW9kdWxlLFJhZGlvQnV0dG9uTW9kdWxlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmFkaW8tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9yYWRpby1ncm91cC5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgUmFkaW9Hcm91cENvbXBvbmVudCBleHRlbmRzIEZ4QmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdHtcclxucHJpdmF0ZSBmYiA9IGluamVjdChGb3JtQnVpbGRlcik7XHJcbnByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDxCb29sZWFuPigpO1xyXG5mb3JtT2JqZWN0OiBvYmplY3QgPSB7fTtcclxuQElucHV0KCkgc2hvd09uU2VsZWN0aW9uOiAneWVzJyB8ICdubycgPSAneWVzJzsgLy8gY29uZmlndXJhYmxlOiBzaG93IHRleHRhcmVhIG9uIFllcyBvciBOb1xyXG4gIHNob3dUZXh0QXJlYSA9IGZhbHNlO1xyXG4gcHVibGljIGNvbmZpcm1hdGlvbkZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgY29uZmlybWF0aW9uOiBbJyddLFxyXG4gICAgICByZW1hcmtzOiBbJyddLFxyXG4gICAgICB2YWx1ZVRvU2hvd1RleHRBcmVhOiBbJyddLFxyXG4gICAgICBsYWJlbDpbJyddXHJcbiAgICB9KTtcclxuXHJcbiAgICBvcHRpb25zOiBhbnlbXSA9IFtcclxuICAgICAgeyBvcHRpb246ICdZZXMnLCB2YWx1ZTogJ1lFUycgfSxcclxuICAgICAgeyBvcHRpb246ICdObycsIHZhbHVlOiAnTk8nIH0sXHJcbiAgICAgIHsgb3B0aW9uOiAnTkEnLCB2YWx1ZTogJ05BJyB9XHJcbiAgICBdO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ2Z4Q29tcG9uZW50JykgZnhDb21wb25lbnQhOiBGeENvbXBvbmVudDtcclxuICAgIHJhZG9pb01hcCA9IG5ldyBNYXA8c3RyaW5nLCBhbnk+KCk7XHJcbiAgICBjb21wYXJlVmFsdWU6IGFueTtcclxuICAgIGlzUmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIGlzQ2hpbGRSZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQscHJpdmF0ZSBmeEJ1aWxkZXJXcmFwcGVyU2VydmljZTogRnhCdWlsZGVyV3JhcHBlclNlcnZpY2UscHJpdmF0ZSBmeEFwaVNlcnZpY2U6IEFwaVNlcnZpY2VSZWdpc3RyeSkge1xyXG4gICAgICAgc3VwZXIoY2RyKVxyXG4gICAgICAgIHRoaXMub25Jbml0LnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9yZWdpc3Rlcih0aGlzLmNvbmZpcm1hdGlvbkZvcm0pO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgXHJcbiAgICAgfVxyXG5cclxuICAgICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9wdGlvbnMgID0gKHRoaXMuZnhDb21wb25lbnQ/LmZ4RGF0YT8uc2V0dGluZ3M/LmZpbmQoKHM6IGFueSkgPT4gcy5rZXkgPT09ICdpdGVtcycpIGFzIGFueSk/Lm9wdGlvbnMgfHwgW107XHJcbiAgICAgICBjb25zdCBsYWJlbERhdGEgPVxyXG4gICh0aGlzLmZ4Q29tcG9uZW50Py5meERhdGE/LnNldHRpbmdzPy5maW5kKChzOiBhbnkpID0+IHMua2V5ID09PSAnc2VsZWN0LWxhYmVsJykgYXMgYW55KT8udmFsdWUgPz9cclxuICAnJztcclxudGhpcy5jb21wYXJlVmFsdWUgPSAodGhpcy5meENvbXBvbmVudD8uZnhEYXRhPy5zZXR0aW5ncz8uZmluZCgoczogYW55KSA9PiBzLmtleSA9PT0gJ3ZhbHVlLXNob3ctdGV4dCcpIGFzIGFueSk/LnZhbHVlXHJcbiAgICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgnbGFiZWwnKTtcclxuICAgICAgICAgbGFiZWw/LnNldFZhbHVlKGxhYmVsRGF0YSk7XHJcbiAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICBjb25zdCBrZXkgPSB0aGlzLmZ4Q29tcG9uZW50Py5meERhdGE/Lm5hbWU7XHJcblxyXG4gIGlmIChrZXkgJiYgdGhpcy5yYWRvaW9NYXAuaGFzKGtleSkpIHtcclxuICAgIHRoaXMuY29uZmlybWF0aW9uRm9ybS5wYXRjaFZhbHVlKHRoaXMucmFkb2lvTWFwLmdldChrZXkpKTtcclxuICAgIGNvbnN0IGRhdGEgPSB0aGlzLnJhZG9pb01hcC5nZXQoa2V5KTtcclxuICAgIHRoaXMub25TZWxlY3Rpb25DaGFuZ2UoZGF0YS5jb25maXJtYXRpb24pO1xyXG4gIH1cclxufSwgMjAwKTtcclxuXHJcbiAgICAgICBzZXRUaW1lb3V0KCgpPT57XHJcbiAgICAgY29uc3QgbWFpbkNvbnRyb2wgPSB0aGlzLmNvbmZpcm1hdGlvbkZvcm0uZ2V0KCdjb25maXJtYXRpb24nKTtcclxuICAgICBpZih0aGlzLnNldHRpbmcoJ2lzUmFkaW9SZXF1aXJlZCcpID09PSAndHJ1ZScpe1xyXG4gICAgICB0aGlzLmlzUmVxdWlyZWQgPSB0cnVlO1xyXG4gICAgICBtYWluQ29udHJvbD8uc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG4gICAgICBtYWluQ29udHJvbD8udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgIH1cclxuICAgIH0sMTAwKVxyXG5cclxuICAgICAgICBcclxuICAgICAgIH1cclxuICAgICBcclxuICAgICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgICAgIHRoaXMuZnhCdWlsZGVyV3JhcHBlclNlcnZpY2UudmFyaWFibGVzJFxyXG4gICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAgICAgLnN1YnNjcmliZSgodmFyaWFibGVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKCF2YXJpYWJsZXMpIHJldHVybjtcclxuICAgICAgICBcclxuICAgICAgICBcclxuICAgICAgICAgICAgLy8gZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXModmFyaWFibGVzKSBhcyBbc3RyaW5nLCBhbnldW10pIHtcclxuICAgICAgICAgICAgLy8gICBpZiAoa2V5LmluY2x1ZGVzKCdyYWRpby1ncm91cC1jdXN0b20nKSkge1xyXG4gICAgICAgICAgICAvLyAgICB0aGlzLmZvcm1PYmplY3QgPSB2YWx1ZTtcclxuICAgICAgICAgICAgLy8gICB9XHJcbiAgICAgICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHZhcmlhYmxlcykgYXMgW3N0cmluZywgYW55XVtdKSB7XHJcbiAgaWYgKFxyXG4gICAgdmFsdWUgJiZcclxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gJ29iamVjdCcgJiZcclxuICAgICdjb25maXJtYXRpb24nIGluIHZhbHVlXHJcbiAgKSB7XHJcbiAgICB0aGlzLnJhZG9pb01hcC5zZXQoa2V5LCB2YWx1ZSk7XHJcbiAgfVxyXG59XHJcblxyXG4gICAgICAgICAgICBcclxuICAgICAgIH0pXHJcblxyXG4gICAgICAgIHRoaXMub3B0aW9ucyAgPSAodGhpcy5meENvbXBvbmVudD8uZnhEYXRhPy5zZXR0aW5ncz8uZmluZCgoczogYW55KSA9PiBzLmtleSA9PT0gJ2l0ZW1zJykgYXMgYW55KT8ub3B0aW9ucyB8fCBbXTtcclxuXHJcblxyXG4gICAgICAvLyAgdGhpcy5zZXR0aW5nKCdpdGVtcycpLmxlbmd0aCA+IDAgPyB0aGlzLm9wdGlvbnMgPSB0aGlzLnNldHRpbmcoJ2l0ZW1zJykgOiBudWxsO1xyXG4gICAgIFxyXG4gICAgICAvLyAgIHRoaXMuY29uZmlybWF0aW9uRm9ybS5nZXQoJ2NvbmZpcm1hdGlvbicpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgLy8gICAgY29uc3Qgb3RoZXJDb250cm9sID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgncmVtYXJrcycpO1xyXG4gICAgICAvLyAgICBjb25zdCB2YWx1ZVRvU2hvd1RleHRBcmVhID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgndmFsdWVUb1Nob3dUZXh0QXJlYScpO1xyXG4gICAgICAvLyAgICBpZiAodmFsdWUpIHtcclxuICAgICAgLy8gICAgICBvdGhlckNvbnRyb2w/LnNldFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMucmVxdWlyZWRdKTtcclxuICAgICAgLy8gICAgICB2YWx1ZVRvU2hvd1RleHRBcmVhPy5zZXRWYWx1ZSh0aGlzLnNldHRpbmcoJ3ZhbHVlLXNob3ctdGV4dCcpKTtcclxuXHJcbiAgICAgIC8vICAgICB9IGVsc2Uge1xyXG4gICAgICAvLyAgICAgIG90aGVyQ29udHJvbD8uY2xlYXJWYWxpZGF0b3JzKCk7XHJcbiAgICAgIC8vICAgICAgb3RoZXJDb250cm9sPy5yZXNldCgpO1xyXG4gICAgICAvLyAgICAgIHZhbHVlVG9TaG93VGV4dEFyZWE/LnJlc2V0KCk7XHJcbiAgICAgIC8vICAgIH1cclxuICAgICAgLy8gIH0pO1xyXG4gICAgICAgXHJcbiAgICAgXHJcbiAgICAgfVxyXG5cclxuICAgICBwcm90ZWN0ZWQgc2V0dGluZ3MoKTogRnhTZXR0aW5nW10ge1xyXG4gICAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgLy8gbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ2NsaW5pY2FsTm90ZXNVUkwnLCAkdGl0bGU6ICdBUEkgVXJsJywgdmFsdWU6ICcnIH0pLFxyXG4gICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnY3VzdG9tQ2xhc3NzJywgJHRpdGxlOiAnQ3VzdG9tIENsYXNzIE5hbWUnLCB2YWx1ZTogJycgfSksXHJcbiAgICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnc2VsZWN0LWxhYmVsJywgJHRpdGxlOiAnSGVhZGVyIExhYmVsJywgdmFsdWU6ICdIZWFkZXIgTGFiZWwnIH0pLCBcclxuICAgICAgICAgICAgICAvLyBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnb3B0aW9uLXZhbHVlLW9uZScsICR0aXRsZTogJ1ZhbHVlIG9uZScsIHZhbHVlOiAnVmFsdWUgb25lJyB9KSwgXHJcbiAgICAgICAgICAgICAgLy8gIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdvcHRpb24tdmFsdWUtdHdvJywgJHRpdGxlOiAnVmFsdWUgdHdvJywgdmFsdWU6ICdWYWx1ZSB0d28nIH0pLCBcclxuICAgICAgICAgICAgICAvLyAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdvcHRpb24tbGFiZWwtb25lJywgJHRpdGxlOiAnTGFiZWwgb25lJywgdmFsdWU6ICdMYWJlbCBvbmUnIH0pLCBcclxuICAgICAgICAgICAgICAvLyAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdvcHRpb24tbGFiZWwtdHdvJywgJHRpdGxlOiAnTGFiZWwgdHdvJywgdmFsdWU6ICdMYWJlbCB0d28nIH0pLCBcclxuICAgICAgICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICd2YWx1ZS1zaG93LXRleHQnLCAkdGl0bGU6ICdWYWx1ZSB0byBzaG93IHRleHRhcmVhJywgdmFsdWU6ICdWYWx1ZSB0byBzaG93IHRleHRhcmVhJyB9KSxcclxuICAgICAgICAgICAgICAgIG5ldyBGeE9wdGlvblNldHRpbmcoeyBrZXk6ICdpdGVtcycsICR0aXRsZTogJ09wdGlvbnMnLCB2YWx1ZTogW3tvcHRpb246ICdZZXMnLCB2YWx1ZTogJ3llcyd9LCB7b3B0aW9uOiAnTm8nLCB2YWx1ZTogJ25vJ31dICB9LCBbe29wdGlvbjogJ1llcycsIHZhbHVlOiAneWVzJ30sIHtvcHRpb246ICdObycsIHZhbHVlOiAnbm8nfV0pLCBcclxuICAgICAgICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdhZGRpdGlvbmFsLWZpZWxkLWxhYmVsJywgJHRpdGxlOiAnQWRkaXRpb25hbCBmaWVsZCBsYWJlbCcsIHZhbHVlOiAnJyB9KSxcclxuICAgICAgICAgICAgICAgIG5ldyBGeFN0cmluZ1NldHRpbmcoeyBrZXk6ICdhZGRpdGlvbmFsLWZpZWxkLWVycm9yLW1zZycsICR0aXRsZTogJ0FkZGl0aW9uYWwgZmllbGQgZXJyb3IgbWVzc2FnZScsIHZhbHVlOiAnUGxlYXNlIGZpbGwgb3V0IHRoZSBmaWVsZCcgfSksXHJcbiAgICAgICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnZXJyb3ItbXNnJywgJHRpdGxlOiAnRXJyb3IgbWVzc2FnZScsIHZhbHVlOiAnUGxlYXNlIHNlbGVjdCcgfSksXHJcbiAgICAgICAgICAgICAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAncmVtYXJrLXBsYWNlaG9sZGVyJywgJHRpdGxlOiAnQWRkaXRpb25hbCBmaWVsZCBwbGFjZWhvbGRlcicsIHZhbHVlOiAnZW50ZXIgaGVyZScgfSksXHJcbiAgICAgICAgICAgICAgICBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdpc1JhZGlvUmVxdWlyZWQnLCAkdGl0bGU6ICdSZXF1aXJlZCcsIHZhbHVlOiAndHJ1ZSd9LCBbe29wdGlvbjogJ1llcycsIHZhbHVlOiAndHJ1ZSd9LCB7b3B0aW9uOiAnTm8nLCB2YWx1ZTogJ2ZhbHNlJ31dKSwgICAgXHJcbiAgICAgICAgICAgIC8vICAgbmV3IEZ4U3RyaW5nU2V0dGluZyh7IGtleTogJ290aGVyLXBsYWNlaG9sZGVyJywgJHRpdGxlOiAnT3RoZXIgUGxhY2Vob2xkZXInLCB2YWx1ZTogJycgfSksICBcclxuICAgICAgICAgICAgLy8gICBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdzZXJ2aWNlTmFtZScsICR0aXRsZTogJ1NlcnZpY2UnLCB2YWx1ZTogJyd9LCBbe29wdGlvbjogJ1VzZXIgU2VydmljZScsIHZhbHVlOiAndXNlcl9zZXJ2aWNlJ30sIHtvcHRpb246ICdQYXRpZW50IFNlcnZpY2UnLCB2YWx1ZTogJ3BhdGllbnRfc2VydmljZSd9LHtvcHRpb246ICdXb3JrZmxvdyBTZXJ2aWNlJywgdmFsdWU6ICd3b3JrZmxvd19zZXJ2aWNlJ31dKSxcclxuICAgICAgICAgICAgLy8gICAvLyBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdzZXJ2aWNlJywgJHRpdGxlOiAnU2VydmljZScsIHZhbHVlOiAnbG9jYWwnfSwgW3tvcHRpb246ICdMb2NhbCcsIHZhbHVlOiAnbG9jYWwnfSwge29wdGlvbjogJ1FBJywgdmFsdWU6ICdxYSd9LHtvcHRpb246ICdVQVQnLCB2YWx1ZTogJ3VhdCd9LHtvcHRpb246ICdQcm9kdWN0aW9uJywgdmFsdWU6ICdwcm9kJ31dKSwgICBcclxuICAgICAgICAgICAgLy8gICAvLyBuZXcgRnhTZWxlY3RTZXR0aW5nKHtrZXk6ICdpc1JlcXVpcmVkJywgJHRpdGxlOiAnUmVxdWlyZWQnLCB2YWx1ZTogdHJ1ZX0sIFt7b3B0aW9uOiAnWWVzJywgdmFsdWU6IHRydWV9LCB7b3B0aW9uOiAnTm8nLCB2YWx1ZTogZmFsc2V9XSksICAgIFxyXG4gICAgICAgICAgICAvLyAgICBuZXcgRnhTdHJpbmdTZXR0aW5nKHsga2V5OiAnZXJyb3JNZXNzYWdlJywgJHRpdGxlOiAnRXJyb3IgTWVzc2FnZScsIHZhbHVlOiAnUGxlYXNlIGZpbGwgb3V0IHRoZSBmaWVsZCcgfSksICBcclxuICAgICAgICAgIF07XHJcbiAgICAgICAgfVxyXG4gICAgICBcclxuICAgICAgICBwcm90ZWN0ZWQgdmFsaWRhdGlvbnMoKTogRnhWYWxpZGF0aW9uW10ge1xyXG4gICAgICAgICAgcmV0dXJuIFtdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgb25TZWxlY3Rpb25DaGFuZ2Uoc2VsZWN0aW9uOiBzdHJpbmcpIHtcclxuXHJcbiAgICB0aGlzLnNob3dUZXh0QXJlYSA9IHNlbGVjdGlvbiA9PT0gdGhpcy5jb21wYXJlVmFsdWU7XHJcbiAgICBpZih0aGlzLnNob3dUZXh0QXJlYSl7XHJcbmNvbnN0IHZhbHVlVG9TaG93VGV4dEFyZWEgPSB0aGlzLmNvbmZpcm1hdGlvbkZvcm0uZ2V0KCd2YWx1ZVRvU2hvd1RleHRBcmVhJyk7XHJcbiB2YWx1ZVRvU2hvd1RleHRBcmVhPy5zZXRWYWx1ZSh0aGlzLnNldHRpbmcoJ3ZhbHVlLXNob3ctdGV4dCcpKTtcclxuY29uc3Qgb3RoZXJDb250cm9sID0gdGhpcy5jb25maXJtYXRpb25Gb3JtLmdldCgncmVtYXJrcycpO1xyXG50aGlzLmlzQ2hpbGRSZXF1aXJlZCA9IHRydWU7XHJcbm90aGVyQ29udHJvbD8uc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5yZXF1aXJlZF0pO1xyXG5vdGhlckNvbnRyb2w/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH1cclxuICAgIGVsc2V7XHJcbiAgICAgIGNvbnN0IG90aGVyQ29udHJvbCA9IHRoaXMuY29uZmlybWF0aW9uRm9ybS5nZXQoJ3JlbWFya3MnKTtcclxuICAgICAgdGhpcy5pc0NoaWxkUmVxdWlyZWQgPSBmYWxzZTtcclxuICAgICAgb3RoZXJDb250cm9sPy5yZXNldCgpO1xyXG4gICAgICBvdGhlckNvbnRyb2w/LmNsZWFyVmFsaWRhdG9ycygpO1xyXG4gICAgICBvdGhlckNvbnRyb2w/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG59XHJcbiIsIjxmeC1jb21wb25lbnQgW2Z4RGF0YV09XCJmeERhdGFcIiAjZnhDb21wb25lbnQ+XHJcbiAgPGRpdiAgW25nQ2xhc3NdPVwic2V0dGluZygnY3VzdG9tQ2xhc3NzJylcIj5cclxuPGZvcm0gW2Zvcm1Hcm91cF09XCJjb25maXJtYXRpb25Gb3JtXCIgY2xhc3M9XCJmbGV4IGdhcC00IHctZnVsbFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJmbGV4LTEgdy1mdWxsXCI+XHJcbiAgICA8IS0tIFRpdGxlIC0tPlxyXG4gIDxsYWJlbCBjbGFzcz1cImZvbnQtc2VtaWJvbGQgdGV4dC1ncmF5LTgwMFwiPlxyXG4gICAge3sgc2V0dGluZygnc2VsZWN0LWxhYmVsJykgfX0gPHNwYW4gY2xhc3M9XCJmaWVsZC1yZXF1aXJlZFwiICpuZ0lmPVwiaXNSZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgPC9sYWJlbD5cclxuXHJcbiAgPCEtLSBUV08gQ09MVU1OIExBWU9VVCAtLT5cclxuICBcclxuXHJcbiAgICA8IS0tIExFRlQgQ09MVU1OIChSQURJTyBHUk9VUCkgLS0+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleC0xXCI+XHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtMyBteS0yXCI+IFxyXG4gICAgICAgIDwhLS0gc3RhY2sgdmVydGljYWxseSBzbyBoZWlnaHQgaXMgY29ycmVjdCAtLT5cclxuICAgICAgICA8bGFiZWxcclxuICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHQgb2Ygb3B0aW9uc1wiXHJcbiAgICAgICAgICBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0yIGN1cnNvci1wb2ludGVyIHRleHQtZ3JheS03MDBcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICB0eXBlPVwicmFkaW9cIlxyXG4gICAgICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJjb25maXJtYXRpb25cIlxyXG4gICAgICAgICAgICBbdmFsdWVdPVwib3B0LnZhbHVlXCJcclxuICAgICAgICAgICAgKGNoYW5nZSk9XCJvblNlbGVjdGlvbkNoYW5nZShvcHQudmFsdWUpXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJ3LTQgaC00IGFjY2VudC1ibHVlLTYwMCBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgICAgPHNwYW4+e3sgb3B0Lm9wdGlvbiB9fTwvc3Bhbj5cclxuICAgICAgICA8L2xhYmVsPlxyXG4gICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwhLS0gUmFkaW8gZXJyb3IgLS0+XHJcbiAgICAgIDxzbWFsbFxyXG4gICAgICAgICpuZ0lmPVwiXHJcbiAgICAgICAgICBjb25maXJtYXRpb25Gb3JtLmdldCgnY29uZmlybWF0aW9uJyk/LnRvdWNoZWQgJiZcclxuICAgICAgICAgIGNvbmZpcm1hdGlvbkZvcm0uZ2V0KCdjb25maXJtYXRpb24nKT8uZXJyb3JzPy5bJ3JlcXVpcmVkJ11cclxuICAgICAgICBcIlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1yZWQtNTAwIG10LTFcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgc2V0dGluZygnZXJyb3ItbXNnJykgfX1cclxuICAgICAgPC9zbWFsbD5cclxuXHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9kaXY+XHJcbiAgXHJcbiAgICA8IS0tIFJJR0hUIENPTFVNTiAoVEVYVEFSRUEpIC0tPlxyXG4gICAgPGRpdiAqbmdJZj1cInNob3dUZXh0QXJlYVwiIGNsYXNzPVwiZmxleC0xXCI+XHJcblxyXG4gICAgICA8bGFiZWwgY2xhc3M9XCJpbnB1dC1sYWJlbCBmb250LW1lZGl1bSB0ZXh0LWdyYXktNzAwXCI+XHJcbiAgICAgICAge3sgc2V0dGluZygnYWRkaXRpb25hbC1maWVsZC1sYWJlbCcpIH19IDxzcGFuIGNsYXNzPVwiZmllbGQtcmVxdWlyZWRcIiAqbmdJZj1cImlzQ2hpbGRSZXF1aXJlZFwiPio8L3NwYW4+XHJcbiAgICAgIDwvbGFiZWw+XHJcblxyXG4gICAgICA8dGV4dGFyZWFcclxuICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJyZW1hcmtzXCJcclxuICAgICAgICByb3dzPVwiM1wiXHJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyBzZXR0aW5nKCdyZW1hcmstcGxhY2Vob2xkZXInKSB9fVwiXHJcbiAgICAgICAgY2xhc3M9XCJib3JkZXIgYm9yZGVyLWdyYXktMzAwIHJvdW5kZWQtbGcgcC0zIHctZnVsbCByZXNpemUtbm9uZSBzaGFkb3ctc21cclxuICAgICAgICAgICAgICAgZm9jdXM6b3V0bGluZS1ub25lIGZvY3VzOnJpbmctMiBmb2N1czpyaW5nLWJsdWUtNTAwXCJcclxuICAgICAgPjwvdGV4dGFyZWE+XHJcblxyXG4gICAgICA8IS0tIFRleHRhcmVhIGVycm9yIC0tPlxyXG4gICAgICA8c21hbGxcclxuICAgICAgICAqbmdJZj1cIlxyXG4gICAgICAgICAgY29uZmlybWF0aW9uRm9ybS5nZXQoJ3JlbWFya3MnKT8udG91Y2hlZCAmJlxyXG4gICAgICAgICAgY29uZmlybWF0aW9uRm9ybS5nZXQoJ3JlbWFya3MnKT8uZXJyb3JzPy5bJ3JlcXVpcmVkJ11cclxuICAgICAgICBcIlxyXG4gICAgICAgIGNsYXNzPVwidGV4dC1yZWQtNTAwIG10LTFcIlxyXG4gICAgICA+XHJcbiAgICAgICAge3sgc2V0dGluZygnYWRkaXRpb25hbC1maWVsZC1lcnJvci1tc2cnKSB9fVxyXG4gICAgICA8L3NtYWxsPlxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuXHJcblxyXG48L2Zvcm0+XHJcbjwvZGl2PlxyXG5cclxuXHJcbjwvZngtY29tcG9uZW50PlxyXG4iXX0=
|
|
@@ -2262,11 +2262,11 @@ class DatePickerComponent extends FxBaseComponent {
|
|
|
2262
2262
|
return [FxValidatorService.required];
|
|
2263
2263
|
}
|
|
2264
2264
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatePickerComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.HttpClient }, { token: FxBuilderWrapperService }], target: i0.ɵɵFactoryTarget.Component });
|
|
2265
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DatePickerComponent, isStandalone: true, selector: "lib-date-picker", viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: CalendarModule }] });
|
|
2265
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DatePickerComponent, isStandalone: true, selector: "lib-date-picker", viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\" class=\"input-label\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: CalendarModule }] });
|
|
2266
2266
|
}
|
|
2267
2267
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DatePickerComponent, decorators: [{
|
|
2268
2268
|
type: Component,
|
|
2269
|
-
args: [{ selector: 'lib-date-picker', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"] }]
|
|
2269
|
+
args: [{ selector: 'lib-date-picker', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div class=\"custom-date-picker relative\">\r\n <form [formGroup]=\"datePickerForm\">\r\n <!-- <p-calendar formControlName=\"date\" [showIcon]=\"true\" [minDate]=\"minDate\" [maxDate]=\"maxDate\"\r\n [iconDisplay]=\"'input'\" [showOnFocus]=\"false\" dateFormat=\"dd/mm/yy\" [showButtonBar]=\"true\"\r\n placeholder=\"{{ setting('placeHolder') }}\">\r\n <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template>\r\n </p-calendar> -->\r\n <!-- <p-calendar formControlName=\"date\"\r\n dateFormat=\"dd/mm/yy\"\r\n placeholder=\"{{ setting('placeHolder') }}\"> -->\r\n <label for=\"date\" class=\"input-label\">{{ setting('label') }}<span class=\"field-required\">*</span></label>\r\n <div class=\"relative\">\r\n <input type=\"date\" id=\"date\" name=\"date\" formControlName=\"date\" [min]=\"minDate\" [max]=\"maxDate\">\r\n </div>\r\n <!-- <label for=\"date\" class=\"placeholder\">Select Date</label> -->\r\n <!-- <ng-template pTemplate=\"inputicon\">\r\n <span class=\"absolute right-0 pt-2 pr-2\">\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n class=\"cursor-pointer\">\r\n <path\r\n d=\"M19.5624 2.25991H18.1956V3.13582C18.1956 3.61948 17.7982 4.01173 17.3078 4.01173C16.8177 4.01173 16.4202 3.61948 16.4202 3.13582V2.25991H7.58001V3.13582C7.58001 3.61948 7.18253 4.01173 6.69244 4.01173C6.20209 4.01173 5.80486 3.61948 5.80486 3.13582V2.25991H4.43787C3.26107 2.2604 2.13252 2.72182 1.30042 3.54299C0.468323 4.36441 0.000507185 5.47813 0 6.63946V19.6204C0.000495266 20.7818 0.468304 21.8955 1.30042 22.7167C2.13252 23.5381 3.26107 23.9995 4.43787 24H19.5621C20.7389 23.9995 21.8675 23.5381 22.6996 22.7167C23.5317 21.8955 23.9995 20.7818 24 19.6204V6.63946C23.9995 5.47813 23.5317 4.36441 22.6996 3.54299C21.8675 2.72183 20.7389 2.26041 19.5621 2.25991H19.5624ZM19.5624 22.2482H4.43818C3.73262 22.246 3.05655 21.9686 2.55779 21.4761C2.05878 20.9839 1.77768 20.3167 1.77546 19.6204V9.05698H22.2252V19.6204C22.2229 20.3167 21.9419 20.9839 21.4428 21.4761C20.9441 21.9686 20.268 22.246 19.5624 22.2482ZM7.58001 2.25991H5.80486L5.80505 0.87591C5.80505 0.392251 6.20227 0 6.69262 0C7.18272 0 7.58019 0.392251 7.58019 0.87591L7.58001 2.25991ZM18.1956 2.25991H16.4202L16.4202 0.87591C16.4202 0.392251 16.8177 0 17.3078 0C17.7981 0 18.1953 0.392251 18.1953 0.87591L18.1956 2.25991Z\"\r\n fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"5.33203\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"10.3711\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"11.5547\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n <rect x=\"15.4062\" y=\"16.5898\" width=\"2.96296\" height=\"2.96296\" rx=\"0.444444\" fill=\"#F3A041\" />\r\n </svg>\r\n </span>\r\n </ng-template> -->\r\n <!-- </p-calendar> -->\r\n <div>\r\n <small *ngIf=\"datePickerForm.get('date')?.touched && datePickerForm.get('date')?.errors?.['required']\"\r\n class=\"text-red-500\">\r\n {{ setting('datePickerErrorMessage') }}\r\n </small>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n</fx-component>", styles: [".cursor-pointer{cursor:pointer!important}input[type=date]{border-color:#ccc;width:100%;height:38px!important;padding:.5rem .75rem!important;border-radius:4px!important}input[type=date]::placeholder{color:#aaa}input[type=date]:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}input[type=date]::-webkit-calendar-picker-indicator{background:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23f59e0b' viewBox='0 0 24 24'%3E%3Cpath d='M19 4h-1V2h-2v2H8V2H6v2H5c-1.11 0-2 .89-2 2v14c0 1.11.89 2 2 2h14c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 16H5V9h14v11z'/%3E%3C/svg%3E\") no-repeat center;background-size:20px 20px;cursor:pointer;opacity:.8}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]:not(:focus):invalid+.placeholder{color:gray;position:absolute;left:10px;top:8px;pointer-events:none}.field-required{color:red;font-size:1.1em}\n"] }]
|
|
2270
2270
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$1.HttpClient }, { type: FxBuilderWrapperService }], propDecorators: { fxComponent: [{
|
|
2271
2271
|
type: ViewChild,
|
|
2272
2272
|
args: ['fxComponent']
|
|
@@ -2546,11 +2546,11 @@ class RadioGroupComponent extends FxBaseComponent {
|
|
|
2546
2546
|
}
|
|
2547
2547
|
}
|
|
2548
2548
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.HttpClient }, { token: FxBuilderWrapperService }, { token: i3$2.ApiServiceRegistry }], target: i0.ɵɵFactoryTarget.Component });
|
|
2549
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RadioGroupComponent, isStandalone: true, selector: "radio-group-custom", inputs: { showOnSelection: "showOnSelection" }, viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"
|
|
2549
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: RadioGroupComponent, isStandalone: true, selector: "radio-group-custom", inputs: { showOnSelection: "showOnSelection" }, viewQueries: [{ propertyName: "fxComponent", first: true, predicate: ["fxComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"input-label font-medium text-gray-700\">\r\n {{ setting('additional-field-label') }} <span class=\"field-required\" *ngIf=\"isChildRequired\">*</span>\r\n </label>\r\n\r\n <textarea\r\n formControlName=\"remarks\"\r\n rows=\"3\"\r\n placeholder=\"{{ setting('remark-placeholder') }}\"\r\n class=\"border border-gray-300 rounded-lg p-3 w-full resize-none shadow-sm\r\n focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n ></textarea>\r\n\r\n <!-- Textarea error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('remarks')?.touched &&\r\n confirmationForm.get('remarks')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('additional-field-error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n\r\n\r\n</form>\r\n</div>\r\n\r\n\r\n</fx-component>\r\n", styles: [".custom-gap{gap:1rem}.field-required{color:red;font-size:1.1em}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i5.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: CalendarModule }, { kind: "ngmodule", type: RadioButtonModule }] });
|
|
2550
2550
|
}
|
|
2551
2551
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioGroupComponent, decorators: [{
|
|
2552
2552
|
type: Component,
|
|
2553
|
-
args: [{ selector: 'radio-group-custom', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule, RadioButtonModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"
|
|
2553
|
+
args: [{ selector: 'radio-group-custom', standalone: true, imports: [CommonModule, ReactiveFormsModule, FormsModule, FxComponent, CalendarModule, RadioButtonModule], template: "<fx-component [fxData]=\"fxData\" #fxComponent>\r\n <div [ngClass]=\"setting('customClasss')\">\r\n<form [formGroup]=\"confirmationForm\" class=\"flex gap-4 w-full\">\r\n <div class=\"flex-1 w-full\">\r\n <!-- Title -->\r\n <label class=\"font-semibold text-gray-800\">\r\n {{ setting('select-label') }} <span class=\"field-required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n\r\n <!-- TWO COLUMN LAYOUT -->\r\n \r\n\r\n <!-- LEFT COLUMN (RADIO GROUP) -->\r\n <div class=\"flex-1\">\r\n\r\n <div class=\"flex gap-3 my-2\"> \r\n <!-- stack vertically so height is correct -->\r\n <label\r\n *ngFor=\"let opt of options\"\r\n class=\"flex items-center gap-2 cursor-pointer text-gray-700\"\r\n >\r\n <input\r\n type=\"radio\"\r\n formControlName=\"confirmation\"\r\n [value]=\"opt.value\"\r\n (change)=\"onSelectionChange(opt.value)\"\r\n class=\"w-4 h-4 accent-blue-600 cursor-pointer\"\r\n />\r\n <span>{{ opt.option }}</span>\r\n </label>\r\n </div>\r\n\r\n <!-- Radio error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('confirmation')?.touched &&\r\n confirmationForm.get('confirmation')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n <!-- RIGHT COLUMN (TEXTAREA) -->\r\n <div *ngIf=\"showTextArea\" class=\"flex-1\">\r\n\r\n <label class=\"input-label font-medium text-gray-700\">\r\n {{ setting('additional-field-label') }} <span class=\"field-required\" *ngIf=\"isChildRequired\">*</span>\r\n </label>\r\n\r\n <textarea\r\n formControlName=\"remarks\"\r\n rows=\"3\"\r\n placeholder=\"{{ setting('remark-placeholder') }}\"\r\n class=\"border border-gray-300 rounded-lg p-3 w-full resize-none shadow-sm\r\n focus:outline-none focus:ring-2 focus:ring-blue-500\"\r\n ></textarea>\r\n\r\n <!-- Textarea error -->\r\n <small\r\n *ngIf=\"\r\n confirmationForm.get('remarks')?.touched &&\r\n confirmationForm.get('remarks')?.errors?.['required']\r\n \"\r\n class=\"text-red-500 mt-1\"\r\n >\r\n {{ setting('additional-field-error-msg') }}\r\n </small>\r\n\r\n </div>\r\n\r\n\r\n\r\n</form>\r\n</div>\r\n\r\n\r\n</fx-component>\r\n", styles: [".custom-gap{gap:1rem}.field-required{color:red;font-size:1.1em}\n"] }]
|
|
2554
2554
|
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1$1.HttpClient }, { type: FxBuilderWrapperService }, { type: i3$2.ApiServiceRegistry }], propDecorators: { showOnSelection: [{
|
|
2555
2555
|
type: Input
|
|
2556
2556
|
}], fxComponent: [{
|