@netgrif/components 7.0.0-rc.6 → 7.0.0-rc.8

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.
@@ -10,18 +10,21 @@ import * as i6 from "@angular/material/icon";
10
10
  import * as i7 from "@angular/material/input";
11
11
  import * as i8 from "@angular/material/form-field";
12
12
  import * as i9 from "@angular/material/progress-spinner";
13
- import * as i10 from "@ngx-translate/core";
13
+ import * as i10 from "./login-sso/login-sso.component";
14
+ import * as i11 from "@ngx-translate/core";
14
15
  export class LoginFormComponent extends AbstractLoginFormComponent {
15
16
  _userService;
16
- constructor(formBuilder, _userService) {
17
- super(formBuilder, _userService);
17
+ _config;
18
+ constructor(formBuilder, _userService, _config) {
19
+ super(formBuilder, _userService, _config);
18
20
  this._userService = _userService;
21
+ this._config = _config;
19
22
  }
20
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.UserService }], target: i0.ɵɵFactoryTarget.Component });
21
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LoginFormComponent, selector: "nc-login-form", usesInheritance: true, ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"start center\" fxLayoutGap=\"8px\">\n <form [formGroup]=\"rootFormGroup\" (ngSubmit)=\"onSubmit()\" class=\"full-width netgrif-input netgrif-input-fix\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">account_circle</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.login' | translate}}</mat-label>\n <input matInput formControlName=\"login\" minlength=\"4\"\n required autocomplete=\"username\">\n <mat-error *ngIf=\"rootFormGroup.controls['login'].hasError('minlength')\">\n {{ 'forms.login.length' | translate}}\n </mat-error>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"padding-top\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">vpn_key</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.enterPass' | translate}}</mat-label>\n <input matInput\n [type]=\"hidePassword ? 'password' : 'text'\"\n formControlName=\"password\" required autocomplete=\"current-password\">\n <button mat-icon-button matSuffix type=\"button\"\n (click)=\"hidePassword = !hidePassword\"\n (keypress)=\"false\"\n [attr.aria-label]=\"'Hide password'\"\n [attr.aria-pressed]=\"hidePassword\">\n <mat-icon\n [color]=\"hidePassword ? undefined : 'accent'\">{{hidePassword ? 'visibility_off' : 'visibility'}}</mat-icon>\n </button>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" [fxLayoutAlign]=\"getButtonsFxLayoutAlign()\" fxLayoutAlign.xs=\"center\" class=\"margin-top-4\">\n <button mat-stroked-button type=\"button\" *ngIf=\"showForgottenPasswordButton && !showSignUpButton\" (click)=\"resetEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.reset' | translate}}</button>\n <button mat-stroked-button type=\"button\" *ngIf=\"showSignUpButton\" (click)=\"signUpEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.sign' | translate}}</button>\n <button color=\"primary\" type=\"submit\" mat-raised-button fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-spinner *ngIf=\"loading | async\"\n mode=\"indeterminate\"\n diameter=\"36\"\n color=\"accent\"\n fxFlex></mat-spinner>\n <span *ngIf=\"(loading | async) === false\" fxFlex>{{ 'forms.login.loginButton' | translate}}</span>\n </button>\n </div>\n </form>\n\n <div *ngIf=\"showSignUpButton && showForgottenPasswordButton\" fxLayout=\"row\" class=\"width-100\" fxLayoutAlign=\"end\">\n <button mat-button *ngIf=\"showForgottenPasswordButton\" (click)=\"resetEmit()\" color=\"primary\">{{ 'forms.login.reset' | translate}}</button>\n </div>\n</div>\n", styles: [".forgotten-password{margin-bottom:10px}.login-form-container a{color:#757575}.login-form-container a:hover{color:#000000de;cursor:pointer}.margin-top-2x{margin-top:16px}.margin-right-default{margin-right:8px}.position-relative{position:relative!important}.width-100{width:100%}.margin-top-4{margin-top:4px}.full-width{width:100%}.margin-left-40{margin-left:40px}.padding-top{padding-top:8px}.padding-bottom-22px{padding-bottom:22px;padding-right:16px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i9.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }] });
23
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponent, deps: [{ token: i1.FormBuilder }, { token: i2.UserService }, { token: i2.ConfigurationService }], target: i0.ɵɵFactoryTarget.Component });
24
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LoginFormComponent, selector: "nc-login-form", usesInheritance: true, ngImport: i0, template: "<div fxLayout=\"column\" fxLayoutAlign=\"start center\" fxLayoutGap=\"8px\">\n <form [formGroup]=\"rootFormGroup\" (ngSubmit)=\"onSubmit()\" class=\"full-width netgrif-input netgrif-input-fix\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">account_circle</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.login' | translate}}</mat-label>\n <input matInput formControlName=\"login\" minlength=\"4\"\n required autocomplete=\"username\">\n <mat-error *ngIf=\"rootFormGroup.controls['login'].hasError('minlength')\">\n {{ 'forms.login.length' | translate}}\n </mat-error>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"padding-top\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">vpn_key</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.enterPass' | translate}}</mat-label>\n <input matInput\n [type]=\"hidePassword ? 'password' : 'text'\"\n formControlName=\"password\" required autocomplete=\"current-password\">\n <button mat-icon-button matSuffix type=\"button\"\n (click)=\"hidePassword = !hidePassword\"\n (keypress)=\"false\"\n [attr.aria-label]=\"'Hide password'\"\n [attr.aria-pressed]=\"hidePassword\">\n <mat-icon\n [color]=\"hidePassword ? undefined : 'accent'\">{{hidePassword ? 'visibility_off' : 'visibility'}}</mat-icon>\n </button>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" [fxLayoutAlign]=\"getButtonsFxLayoutAlign()\" fxLayoutAlign.xs=\"center\" class=\"margin-top-4\">\n <button mat-stroked-button type=\"button\" *ngIf=\"showForgottenPasswordButton && !showSignUpButton\" (click)=\"resetEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.reset' | translate}}</button>\n <button mat-stroked-button type=\"button\" *ngIf=\"showSignUpButton\" (click)=\"signUpEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.sign' | translate}}</button>\n <button color=\"primary\" type=\"submit\" mat-raised-button fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-spinner *ngIf=\"loading | async\"\n mode=\"indeterminate\"\n diameter=\"36\"\n color=\"accent\"\n fxFlex></mat-spinner>\n <span *ngIf=\"(loading | async) === false\" fxFlex>{{ 'forms.login.loginButton' | translate}}</span>\n </button>\n </div>\n </form>\n\n <div fxLayout=\"row\" [fxLayoutAlign]=\"getButtonsFxLayoutAlign()\" fxLayoutAlign.xs=\"center\" class=\"margin-top-4\">\n <nc-login-sso *ngIf=\"showSsoButton\"></nc-login-sso>\n </div>\n\n <div *ngIf=\"showSignUpButton && showForgottenPasswordButton\" fxLayout=\"row\" class=\"width-100\" fxLayoutAlign=\"end\">\n <button mat-button *ngIf=\"showForgottenPasswordButton\" (click)=\"resetEmit()\" color=\"primary\">{{ 'forms.login.reset' | translate}}</button>\n </div>\n</div>\n", styles: [".forgotten-password{margin-bottom:10px}.login-form-container a{color:#757575}.login-form-container a:hover{color:#000000de;cursor:pointer}.margin-top-2x{margin-top:16px}.margin-right-default{margin-right:8px}.position-relative{position:relative!important}.width-100{width:100%}.margin-top-4{margin-top:4px}.full-width{width:100%}.margin-left-40{margin-left:40px}.padding-top{padding-top:8px}.padding-bottom-22px{padding-bottom:22px;padding-right:16px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutGapDirective, selector: " [fxLayoutGap], [fxLayoutGap.xs], [fxLayoutGap.sm], [fxLayoutGap.md], [fxLayoutGap.lg], [fxLayoutGap.xl], [fxLayoutGap.lt-sm], [fxLayoutGap.lt-md], [fxLayoutGap.lt-lg], [fxLayoutGap.lt-xl], [fxLayoutGap.gt-xs], [fxLayoutGap.gt-sm], [fxLayoutGap.gt-md], [fxLayoutGap.gt-lg]", inputs: ["fxLayoutGap", "fxLayoutGap.xs", "fxLayoutGap.sm", "fxLayoutGap.md", "fxLayoutGap.lg", "fxLayoutGap.xl", "fxLayoutGap.lt-sm", "fxLayoutGap.lt-md", "fxLayoutGap.lt-lg", "fxLayoutGap.lt-xl", "fxLayoutGap.gt-xs", "fxLayoutGap.gt-sm", "fxLayoutGap.gt-md", "fxLayoutGap.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i7.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i8.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i8.MatLabel, selector: "mat-label" }, { kind: "directive", type: i8.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i8.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "component", type: i9.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.MinLengthValidator, selector: "[minlength][formControlName],[minlength][formControl],[minlength][ngModel]", inputs: ["minlength"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i10.LoginSsoComponent, selector: "nc-login-sso" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }] });
22
25
  }
23
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponent, decorators: [{
24
27
  type: Component,
25
- args: [{ selector: 'nc-login-form', template: "<div fxLayout=\"column\" fxLayoutAlign=\"start center\" fxLayoutGap=\"8px\">\n <form [formGroup]=\"rootFormGroup\" (ngSubmit)=\"onSubmit()\" class=\"full-width netgrif-input netgrif-input-fix\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">account_circle</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.login' | translate}}</mat-label>\n <input matInput formControlName=\"login\" minlength=\"4\"\n required autocomplete=\"username\">\n <mat-error *ngIf=\"rootFormGroup.controls['login'].hasError('minlength')\">\n {{ 'forms.login.length' | translate}}\n </mat-error>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"padding-top\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">vpn_key</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.enterPass' | translate}}</mat-label>\n <input matInput\n [type]=\"hidePassword ? 'password' : 'text'\"\n formControlName=\"password\" required autocomplete=\"current-password\">\n <button mat-icon-button matSuffix type=\"button\"\n (click)=\"hidePassword = !hidePassword\"\n (keypress)=\"false\"\n [attr.aria-label]=\"'Hide password'\"\n [attr.aria-pressed]=\"hidePassword\">\n <mat-icon\n [color]=\"hidePassword ? undefined : 'accent'\">{{hidePassword ? 'visibility_off' : 'visibility'}}</mat-icon>\n </button>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" [fxLayoutAlign]=\"getButtonsFxLayoutAlign()\" fxLayoutAlign.xs=\"center\" class=\"margin-top-4\">\n <button mat-stroked-button type=\"button\" *ngIf=\"showForgottenPasswordButton && !showSignUpButton\" (click)=\"resetEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.reset' | translate}}</button>\n <button mat-stroked-button type=\"button\" *ngIf=\"showSignUpButton\" (click)=\"signUpEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.sign' | translate}}</button>\n <button color=\"primary\" type=\"submit\" mat-raised-button fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-spinner *ngIf=\"loading | async\"\n mode=\"indeterminate\"\n diameter=\"36\"\n color=\"accent\"\n fxFlex></mat-spinner>\n <span *ngIf=\"(loading | async) === false\" fxFlex>{{ 'forms.login.loginButton' | translate}}</span>\n </button>\n </div>\n </form>\n\n <div *ngIf=\"showSignUpButton && showForgottenPasswordButton\" fxLayout=\"row\" class=\"width-100\" fxLayoutAlign=\"end\">\n <button mat-button *ngIf=\"showForgottenPasswordButton\" (click)=\"resetEmit()\" color=\"primary\">{{ 'forms.login.reset' | translate}}</button>\n </div>\n</div>\n", styles: [".forgotten-password{margin-bottom:10px}.login-form-container a{color:#757575}.login-form-container a:hover{color:#000000de;cursor:pointer}.margin-top-2x{margin-top:16px}.margin-right-default{margin-right:8px}.position-relative{position:relative!important}.width-100{width:100%}.margin-top-4{margin-top:4px}.full-width{width:100%}.margin-left-40{margin-left:40px}.padding-top{padding-top:8px}.padding-bottom-22px{padding-bottom:22px;padding-right:16px}\n"] }]
26
- }], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.UserService }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy9sb2dpbi9sb2dpbi1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL2Zvcm1zL2xvZ2luL2xvZ2luLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4QyxPQUFPLEVBQUMsMEJBQTBCLEVBQWMsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7Ozs7O0FBT2pGLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSwwQkFBMEI7SUFDZDtJQUFoRCxZQUFZLFdBQXdCLEVBQVksWUFBeUI7UUFDckUsS0FBSyxDQUFDLFdBQVcsRUFBRSxZQUFZLENBQUMsQ0FBQztRQURXLGlCQUFZLEdBQVosWUFBWSxDQUFhO0lBRXpFLENBQUM7d0dBSFEsa0JBQWtCOzRGQUFsQixrQkFBa0IsNEVDVC9CLGl4R0FnREE7OzRGRHZDYSxrQkFBa0I7a0JBTDlCLFNBQVM7K0JBQ0ksZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUJ1aWxkZXJ9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7QWJzdHJhY3RMb2dpbkZvcm1Db21wb25lbnQsIFVzZXJTZXJ2aWNlfSBmcm9tICdAbmV0Z3JpZi9jb21wb25lbnRzLWNvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jLWxvZ2luLWZvcm0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9sb2dpbi1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9sb2dpbi1mb3JtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTG9naW5Gb3JtQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RMb2dpbkZvcm1Db21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKGZvcm1CdWlsZGVyOiBGb3JtQnVpbGRlciwgcHJvdGVjdGVkIF91c2VyU2VydmljZTogVXNlclNlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoZm9ybUJ1aWxkZXIsIF91c2VyU2VydmljZSk7XG4gICAgfVxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIiBmeExheW91dEdhcD1cIjhweFwiPlxuICAgIDxmb3JtIFtmb3JtR3JvdXBdPVwicm9vdEZvcm1Hcm91cFwiIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCIgY2xhc3M9XCJmdWxsLXdpZHRoIG5ldGdyaWYtaW5wdXQgbmV0Z3JpZi1pbnB1dC1maXhcIj5cbiAgICAgICAgPGRpdiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJwYWRkaW5nLWJvdHRvbS0yMnB4XCI+YWNjb3VudF9jaXJjbGU8L21hdC1pY29uPlxuICAgICAgICAgICAgPG1hdC1mb3JtLWZpZWxkIGZ4RmxleD1cIjEwMFwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbD57eyAnZm9ybXMubG9naW4ubG9naW4nIHwgdHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwibG9naW5cIiBtaW5sZW5ndGg9XCI0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQgYXV0b2NvbXBsZXRlPVwidXNlcm5hbWVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWVycm9yICpuZ0lmPVwicm9vdEZvcm1Hcm91cC5jb250cm9sc1snbG9naW4nXS5oYXNFcnJvcignbWlubGVuZ3RoJylcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgJ2Zvcm1zLmxvZ2luLmxlbmd0aCcgfCB0cmFuc2xhdGV9fVxuICAgICAgICAgICAgICAgIDwvbWF0LWVycm9yPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiIGNsYXNzPVwicGFkZGluZy10b3BcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBjb2xvcj1cInByaW1hcnlcIiBjbGFzcz1cInBhZGRpbmctYm90dG9tLTIycHhcIj52cG5fa2V5PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBmeEZsZXg9XCIxMDBcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+e3sgJ2Zvcm1zLmxvZ2luLmVudGVyUGFzcycgfCB0cmFuc2xhdGV9fTwvbWF0LWxhYmVsPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBtYXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICBbdHlwZV09XCJoaWRlUGFzc3dvcmQgPyAncGFzc3dvcmQnIDogJ3RleHQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiByZXF1aXJlZCBhdXRvY29tcGxldGU9XCJjdXJyZW50LXBhc3N3b3JkXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gbWF0U3VmZml4IHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImhpZGVQYXNzd29yZCA9ICFoaWRlUGFzc3dvcmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleXByZXNzKT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0hpZGUgcGFzc3dvcmQnXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtcHJlc3NlZF09XCJoaWRlUGFzc3dvcmRcIj5cbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiaGlkZVBhc3N3b3JkID8gdW5kZWZpbmVkIDogJ2FjY2VudCdcIj57e2hpZGVQYXNzd29yZCA/ICd2aXNpYmlsaXR5X29mZicgOiAndmlzaWJpbGl0eSd9fTwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBmeExheW91dD1cInJvd1wiIFtmeExheW91dEFsaWduXT1cImdldEJ1dHRvbnNGeExheW91dEFsaWduKClcIiBmeExheW91dEFsaWduLnhzPVwiY2VudGVyXCIgY2xhc3M9XCJtYXJnaW4tdG9wLTRcIj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIHR5cGU9XCJidXR0b25cIiAqbmdJZj1cInNob3dGb3Jnb3R0ZW5QYXNzd29yZEJ1dHRvbiAmJiAhc2hvd1NpZ25VcEJ1dHRvblwiIChjbGljayk9XCJyZXNldEVtaXQoKVwiIGNvbG9yPVwicHJpbWFyeVwiIGNsYXNzPVwibWFyZ2luLWxlZnQtNDBcIj57eyAnZm9ybXMubG9naW4ucmVzZXQnIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cbiAgICAgICAgICAgIDxidXR0b24gbWF0LXN0cm9rZWQtYnV0dG9uIHR5cGU9XCJidXR0b25cIiAqbmdJZj1cInNob3dTaWduVXBCdXR0b25cIiAoY2xpY2spPVwic2lnblVwRW1pdCgpXCIgY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJtYXJnaW4tbGVmdC00MFwiPnt7ICdmb3Jtcy5sb2dpbi5zaWduJyB8IHRyYW5zbGF0ZX19PC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIHR5cGU9XCJzdWJtaXRcIiBtYXQtcmFpc2VkLWJ1dHRvbiBmeExheW91dD1cInJvd1wiIGZ4TGF5b3V0QWxpZ249XCJjZW50ZXIgY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1zcGlubmVyICpuZ0lmPVwibG9hZGluZyB8IGFzeW5jXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kZT1cImluZGV0ZXJtaW5hdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWFtZXRlcj1cIjM2XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I9XCJhY2NlbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmeEZsZXg+PC9tYXQtc3Bpbm5lcj5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIihsb2FkaW5nIHwgYXN5bmMpID09PSBmYWxzZVwiIGZ4RmxleD57eyAnZm9ybXMubG9naW4ubG9naW5CdXR0b24nIHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9mb3JtPlxuXG4gICAgPGRpdiAqbmdJZj1cInNob3dTaWduVXBCdXR0b24gJiYgc2hvd0ZvcmdvdHRlblBhc3N3b3JkQnV0dG9uXCIgZnhMYXlvdXQ9XCJyb3dcIiBjbGFzcz1cIndpZHRoLTEwMFwiIGZ4TGF5b3V0QWxpZ249XCJlbmRcIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uICpuZ0lmPVwic2hvd0ZvcmdvdHRlblBhc3N3b3JkQnV0dG9uXCIgKGNsaWNrKT1cInJlc2V0RW1pdCgpXCIgY29sb3I9XCJwcmltYXJ5XCI+e3sgJ2Zvcm1zLmxvZ2luLnJlc2V0JyB8IHRyYW5zbGF0ZX19PC9idXR0b24+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
28
+ args: [{ selector: 'nc-login-form', template: "<div fxLayout=\"column\" fxLayoutAlign=\"start center\" fxLayoutGap=\"8px\">\n <form [formGroup]=\"rootFormGroup\" (ngSubmit)=\"onSubmit()\" class=\"full-width netgrif-input netgrif-input-fix\">\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">account_circle</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.login' | translate}}</mat-label>\n <input matInput formControlName=\"login\" minlength=\"4\"\n required autocomplete=\"username\">\n <mat-error *ngIf=\"rootFormGroup.controls['login'].hasError('minlength')\">\n {{ 'forms.login.length' | translate}}\n </mat-error>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" fxLayoutAlign=\"center center\" class=\"padding-top\">\n <mat-icon color=\"primary\" class=\"padding-bottom-22px\">vpn_key</mat-icon>\n <mat-form-field fxFlex=\"100\" appearance=\"outline\">\n <mat-label>{{ 'forms.login.enterPass' | translate}}</mat-label>\n <input matInput\n [type]=\"hidePassword ? 'password' : 'text'\"\n formControlName=\"password\" required autocomplete=\"current-password\">\n <button mat-icon-button matSuffix type=\"button\"\n (click)=\"hidePassword = !hidePassword\"\n (keypress)=\"false\"\n [attr.aria-label]=\"'Hide password'\"\n [attr.aria-pressed]=\"hidePassword\">\n <mat-icon\n [color]=\"hidePassword ? undefined : 'accent'\">{{hidePassword ? 'visibility_off' : 'visibility'}}</mat-icon>\n </button>\n </mat-form-field>\n </div>\n <div fxLayout=\"row\" [fxLayoutAlign]=\"getButtonsFxLayoutAlign()\" fxLayoutAlign.xs=\"center\" class=\"margin-top-4\">\n <button mat-stroked-button type=\"button\" *ngIf=\"showForgottenPasswordButton && !showSignUpButton\" (click)=\"resetEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.reset' | translate}}</button>\n <button mat-stroked-button type=\"button\" *ngIf=\"showSignUpButton\" (click)=\"signUpEmit()\" color=\"primary\" class=\"margin-left-40\">{{ 'forms.login.sign' | translate}}</button>\n <button color=\"primary\" type=\"submit\" mat-raised-button fxLayout=\"row\" fxLayoutAlign=\"center center\">\n <mat-spinner *ngIf=\"loading | async\"\n mode=\"indeterminate\"\n diameter=\"36\"\n color=\"accent\"\n fxFlex></mat-spinner>\n <span *ngIf=\"(loading | async) === false\" fxFlex>{{ 'forms.login.loginButton' | translate}}</span>\n </button>\n </div>\n </form>\n\n <div fxLayout=\"row\" [fxLayoutAlign]=\"getButtonsFxLayoutAlign()\" fxLayoutAlign.xs=\"center\" class=\"margin-top-4\">\n <nc-login-sso *ngIf=\"showSsoButton\"></nc-login-sso>\n </div>\n\n <div *ngIf=\"showSignUpButton && showForgottenPasswordButton\" fxLayout=\"row\" class=\"width-100\" fxLayoutAlign=\"end\">\n <button mat-button *ngIf=\"showForgottenPasswordButton\" (click)=\"resetEmit()\" color=\"primary\">{{ 'forms.login.reset' | translate}}</button>\n </div>\n</div>\n", styles: [".forgotten-password{margin-bottom:10px}.login-form-container a{color:#757575}.login-form-container a:hover{color:#000000de;cursor:pointer}.margin-top-2x{margin-top:16px}.margin-right-default{margin-right:8px}.position-relative{position:relative!important}.width-100{width:100%}.margin-top-4{margin-top:4px}.full-width{width:100%}.margin-left-40{margin-left:40px}.padding-top{padding-top:8px}.padding-bottom-22px{padding-bottom:22px;padding-right:16px}\n"] }]
29
+ }], ctorParameters: () => [{ type: i1.FormBuilder }, { type: i2.UserService }, { type: i2.ConfigurationService }] });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy9sb2dpbi9sb2dpbi1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL2Zvcm1zL2xvZ2luL2xvZ2luLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV4QyxPQUFPLEVBQUMsMEJBQTBCLEVBQW9DLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPdkcsTUFBTSxPQUFPLGtCQUFtQixTQUFRLDBCQUEwQjtJQUNkO0lBQXFDO0lBQXJGLFlBQVksV0FBd0IsRUFBWSxZQUF5QixFQUFZLE9BQTZCO1FBQzlHLEtBQUssQ0FBQyxXQUFXLEVBQUUsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBREUsaUJBQVksR0FBWixZQUFZLENBQWE7UUFBWSxZQUFPLEdBQVAsT0FBTyxDQUFzQjtJQUVsSCxDQUFDO3dHQUhRLGtCQUFrQjs0RkFBbEIsa0JBQWtCLDRFQ1QvQiwyOUdBb0RBOzs0RkQzQ2Esa0JBQWtCO2tCQUw5QixTQUFTOytCQUNJLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Zvcm1CdWlsZGVyfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0Fic3RyYWN0TG9naW5Gb3JtQ29tcG9uZW50LCBDb25maWd1cmF0aW9uU2VydmljZSwgVXNlclNlcnZpY2V9IGZyb20gJ0BuZXRncmlmL2NvbXBvbmVudHMtY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmMtbG9naW4tZm9ybScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2xvZ2luLWZvcm0uY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkZvcm1Db21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExvZ2luRm9ybUNvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IoZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLCBwcm90ZWN0ZWQgX3VzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSwgcHJvdGVjdGVkIF9jb25maWc6IENvbmZpZ3VyYXRpb25TZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKGZvcm1CdWlsZGVyLCBfdXNlclNlcnZpY2UsIF9jb25maWcpO1xuICAgIH1cbn1cbiIsIjxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIiBmeExheW91dEFsaWduPVwic3RhcnQgY2VudGVyXCIgZnhMYXlvdXRHYXA9XCI4cHhcIj5cbiAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cInJvb3RGb3JtR3JvdXBcIiAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiIGNsYXNzPVwiZnVsbC13aWR0aCBuZXRncmlmLWlucHV0IG5ldGdyaWYtaW5wdXQtZml4XCI+XG4gICAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiPlxuICAgICAgICAgICAgPG1hdC1pY29uIGNvbG9yPVwicHJpbWFyeVwiIGNsYXNzPVwicGFkZGluZy1ib3R0b20tMjJweFwiPmFjY291bnRfY2lyY2xlPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxtYXQtZm9ybS1maWVsZCBmeEZsZXg9XCIxMDBcIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWw+e3sgJ2Zvcm1zLmxvZ2luLmxvZ2luJyB8IHRyYW5zbGF0ZX19PC9tYXQtbGFiZWw+XG4gICAgICAgICAgICAgICAgPGlucHV0IG1hdElucHV0IGZvcm1Db250cm9sTmFtZT1cImxvZ2luXCIgbWlubGVuZ3RoPVwiNFwiXG4gICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkIGF1dG9jb21wbGV0ZT1cInVzZXJuYW1lXCI+XG4gICAgICAgICAgICAgICAgPG1hdC1lcnJvciAqbmdJZj1cInJvb3RGb3JtR3JvdXAuY29udHJvbHNbJ2xvZ2luJ10uaGFzRXJyb3IoJ21pbmxlbmd0aCcpXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdmb3Jtcy5sb2dpbi5sZW5ndGgnIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICA8L21hdC1lcnJvcj5cbiAgICAgICAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIiBjbGFzcz1cInBhZGRpbmctdG9wXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJwYWRkaW5nLWJvdHRvbS0yMnB4XCI+dnBuX2tleTwvbWF0LWljb24+XG4gICAgICAgICAgICA8bWF0LWZvcm0tZmllbGQgZnhGbGV4PVwiMTAwXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsPnt7ICdmb3Jtcy5sb2dpbi5lbnRlclBhc3MnIHwgdHJhbnNsYXRlfX08L21hdC1sYWJlbD5cbiAgICAgICAgICAgICAgICA8aW5wdXQgbWF0SW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICAgW3R5cGVdPVwiaGlkZVBhc3N3b3JkID8gJ3Bhc3N3b3JkJyA6ICd0ZXh0J1wiXG4gICAgICAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCIgcmVxdWlyZWQgYXV0b2NvbXBsZXRlPVwiY3VycmVudC1wYXNzd29yZFwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIG1hdFN1ZmZpeCB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJoaWRlUGFzc3dvcmQgPSAhaGlkZVBhc3N3b3JkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChrZXlwcmVzcyk9XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidIaWRlIHBhc3N3b3JkJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLXByZXNzZWRdPVwiaGlkZVBhc3N3b3JkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbG9yXT1cImhpZGVQYXNzd29yZCA/IHVuZGVmaW5lZCA6ICdhY2NlbnQnXCI+e3toaWRlUGFzc3dvcmQgPyAndmlzaWJpbGl0eV9vZmYnIDogJ3Zpc2liaWxpdHknfX08L21hdC1pY29uPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBbZnhMYXlvdXRBbGlnbl09XCJnZXRCdXR0b25zRnhMYXlvdXRBbGlnbigpXCIgZnhMYXlvdXRBbGlnbi54cz1cImNlbnRlclwiIGNsYXNzPVwibWFyZ2luLXRvcC00XCI+XG4gICAgICAgICAgICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKm5nSWY9XCJzaG93Rm9yZ290dGVuUGFzc3dvcmRCdXR0b24gJiYgIXNob3dTaWduVXBCdXR0b25cIiAoY2xpY2spPVwicmVzZXRFbWl0KClcIiBjb2xvcj1cInByaW1hcnlcIiBjbGFzcz1cIm1hcmdpbi1sZWZ0LTQwXCI+e3sgJ2Zvcm1zLmxvZ2luLnJlc2V0JyB8IHRyYW5zbGF0ZX19PC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIG1hdC1zdHJva2VkLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKm5nSWY9XCJzaG93U2lnblVwQnV0dG9uXCIgKGNsaWNrKT1cInNpZ25VcEVtaXQoKVwiIGNvbG9yPVwicHJpbWFyeVwiIGNsYXNzPVwibWFyZ2luLWxlZnQtNDBcIj57eyAnZm9ybXMubG9naW4uc2lnbicgfCB0cmFuc2xhdGV9fTwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiBjb2xvcj1cInByaW1hcnlcIiB0eXBlPVwic3VibWl0XCIgbWF0LXJhaXNlZC1idXR0b24gZnhMYXlvdXQ9XCJyb3dcIiBmeExheW91dEFsaWduPVwiY2VudGVyIGNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxtYXQtc3Bpbm5lciAqbmdJZj1cImxvYWRpbmcgfCBhc3luY1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGU9XCJpbmRldGVybWluYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlhbWV0ZXI9XCIzNlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnhGbGV4PjwvbWF0LXNwaW5uZXI+XG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIobG9hZGluZyB8IGFzeW5jKSA9PT0gZmFsc2VcIiBmeEZsZXg+e3sgJ2Zvcm1zLmxvZ2luLmxvZ2luQnV0dG9uJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZm9ybT5cblxuICAgIDxkaXYgZnhMYXlvdXQ9XCJyb3dcIiBbZnhMYXlvdXRBbGlnbl09XCJnZXRCdXR0b25zRnhMYXlvdXRBbGlnbigpXCIgZnhMYXlvdXRBbGlnbi54cz1cImNlbnRlclwiIGNsYXNzPVwibWFyZ2luLXRvcC00XCI+XG4gICAgICAgIDxuYy1sb2dpbi1zc28gKm5nSWY9XCJzaG93U3NvQnV0dG9uXCI+PC9uYy1sb2dpbi1zc28+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2ICpuZ0lmPVwic2hvd1NpZ25VcEJ1dHRvbiAmJiBzaG93Rm9yZ290dGVuUGFzc3dvcmRCdXR0b25cIiBmeExheW91dD1cInJvd1wiIGNsYXNzPVwid2lkdGgtMTAwXCIgZnhMYXlvdXRBbGlnbj1cImVuZFwiPlxuICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gKm5nSWY9XCJzaG93Rm9yZ290dGVuUGFzc3dvcmRCdXR0b25cIiAoY2xpY2spPVwicmVzZXRFbWl0KClcIiBjb2xvcj1cInByaW1hcnlcIj57eyAnZm9ybXMubG9naW4ucmVzZXQnIHwgdHJhbnNsYXRlfX08L2J1dHRvbj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -4,14 +4,15 @@ import { FlexLayoutModule } from '@ngbracket/ngx-layout';
4
4
  import { ReactiveFormsModule } from '@angular/forms';
5
5
  import { LoginFormComponent } from './login-form.component';
6
6
  import { MaterialModule, TranslateLibModule } from '@netgrif/components-core';
7
+ import { LoginSsoComponent } from "./login-sso/login-sso.component";
7
8
  import * as i0 from "@angular/core";
8
9
  export class LoginFormComponentModule {
9
10
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
- static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponentModule, declarations: [LoginFormComponent], imports: [CommonModule,
11
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponentModule, declarations: [LoginFormComponent, LoginSsoComponent], imports: [CommonModule,
11
12
  MaterialModule,
12
13
  FlexLayoutModule,
13
14
  ReactiveFormsModule,
14
- TranslateLibModule], exports: [LoginFormComponent] });
15
+ TranslateLibModule], exports: [LoginFormComponent, LoginSsoComponent] });
15
16
  static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponentModule, imports: [CommonModule,
16
17
  MaterialModule,
17
18
  FlexLayoutModule,
@@ -21,8 +22,8 @@ export class LoginFormComponentModule {
21
22
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginFormComponentModule, decorators: [{
22
23
  type: NgModule,
23
24
  args: [{
24
- declarations: [LoginFormComponent],
25
- exports: [LoginFormComponent],
25
+ declarations: [LoginFormComponent, LoginSsoComponent],
26
+ exports: [LoginFormComponent, LoginSsoComponent],
26
27
  imports: [
27
28
  CommonModule,
28
29
  MaterialModule,
@@ -32,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
32
33
  ]
33
34
  }]
34
35
  }] });
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy9sb2dpbi9sb2dpbi1mb3JtLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFFLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7O0FBYzVFLE1BQU0sT0FBTyx3QkFBd0I7d0dBQXhCLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLGlCQVZsQixrQkFBa0IsYUFHN0IsWUFBWTtZQUNaLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsbUJBQW1CO1lBQ25CLGtCQUFrQixhQU5aLGtCQUFrQjt5R0FTbkIsd0JBQXdCLFlBUDdCLFlBQVk7WUFDWixjQUFjO1lBQ2QsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixrQkFBa0I7OzRGQUdiLHdCQUF3QjtrQkFYcEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztvQkFDbEMsT0FBTyxFQUFFLENBQUMsa0JBQWtCLENBQUM7b0JBQzdCLE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLGtCQUFrQjtxQkFDckI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtGbGV4TGF5b3V0TW9kdWxlfSBmcm9tICdAbmdicmFja2V0L25neC1sYXlvdXQnO1xuaW1wb3J0IHtSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0xvZ2luRm9ybUNvbXBvbmVudH0gZnJvbSAnLi9sb2dpbi1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQge01hdGVyaWFsTW9kdWxlLCBUcmFuc2xhdGVMaWJNb2R1bGV9IGZyb20gJ0BuZXRncmlmL2NvbXBvbmVudHMtY29yZSc7XG5cblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtMb2dpbkZvcm1Db21wb25lbnRdLFxuICAgIGV4cG9ydHM6IFtMb2dpbkZvcm1Db21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRlcmlhbE1vZHVsZSxcbiAgICAgICAgRmxleExheW91dE1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlTGliTW9kdWxlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkZvcm1Db21wb25lbnRNb2R1bGUge1xufVxuIl19
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tZm9ybS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi9mb3Jtcy9sb2dpbi9sb2dpbi1mb3JtLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUM3QyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN2RCxPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFFLGtCQUFrQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDNUUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0saUNBQWlDLENBQUM7O0FBY2xFLE1BQU0sT0FBTyx3QkFBd0I7d0dBQXhCLHdCQUF3Qjt5R0FBeEIsd0JBQXdCLGlCQVZsQixrQkFBa0IsRUFBRSxpQkFBaUIsYUFHaEQsWUFBWTtZQUNaLGNBQWM7WUFDZCxnQkFBZ0I7WUFDaEIsbUJBQW1CO1lBQ25CLGtCQUFrQixhQU5aLGtCQUFrQixFQUFFLGlCQUFpQjt5R0FTdEMsd0JBQXdCLFlBUDdCLFlBQVk7WUFDWixjQUFjO1lBQ2QsZ0JBQWdCO1lBQ2hCLG1CQUFtQjtZQUNuQixrQkFBa0I7OzRGQUdiLHdCQUF3QjtrQkFYcEMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxrQkFBa0IsRUFBRSxpQkFBaUIsQ0FBQztvQkFDckQsT0FBTyxFQUFFLENBQUMsa0JBQWtCLEVBQUUsaUJBQWlCLENBQUM7b0JBQ2hELE9BQU8sRUFBRTt3QkFDTCxZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLGtCQUFrQjtxQkFDckI7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Q29tbW9uTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtGbGV4TGF5b3V0TW9kdWxlfSBmcm9tICdAbmdicmFja2V0L25neC1sYXlvdXQnO1xuaW1wb3J0IHtSZWFjdGl2ZUZvcm1zTW9kdWxlfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0xvZ2luRm9ybUNvbXBvbmVudH0gZnJvbSAnLi9sb2dpbi1mb3JtLmNvbXBvbmVudCc7XG5pbXBvcnQge01hdGVyaWFsTW9kdWxlLCBUcmFuc2xhdGVMaWJNb2R1bGV9IGZyb20gJ0BuZXRncmlmL2NvbXBvbmVudHMtY29yZSc7XG5pbXBvcnQge0xvZ2luU3NvQ29tcG9uZW50fSBmcm9tIFwiLi9sb2dpbi1zc28vbG9naW4tc3NvLmNvbXBvbmVudFwiO1xuXG5cbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbTG9naW5Gb3JtQ29tcG9uZW50LCBMb2dpblNzb0NvbXBvbmVudF0sXG4gICAgZXhwb3J0czogW0xvZ2luRm9ybUNvbXBvbmVudCwgTG9naW5Tc29Db21wb25lbnRdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBNYXRlcmlhbE1vZHVsZSxcbiAgICAgICAgRmxleExheW91dE1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlTGliTW9kdWxlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkZvcm1Db21wb25lbnRNb2R1bGUge1xufVxuIl19
@@ -0,0 +1,37 @@
1
+ import { Component } from '@angular/core';
2
+ import { AbstractLoginSsoComponent } from '@netgrif/components-core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@netgrif/components-core";
5
+ import * as i2 from "@angular/common/http";
6
+ import * as i3 from "@angular/router";
7
+ import * as i4 from "@ngx-translate/core";
8
+ import * as i5 from "@angular/common";
9
+ import * as i6 from "@ngbracket/ngx-layout";
10
+ import * as i7 from "@angular/material/button";
11
+ import * as i8 from "@angular/material/progress-spinner";
12
+ export class LoginSsoComponent extends AbstractLoginSsoComponent {
13
+ _config;
14
+ _http;
15
+ _snackbar;
16
+ _log;
17
+ _router;
18
+ _activeRouter;
19
+ _translate;
20
+ constructor(_config, _http, _snackbar, _log, _router, _activeRouter, _translate) {
21
+ super(_config, _http, _snackbar, _log, _router, _activeRouter, _translate);
22
+ this._config = _config;
23
+ this._http = _http;
24
+ this._snackbar = _snackbar;
25
+ this._log = _log;
26
+ this._router = _router;
27
+ this._activeRouter = _activeRouter;
28
+ this._translate = _translate;
29
+ }
30
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginSsoComponent, deps: [{ token: i1.ConfigurationService }, { token: i2.HttpClient }, { token: i1.SnackBarService }, { token: i1.LoggerService }, { token: i3.Router }, { token: i3.ActivatedRoute }, { token: i4.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
31
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LoginSsoComponent, selector: "nc-login-sso", usesInheritance: true, ngImport: i0, template: "<button color=\"primary\" (click)=\"redirectToSso()\" [disabled]=\"(loading | async)\" mat-raised-button fxLayout=\"row\"\n fxLayoutAlign=\"center center\">\n <mat-spinner *ngIf=\"loading | async\"\n mode=\"indeterminate\"\n diameter=\"36\"\n color=\"accent\"\n fxFlex></mat-spinner>\n <span *ngIf=\"(loading | async) === false\" fxFlex>{{ 'forms.login.ssoButton' | translate }}</span>\n</button>\n", styles: [""], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i6.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i6.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] });
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LoginSsoComponent, decorators: [{
34
+ type: Component,
35
+ args: [{ selector: 'nc-login-sso', template: "<button color=\"primary\" (click)=\"redirectToSso()\" [disabled]=\"(loading | async)\" mat-raised-button fxLayout=\"row\"\n fxLayoutAlign=\"center center\">\n <mat-spinner *ngIf=\"loading | async\"\n mode=\"indeterminate\"\n diameter=\"36\"\n color=\"accent\"\n fxFlex></mat-spinner>\n <span *ngIf=\"(loading | async) === false\" fxFlex>{{ 'forms.login.ssoButton' | translate }}</span>\n</button>\n" }]
36
+ }], ctorParameters: () => [{ type: i1.ConfigurationService }, { type: i2.HttpClient }, { type: i1.SnackBarService }, { type: i1.LoggerService }, { type: i3.Router }, { type: i3.ActivatedRoute }, { type: i4.TranslateService }] });
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4tc3NvLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL2Zvcm1zL2xvZ2luL2xvZ2luLXNzby9sb2dpbi1zc28uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvZm9ybXMvbG9naW4vbG9naW4tc3NvL2xvZ2luLXNzby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXhDLE9BQU8sRUFBQyx5QkFBeUIsRUFBdUQsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7OztBQVF6SCxNQUFNLE9BQU8saUJBQWtCLFNBQVEseUJBQXlCO0lBRTlDO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBUGQsWUFDYyxPQUE2QixFQUM3QixLQUFpQixFQUNqQixTQUEwQixFQUMxQixJQUFtQixFQUNuQixPQUFlLEVBQ2YsYUFBNkIsRUFDN0IsVUFBNEI7UUFFdEMsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBUmpFLFlBQU8sR0FBUCxPQUFPLENBQXNCO1FBQzdCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFDakIsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDMUIsU0FBSSxHQUFKLElBQUksQ0FBZTtRQUNuQixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2Ysa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBQzdCLGVBQVUsR0FBVixVQUFVLENBQWtCO0lBRzFDLENBQUM7d0dBWFEsaUJBQWlCOzRGQUFqQixpQkFBaUIsMkVDWDlCLDZkQVNBOzs0RkRFYSxpQkFBaUI7a0JBTDdCLFNBQVM7K0JBQ0ksY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cENsaWVudH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtDb21wb25lbnR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtBYnN0cmFjdExvZ2luU3NvQ29tcG9uZW50LCBDb25maWd1cmF0aW9uU2VydmljZSwgTG9nZ2VyU2VydmljZSwgU25hY2tCYXJTZXJ2aWNlfSBmcm9tICdAbmV0Z3JpZi9jb21wb25lbnRzLWNvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jLWxvZ2luLXNzbycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLXNzby5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vbG9naW4tc3NvLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIExvZ2luU3NvQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RMb2dpblNzb0NvbXBvbmVudCB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfY29uZmlnOiBDb25maWd1cmF0aW9uU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9odHRwOiBIdHRwQ2xpZW50LFxuICAgICAgICBwcm90ZWN0ZWQgX3NuYWNrYmFyOiBTbmFja0JhclNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX3JvdXRlcjogUm91dGVyLFxuICAgICAgICBwcm90ZWN0ZWQgX2FjdGl2ZVJvdXRlcjogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByb3RlY3RlZCBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKF9jb25maWcsIF9odHRwLCBfc25hY2tiYXIsIF9sb2csIF9yb3V0ZXIsIF9hY3RpdmVSb3V0ZXIsIF90cmFuc2xhdGUpO1xuICAgIH1cbn1cbiIsIjxidXR0b24gY29sb3I9XCJwcmltYXJ5XCIgKGNsaWNrKT1cInJlZGlyZWN0VG9Tc28oKVwiIFtkaXNhYmxlZF09XCIobG9hZGluZyB8IGFzeW5jKVwiIG1hdC1yYWlzZWQtYnV0dG9uIGZ4TGF5b3V0PVwicm93XCJcbiAgICAgICAgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgICA8bWF0LXNwaW5uZXIgKm5nSWY9XCJsb2FkaW5nIHwgYXN5bmNcIlxuICAgICAgICAgICAgICAgICBtb2RlPVwiaW5kZXRlcm1pbmF0ZVwiXG4gICAgICAgICAgICAgICAgIGRpYW1ldGVyPVwiMzZcIlxuICAgICAgICAgICAgICAgICBjb2xvcj1cImFjY2VudFwiXG4gICAgICAgICAgICAgICAgIGZ4RmxleD48L21hdC1zcGlubmVyPlxuICAgIDxzcGFuICpuZ0lmPVwiKGxvYWRpbmcgfCBhc3luYykgPT09IGZhbHNlXCIgZnhGbGV4Pnt7ICdmb3Jtcy5sb2dpbi5zc29CdXR0b24nIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuPC9idXR0b24+XG4iXX0=
@@ -1,6 +1,7 @@
1
1
  /* COMPONENTS */
2
2
  export * from './email-submission/email-submission-form.component';
3
3
  export * from './login/login-form.component';
4
+ export * from './login/login-sso/login-sso.component';
4
5
  export * from './registration/registration-form.component';
5
6
  export * from './forgotten-password/forgotten-password-form.component';
6
7
  export * from './change-password/change-password-form.component';
@@ -10,4 +11,4 @@ export * from './login/login-form.module';
10
11
  export * from './registration/registration-form.module';
11
12
  export * from './forgotten-password/forgotten-password-form-component.module';
12
13
  export * from './change-password/change-password-form.component.module';
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL2Zvcm1zL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FBQ2hCLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxrREFBa0QsQ0FBQztBQUVqRSxhQUFhO0FBQ2IsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywrREFBK0QsQ0FBQztBQUM5RSxjQUFjLHlEQUF5RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogQ09NUE9ORU5UUyAqL1xuZXhwb3J0ICogZnJvbSAnLi9lbWFpbC1zdWJtaXNzaW9uL2VtYWlsLXN1Ym1pc3Npb24tZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dpbi9sb2dpbi1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3JlZ2lzdHJhdGlvbi9yZWdpc3RyYXRpb24tZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3Jnb3R0ZW4tcGFzc3dvcmQvZm9yZ290dGVuLXBhc3N3b3JkLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC1mb3JtLmNvbXBvbmVudCc7XG5cbi8qIE1PRFVMRVMgKi9cbmV4cG9ydCAqIGZyb20gJy4vZW1haWwtc3VibWlzc2lvbi9lbWFpbC1zdWJtaXNzaW9uLWZvcm0ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vbG9naW4tZm9ybS5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3RyYXRpb24vcmVnaXN0cmF0aW9uLWZvcm0ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vZm9yZ290dGVuLXBhc3N3b3JkL2ZvcmdvdHRlbi1wYXNzd29yZC1mb3JtLWNvbXBvbmVudC5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGFuZ2UtcGFzc3dvcmQvY2hhbmdlLXBhc3N3b3JkLWZvcm0uY29tcG9uZW50Lm1vZHVsZSc7XG4iXX0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL2Zvcm1zL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZ0JBQWdCO0FBQ2hCLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLGtEQUFrRCxDQUFDO0FBRWpFLGFBQWE7QUFDYixjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLCtEQUErRCxDQUFDO0FBQzlFLGNBQWMseURBQXlELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBDT01QT05FTlRTICovXG5leHBvcnQgKiBmcm9tICcuL2VtYWlsLXN1Ym1pc3Npb24vZW1haWwtc3VibWlzc2lvbi1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2luL2xvZ2luLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbG9naW4vbG9naW4tc3NvL2xvZ2luLXNzby5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3RyYXRpb24vcmVnaXN0cmF0aW9uLWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZm9yZ290dGVuLXBhc3N3b3JkL2ZvcmdvdHRlbi1wYXNzd29yZC1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2NoYW5nZS1wYXNzd29yZC9jaGFuZ2UtcGFzc3dvcmQtZm9ybS5jb21wb25lbnQnO1xuXG4vKiBNT0RVTEVTICovXG5leHBvcnQgKiBmcm9tICcuL2VtYWlsLXN1Ym1pc3Npb24vZW1haWwtc3VibWlzc2lvbi1mb3JtLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvZ2luL2xvZ2luLWZvcm0ubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vcmVnaXN0cmF0aW9uL3JlZ2lzdHJhdGlvbi1mb3JtLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZvcmdvdHRlbi1wYXNzd29yZC9mb3Jnb3R0ZW4tcGFzc3dvcmQtZm9ybS1jb21wb25lbnQubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vY2hhbmdlLXBhc3N3b3JkL2NoYW5nZS1wYXNzd29yZC1mb3JtLmNvbXBvbmVudC5tb2R1bGUnO1xuIl19
@@ -86,13 +86,14 @@ export class DefaultTabViewComponent {
86
86
  const taskViewAdditionalFilter = this.extractionService.extractCompleteAdditionalFilterFromData(viewDataGroups);
87
87
  let mergeWithBaseFilter = (chainedViewType === "tabbed_task_view_configuration") ? extractFieldValueFromData(viewDataGroups, GroupNavigationConstants.ITEM_FIELD_ID_MERGE_FILTERS) : true;
88
88
  const additionalAllowedNets = this.extractionService.extractAdditionalFilterAllowedNets(viewDataGroups)?.allowedNetsIdentifiers;
89
+ const chainedViewComponent = chainedViewType === "tabbed_single_task_view_configuration" ? DefaultTabbedSingleTaskViewComponent : DefaultTabbedTaskViewComponent;
89
90
  return [
90
91
  {
91
92
  label: { text: labelData.name, icon: labelData.icon },
92
93
  canBeClosed: false,
93
94
  tabContentComponent: DefaultTabbedCaseViewComponent,
94
95
  injectedObject: {
95
- tabViewComponent: DefaultTabbedTaskViewComponent,
96
+ tabViewComponent: chainedViewComponent,
96
97
  tabViewOrder: 0,
97
98
  navigationItemTaskData: this._navigationItemTaskData,
98
99
  newCaseButtonConfiguration: newCaseButtonConfig,
@@ -182,4 +183,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
182
183
  type: Inject,
183
184
  args: [NAE_NAVIGATION_ITEM_TASK_DATA]
184
185
  }] }, { type: i1.TranslateService }, { type: i2.FilterExtractionService }, { type: i3.ActivatedRoute }] });
185
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC10YWItdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi9uYXZpZ2F0aW9uL2dyb3VwLW5hdmlnYXRpb24tY29tcG9uZW50LXJlc29sdmVyL2RlZmF1bHQtY29tcG9uZW50cy90YWJiZWQvZGVmYXVsdC10YWItdmlldy9kZWZhdWx0LXRhYi12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL25hdmlnYXRpb24vZ3JvdXAtbmF2aWdhdGlvbi1jb21wb25lbnQtcmVzb2x2ZXIvZGVmYXVsdC1jb21wb25lbnRzL3RhYmJlZC9kZWZhdWx0LXRhYi12aWV3L2RlZmF1bHQtdGFiLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUVILG1CQUFtQixFQUNuQix5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLG1DQUFtQyxFQUNuQyw2QkFBNkIsRUFDN0IsbUJBQW1CLEVBR25CLFVBQVUsRUFFVixhQUFhLEVBRWIsd0JBQXdCLEVBQ3hCLE9BQU8sRUFDVixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQzlHLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQzlHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNoRyxPQUFPLEVBQ0gsb0NBQW9DLEVBQ3ZDLE1BQU0sOEVBQThFLENB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QUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsNkRBQTZELENBQUMsQ0FBQztTQUNsRjtRQUVELE9BQU87WUFDSDtnQkFDSSxLQUFLLEVBQUUsRUFBQyxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLElBQUksRUFBQztnQkFDbkQsV0FBVyxFQUFFLEtBQUs7Z0JBQ2xCLG1CQUFtQixFQUFFLDBCQUEwQjtnQkFDL0MsY0FBYyxFQUFFO29CQUNaLHNCQUFzQixFQUFFLElBQUksQ0FBQyx1QkFBdUI7b0JBQ3BELGdCQUFnQixFQUFFLG9DQUFvQztvQkFDdEQsWUFBWSxFQUFFLENBQUM7aUJBQ2xCO2FBQ0o7U0FDSixDQUFDO0lBQ04sQ0FBQzt3R0F0S1EsdUJBQXVCLGtCQUlaLDZCQUE2Qjs0RkFKeEMsdUJBQXVCLDhDQUxyQjtZQUNQLGFBQWE7WUFDYixFQUFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsbUNBQW1DLEVBQUUsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDLEVBQUM7U0FDMUcsMEJDbENMLGlNQUdBOzs0RkRpQ2EsdUJBQXVCO2tCQVRuQyxTQUFTOytCQUNJLHFCQUFxQixhQUdwQjt3QkFDUCxhQUFhO3dCQUNiLEVBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxtQ0FBbUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxjQUFjLENBQUMsRUFBQztxQkFDMUc7OzBCQU1ZLE1BQU07MkJBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEluamVjdH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIERhdGFHcm91cCxcbiAgICBleHRyYWN0SWNvbkFuZFRpdGxlLFxuICAgIGV4dHJhY3RTZWFyY2hUeXBlRnJvbURhdGEsXG4gICAgZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YSxcbiAgICBncm91cE5hdmlnYXRpb25WaWV3SWRTZWdtZW50RmFjdG9yeSxcbiAgICBOQUVfTkFWSUdBVElPTl9JVEVNX1RBU0tfREFUQSxcbiAgICBOQUVfVklFV19JRF9TRUdNRU5ULFxuICAgIE5ld0Nhc2VDcmVhdGlvbkNvbmZpZ3VyYXRpb25EYXRhLFxuICAgIFNlYXJjaENvbXBvbmVudENvbmZpZ3VyYXRpb24sXG4gICAgU2VhcmNoTW9kZSxcbiAgICBUYWJDb250ZW50LFxuICAgIFZpZXdJZFNlcnZpY2UsXG4gICAgRmlsdGVyRXh0cmFjdGlvblNlcnZpY2UsXG4gICAgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLFxuICAgIGhhc1ZpZXdcbn0gZnJvbSAnQG5ldGdyaWYvY29tcG9uZW50cy1jb3JlJztcbmltcG9ydCB7RGVmYXVsdFRhYmJlZENhc2VWaWV3Q29tcG9uZW50fSBmcm9tICcuLi9kZWZhdWx0LXRhYmJlZC1jYXNlLXZpZXcvZGVmYXVsdC10YWJiZWQtY2FzZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQge0RlZmF1bHRUYWJiZWRUYXNrVmlld0NvbXBvbmVudH0gZnJvbSAnLi4vZGVmYXVsdC10YWJiZWQtdGFzay12aWV3L2RlZmF1bHQtdGFiYmVkLXRhc2stdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHtBY3RpdmF0ZWRSb3V0ZX0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7RGVmYXVsdFRpY2tldFZpZXdDb21wb25lbnR9IGZyb20gXCIuLi9kZWZhdWx0LXRpY2tldC12aWV3L2RlZmF1bHQtdGlja2V0LXZpZXcuY29tcG9uZW50XCI7XG5pbXBvcnQge1xuICAgIERlZmF1bHRUYWJiZWRTaW5nbGVUYXNrVmlld0NvbXBvbmVudFxufSBmcm9tIFwiLi4vZGVmYXVsdC10YWJiZWQtc2luZ2xlLXRhc2stdmlldy9kZWZhdWx0LXRhYmJlZC1zaW5nbGUtdGFzay12aWV3LmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jLWRlZmF1bHQtdGFiLXZpZXcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kZWZhdWx0LXRhYi12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kZWZhdWx0LXRhYi12aWV3LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIFZpZXdJZFNlcnZpY2UsXG4gICAgICAgIHtwcm92aWRlOiBOQUVfVklFV19JRF9TRUdNRU5ULCB1c2VGYWN0b3J5OiBncm91cE5hdmlnYXRpb25WaWV3SWRTZWdtZW50RmFjdG9yeSwgZGVwczogW0FjdGl2YXRlZFJvdXRlXX1cbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIERlZmF1bHRUYWJWaWV3Q29tcG9uZW50IHtcblxuICAgIHRhYnM6IEFycmF5PFRhYkNvbnRlbnQ+O1xuXG4gICAgY29uc3RydWN0b3IoQEluamVjdChOQUVfTkFWSUdBVElPTl9JVEVNX1RBU0tfREFUQSkgcHJvdGVjdGVkIF9uYXZpZ2F0aW9uSXRlbVRhc2tEYXRhOiBBcnJheTxEYXRhR3JvdXA+LFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCB0cmFuc2xhdGlvblNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIGV4dHJhY3Rpb25TZXJ2aWNlOiBGaWx0ZXJFeHRyYWN0aW9uU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlKSB7XG4gICAgICAgIHRoaXMudGFicyA9IHRoaXMuZ2V0VGFicygpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXRUYWJzKCk6IFRhYkNvbnRlbnRbXSB7XG4gICAgICAgIGNvbnN0IG1lbnVJdGVtRGF0YUdyb3VwczogQXJyYXk8RGF0YUdyb3VwPiA9IHRoaXMuX25hdmlnYXRpb25JdGVtVGFza0RhdGEuc2xpY2UoMCwgNClcbiAgICAgICAgY29uc3Qgdmlld0RhdGFHcm91cHM6IEFycmF5PERhdGFHcm91cD4gPSB0aGlzLl9uYXZpZ2F0aW9uSXRlbVRhc2tEYXRhLnNsaWNlKDQsIHRoaXMuX25hdmlnYXRpb25JdGVtVGFza0RhdGEubGVuZ3RoKTtcblxuICAgICAgICBjb25zdCB2aWV3VHlwZTogc3RyaW5nID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YShtZW51SXRlbURhdGFHcm91cHMsIFwidmlld19jb25maWd1cmF0aW9uX3R5cGVcIilcbiAgICAgICAgc3dpdGNoICh2aWV3VHlwZSkge1xuICAgICAgICAgICAgY2FzZSBcInRhYmJlZF9jYXNlX3ZpZXdcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRDYXNlVGFicyhtZW51SXRlbURhdGFHcm91cHMsIHZpZXdEYXRhR3JvdXBzKTtcbiAgICAgICAgICAgIGNhc2UgXCJ0YWJiZWRfdGFza192aWV3XCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VGFza1RhYnMobWVudUl0ZW1EYXRhR3JvdXBzLCB2aWV3RGF0YUdyb3Vwcyk7XG4gICAgICAgICAgICBjYXNlIFwidGFiYmVkX3RpY2tldF92aWV3XCI6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VGlja2V0VGFicyhtZW51SXRlbURhdGFHcm91cHMsIHZpZXdEYXRhR3JvdXBzKTtcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYW5ub3QgcmVzb2x2ZSB0YWJzIGZvciAnJHt2aWV3VHlwZX0nIHZpZXcgdHlwZWApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldENhc2VUYWJzKG1lbnVJdGVtRGF0YUdyb3VwczogQXJyYXk8RGF0YUdyb3VwPiwgdmlld0RhdGFHcm91cHM6IEFycmF5PERhdGFHcm91cD4pOiBUYWJDb250ZW50W10ge1xuICAgICAgICBjb25zdCBsYWJlbERhdGEgPSBleHRyYWN0SWNvbkFuZFRpdGxlKG1lbnVJdGVtRGF0YUdyb3VwcywgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UpO1xuXG4gICAgICAgIGNvbnN0IGJsb2NrTmV0c1N0cmluZyA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8c3RyaW5nPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ0FTRV9CQU5ORURfUFJPQ0VTU19DUkVBVElPTik7XG4gICAgICAgIGNvbnN0IGJsb2NrTmV0cyA9IGJsb2NrTmV0c1N0cmluZyA9PT0gdW5kZWZpbmVkID8gW10gOiBibG9ja05ldHNTdHJpbmcuc3BsaXQoJywnKVxuICAgICAgICBjb25zdCBjcmVhdGVDYXNlQnV0dG9uVGl0bGU6IHN0cmluZyA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8c3RyaW5nPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ1JFQVRFX0NBU0VfQlVUVE9OX1RJVExFKTtcbiAgICAgICAgY29uc3QgY3JlYXRlQ2FzZUJ1dHRvbkljb246IHN0cmluZyA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8c3RyaW5nPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ1JFQVRFX0NBU0VfQlVUVE9OX0lDT04pO1xuICAgICAgICBjb25zdCByZXF1aXJlVGl0bGU6IGJvb2xlYW4gPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPGJvb2xlYW4+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9DQVNFX1RJVExFX0lOX0NSRUFUSU9OKTtcbiAgICAgICAgY29uc3Qgc2hvd0NyZWF0ZUNhc2VCdXR0b246IGJvb2xlYW4gPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPGJvb2xlYW4+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9TSE9XX0NSRUFURV9DQVNFX0JVVFRPTik7XG4gICAgICAgIGNvbnN0IGNoYWluZWRWaWV3VHlwZTogc3RyaW5nID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YSh2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fQ0hBSU5FRF9WSUVXX0NPTkZJR1VSQVRJT05fVFlQRSk7XG5cbiAgICAgICAgY29uc3QgbmV3Q2FzZUJ1dHRvbkNvbmZpZzogTmV3Q2FzZUNyZWF0aW9uQ29uZmlndXJhdGlvbkRhdGEgPSB7XG4gICAgICAgICAgICBlbmFibGVDYXNlVGl0bGU6IHJlcXVpcmVUaXRsZSxcbiAgICAgICAgICAgIGlzQ2FzZVRpdGxlUmVxdWlyZWQ6IHJlcXVpcmVUaXRsZSxcbiAgICAgICAgICAgIG5ld0Nhc2VCdXR0b25Db25maWc6IHtcbiAgICAgICAgICAgICAgICBjcmVhdGVDYXNlQnV0dG9uVGl0bGUsXG4gICAgICAgICAgICAgICAgY3JlYXRlQ2FzZUJ1dHRvbkljb24sXG4gICAgICAgICAgICAgICAgc2hvd0NyZWF0ZUNhc2VCdXR0b246IHNob3dDcmVhdGVDYXNlQnV0dG9uLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGJsb2NrTmV0czogYmxvY2tOZXRzXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGNhc2VTZWFyY2hUeXBlID0gZXh0cmFjdFNlYXJjaFR5cGVGcm9tRGF0YSh2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ0FTRV9WSUVXX1NFQVJDSF9UWVBFKTtcbiAgICAgICAgY29uc3QgY2FzZVNlYXJjaFR5cGVDb25maWc6IFNlYXJjaENvbXBvbmVudENvbmZpZ3VyYXRpb24gPSB7XG4gICAgICAgICAgICBzaG93U2VhcmNoSWNvbjogdHJ1ZSxcbiAgICAgICAgICAgIHNob3dTZWFyY2hUb2dnbGVCdXR0b246IGNhc2VTZWFyY2hUeXBlID09PSBTZWFyY2hNb2RlLkFEVkFOQ0VELFxuICAgICAgICAgICAgaW5pdGlhbFNlYXJjaE1vZGU6IChjYXNlU2VhcmNoVHlwZSA9PT0gdW5kZWZpbmVkKSA/IHVuZGVmaW5lZCA6IFNlYXJjaE1vZGUuRlVMTFRFWFQsXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY2FzZVNob3dNb3JlTWVudSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX0NBU0VfU0hPV19NT1JFX01FTlUpO1xuICAgICAgICBjb25zdCBjYXNlVmlld0hlYWRlcnNDaGFuZ2VhYmxlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ0FTRV9IRUFERVJTX0NIQU5HRUFCTEUpO1xuICAgICAgICBjb25zdCBjYXNlVmlld0hlYWRlcnNNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmdbXT4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX0NBU0VfSEVBREVSU19NT0RFKTtcbiAgICAgICAgY29uc3QgY2FzZVZpZXdBbGxvd1RhYmxlTW9kZSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX0NBU0VfQUxMT1dfVEFCTEVfTU9ERSk7XG4gICAgICAgIGNvbnN0IGNhc2VWaWV3RGVmYXVsdEhlYWRlcnNNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmdbXT4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX0NBU0VfREVGQVVMVF9IRUFERVJTX01PREUpO1xuXG4gICAgICAgIGlmICghaGFzVmlldyh2aWV3RGF0YUdyb3VwcykpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgQ2FzZSB2aWV3IGhhcyBtaXNzaW5nIGNvbmZpZ3VyYXRpb24gZm9yIHRhc2sgdmlldy5gKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRhc2tTZWFyY2hUeXBlID0gZXh0cmFjdFNlYXJjaFR5cGVGcm9tRGF0YSh2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19WSUVXX1NFQVJDSF9UWVBFKTtcbiAgICAgICAgY29uc3QgdGFza1Nob3dNb3JlTWVudSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfU0hPV19NT1JFX01FTlUpO1xuICAgICAgICBjb25zdCB0YXNrU2VhcmNoVHlwZUNvbmZpZzogU2VhcmNoQ29tcG9uZW50Q29uZmlndXJhdGlvbiA9IHtcbiAgICAgICAgICAgIHNob3dTZWFyY2hJY29uOiB0cnVlLFxuICAgICAgICAgICAgc2hvd1NlYXJjaFRvZ2dsZUJ1dHRvbjogdGFza1NlYXJjaFR5cGUgPT09IFNlYXJjaE1vZGUuQURWQU5DRUQsXG4gICAgICAgICAgICBpbml0aWFsU2VhcmNoTW9kZTogKHRhc2tTZWFyY2hUeXBlID09PSB1bmRlZmluZWQpID8gdW5kZWZpbmVkIDogU2VhcmNoTW9kZS5GVUxMVEVYVCxcbiAgICAgICAgfVxuICAgICAgICBjb25zdCB0YXNrVmlld0hlYWRlcnNDaGFuZ2VhYmxlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19IRUFERVJTX0NIQU5HRUFCTEUpO1xuICAgICAgICBjb25zdCB0YXNrVmlld0hlYWRlcnNNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmdbXT4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfSEVBREVSU19NT0RFKTtcbiAgICAgICAgY29uc3QgdGFza1ZpZXdBbGxvd1RhYmxlTW9kZSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfQUxMT1dfVEFCTEVfTU9ERSk7XG4gICAgICAgIGNvbnN0IHRhc2tWaWV3RGVmYXVsdEhlYWRlcnNNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmdbXT4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfREVGQVVMVF9IRUFERVJTX01PREUpO1xuICAgICAgICBjb25zdCB0YXNrVmlld0FkZGl0aW9uYWxGaWx0ZXIgPSB0aGlzLmV4dHJhY3Rpb25TZXJ2aWNlLmV4dHJhY3RDb21wbGV0ZUFkZGl0aW9uYWxGaWx0ZXJGcm9tRGF0YSh2aWV3RGF0YUdyb3Vwcyk7XG4gICAgICAgIGxldCBtZXJnZVdpdGhCYXNlRmlsdGVyOiBib29sZWFuID0gKGNoYWluZWRWaWV3VHlwZSA9PT0gXCJ0YWJiZWRfdGFza192aWV3X2NvbmZpZ3VyYXRpb25cIikgPyBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPGJvb2xlYW4+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9NRVJHRV9GSUxURVJTKSA6IHRydWU7XG4gICAgICAgIGNvbnN0IGFkZGl0aW9uYWxBbGxvd2VkTmV0cyA9IHRoaXMuZXh0cmFjdGlvblNlcnZpY2UuZXh0cmFjdEFkZGl0aW9uYWxGaWx0ZXJBbGxvd2VkTmV0cyh2aWV3RGF0YUdyb3Vwcyk/LmFsbG93ZWROZXRzSWRlbnRpZmllcnM7XG5cbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBsYWJlbDoge3RleHQ6IGxhYmVsRGF0YS5uYW1lLCBpY29uOiBsYWJlbERhdGEuaWNvbn0sXG4gICAgICAgICAgICAgICAgY2FuQmVDbG9zZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHRhYkNvbnRlbnRDb21wb25lbnQ6IERlZmF1bHRUYWJiZWRDYXNlVmlld0NvbXBvbmVudCxcbiAgICAgICAgICAgICAgICBpbmplY3RlZE9iamVjdDoge1xuICAgICAgICAgICAgICAgICAgICB0YWJWaWV3Q29tcG9uZW50OiBEZWZhdWx0VGFiYmVkVGFza1ZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICAgICAgICAgIHRhYlZpZXdPcmRlcjogMCxcbiAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YTogdGhpcy5fbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICBuZXdDYXNlQnV0dG9uQ29uZmlndXJhdGlvbjogbmV3Q2FzZUJ1dHRvbkNvbmZpZyxcbiAgICAgICAgICAgICAgICAgICAgY2FzZVZpZXdTZWFyY2hUeXBlQ29uZmlndXJhdGlvbjogY2FzZVNlYXJjaFR5cGVDb25maWcsXG4gICAgICAgICAgICAgICAgICAgIGNhc2VWaWV3U2hvd01vcmVNZW51OiBjYXNlU2hvd01vcmVNZW51LFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0hlYWRlcnNDaGFuZ2VhYmxlOiBjYXNlVmlld0hlYWRlcnNDaGFuZ2VhYmxlLFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0hlYWRlcnNNb2RlOiBjYXNlVmlld0hlYWRlcnNNb2RlLFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0FsbG93VGFibGVNb2RlOiBjYXNlVmlld0FsbG93VGFibGVNb2RlLFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0RlZmF1bHRIZWFkZXJzTW9kZTogY2FzZVZpZXdEZWZhdWx0SGVhZGVyc01vZGUsXG5cbiAgICAgICAgICAgICAgICAgICAgdGFza1ZpZXdTZWFyY2hUeXBlQ29uZmlndXJhdGlvbjogdGFza1NlYXJjaFR5cGVDb25maWcsXG4gICAgICAgICAgICAgICAgICAgIHRhc2tWaWV3U2hvd01vcmVNZW51OiB0YXNrU2hvd01vcmVNZW51LFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0hlYWRlcnNDaGFuZ2VhYmxlOiB0YXNrVmlld0hlYWRlcnNDaGFuZ2VhYmxlLFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0hlYWRlcnNNb2RlOiB0YXNrVmlld0hlYWRlcnNNb2RlLFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0FsbG93VGFibGVNb2RlOiB0YXNrVmlld0FsbG93VGFibGVNb2RlLFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0RlZmF1bHRIZWFkZXJzTW9kZTogdGFza1ZpZXdEZWZhdWx0SGVhZGVyc01vZGUsXG4gICAgICAgICAgICAgICAgICAgIHRhc2tWaWV3TWVyZ2VXaXRoQmFzZUZpbHRlcjogbWVyZ2VXaXRoQmFzZUZpbHRlcixcbiAgICAgICAgICAgICAgICAgICAgdGFza1ZpZXdBZGRpdGlvbmFsRmlsdGVyOiB0YXNrVmlld0FkZGl0aW9uYWxGaWx0ZXIsXG4gICAgICAgICAgICAgICAgICAgIHRhc2tWaWV3QWRkaXRpb25hbEFsbG93ZWROZXRzOiBhZGRpdGlvbmFsQWxsb3dlZE5ldHNcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldFRhc2tUYWJzKG1lbnVJdGVtRGF0YUdyb3VwczogQXJyYXk8RGF0YUdyb3VwPiwgdmlld0RhdGFHcm91cHM6IEFycmF5PERhdGFHcm91cD4pOiBUYWJDb250ZW50W10ge1xuICAgICAgICBjb25zdCBsYWJlbERhdGEgPSBleHRyYWN0SWNvbkFuZFRpdGxlKG1lbnVJdGVtRGF0YUdyb3VwcywgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UpO1xuICAgICAgICBjb25zdCB0YXNrU2VhcmNoVHlwZSA9IGV4dHJhY3RTZWFyY2hUeXBlRnJvbURhdGEodmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfVklFV19TRUFSQ0hfVFlQRSk7XG4gICAgICAgIGNvbnN0IGhlYWRlcnNDaGFuZ2VhYmxlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19IRUFERVJTX0NIQU5HRUFCTEUpO1xuICAgICAgICBjb25zdCBoZWFkZXJzTW9kZSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8c3RyaW5nW10+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9UQVNLX0hFQURFUlNfTU9ERSk7XG4gICAgICAgIGNvbnN0IGFsbG93VGFibGVNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19BTExPV19UQUJMRV9NT0RFKTtcbiAgICAgICAgY29uc3QgZGVmYXVsdEhlYWRlcnNNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmdbXT4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfREVGQVVMVF9IRUFERVJTX01PREUpO1xuICAgICAgICBjb25zdCBzaG93VG9nZ2xlQnV0dG9uID0gdGFza1NlYXJjaFR5cGUgPT09IFNlYXJjaE1vZGUuQURWQU5DRURcbiAgICAgICAgY29uc3Qgc2VhcmNoVHlwZUNvbmZpZzogU2VhcmNoQ29tcG9uZW50Q29uZmlndXJhdGlvbiA9IHtcbiAgICAgICAgICAgIHNob3dTZWFyY2hJY29uOiB0cnVlLFxuICAgICAgICAgICAgc2hvd1NlYXJjaFRvZ2dsZUJ1dHRvbjogc2hvd1RvZ2dsZUJ1dHRvbixcbiAgICAgICAgICAgIGluaXRpYWxTZWFyY2hNb2RlOiAodGFza1NlYXJjaFR5cGUgPT09IHVuZGVmaW5lZCkgPyB1bmRlZmluZWQgOiBTZWFyY2hNb2RlLkZVTExURVhULFxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNob3dNb3JlTWVudSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfU0hPV19NT1JFX01FTlUpO1xuXG4gICAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZXh0cmFjdGlvblNlcnZpY2UuZXh0cmFjdENvbXBsZXRlRmlsdGVyRnJvbURhdGEodmlld0RhdGFHcm91cHMpO1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGxhYmVsOiB7dGV4dDogbGFiZWxEYXRhLm5hbWUsIGljb246IGxhYmVsRGF0YS5pY29ufSxcbiAgICAgICAgICAgICAgICBjYW5CZUNsb3NlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgdGFiQ29udGVudENvbXBvbmVudDogRGVmYXVsdFRhYmJlZFRhc2tWaWV3Q29tcG9uZW50LFxuICAgICAgICAgICAgICAgIGluamVjdGVkT2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgICAgIG5hdmlnYXRpb25JdGVtVGFza0RhdGE6IHRoaXMuX25hdmlnYXRpb25JdGVtVGFza0RhdGEsXG4gICAgICAgICAgICAgICAgICAgIGJhc2VGaWx0ZXI6IGZpbHRlcixcbiAgICAgICAgICAgICAgICAgICAgc2VhcmNoVHlwZUNvbmZpZ3VyYXRpb246IHNlYXJjaFR5cGVDb25maWcsXG4gICAgICAgICAgICAgICAgICAgIHNob3dNb3JlTWVudTogc2hvd01vcmVNZW51LFxuICAgICAgICAgICAgICAgICAgICBoZWFkZXJzQ2hhbmdlYWJsZTogaGVhZGVyc0NoYW5nZWFibGUsXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnNNb2RlOiBoZWFkZXJzTW9kZSxcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dUYWJsZU1vZGU6IGFsbG93VGFibGVNb2RlLFxuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0SGVhZGVyc01vZGU6IGRlZmF1bHRIZWFkZXJzTW9kZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0VGlja2V0VGFicyhtZW51SXRlbURhdGFHcm91cHM6IEFycmF5PERhdGFHcm91cD4sIHZpZXdEYXRhR3JvdXBzOiBBcnJheTxEYXRhR3JvdXA+KTogVGFiQ29udGVudFtdIHtcbiAgICAgICAgY29uc3QgbGFiZWxEYXRhID0gZXh0cmFjdEljb25BbmRUaXRsZShtZW51SXRlbURhdGFHcm91cHMsIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICAgICAgICBpZiAoIWhhc1ZpZXcodmlld0RhdGFHcm91cHMpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRpY2tldCB2aWV3IGhhcyBtaXNzaW5nIGNvbmZpZ3VyYXRpb24gZm9yIHNpbmdsZSB0YXNrIHZpZXcuYCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGxhYmVsOiB7dGV4dDogbGFiZWxEYXRhLm5hbWUsIGljb246IGxhYmVsRGF0YS5pY29ufSxcbiAgICAgICAgICAgICAgICBjYW5CZUNsb3NlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgdGFiQ29udGVudENvbXBvbmVudDogRGVmYXVsdFRpY2tldFZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICAgICAgaW5qZWN0ZWRPYmplY3Q6IHtcbiAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YTogdGhpcy5fbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YSxcbiAgICAgICAgICAgICAgICAgICAgdGFiVmlld0NvbXBvbmVudDogRGVmYXVsdFRhYmJlZFNpbmdsZVRhc2tWaWV3Q29tcG9uZW50LFxuICAgICAgICAgICAgICAgICAgICB0YWJWaWV3T3JkZXI6IDAsXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cblxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBzdHJldGNoXCIgY2xhc3M9XCJmdWxsLWhlaWdodFwiPlxuICAgIDxuYy10YWItdmlldyBbaW5pdGlhbFRhYnNdPVwidGFic1wiIHN0cmV0Y2g9XCJmYWxzZVwiIGNsYXNzPVwiZnVsbC1oZWlnaHQgYmxvY2tcIj48L25jLXRhYi12aWV3PlxuPC9kaXY+XG4iXX0=
186
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC10YWItdmlldy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMvc3JjL2xpYi9uYXZpZ2F0aW9uL2dyb3VwLW5hdmlnYXRpb24tY29tcG9uZW50LXJlc29sdmVyL2RlZmF1bHQtY29tcG9uZW50cy90YWJiZWQvZGVmYXVsdC10YWItdmlldy9kZWZhdWx0LXRhYi12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL25hdmlnYXRpb24vZ3JvdXAtbmF2aWdhdGlvbi1jb21wb25lbnQtcmVzb2x2ZXIvZGVmYXVsdC1jb21wb25lbnRzL3RhYmJlZC9kZWZhdWx0LXRhYi12aWV3L2RlZmF1bHQtdGFiLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUVILG1CQUFtQixFQUNuQix5QkFBeUIsRUFDekIseUJBQXlCLEVBQ3pCLG1DQUFtQyxFQUNuQyw2QkFBNkIsRUFDN0IsbUJBQW1CLEVBR25CLFVBQVUsRUFFVixhQUFhLEVBRWIsd0JBQXdCLEVBQ3hCLE9BQU8sRUFDVixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQzlHLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLGdFQUFnRSxDQUFDO0FBQzlHLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUMsMEJBQTBCLEVBQUMsTUFBTSxzREFBc0QsQ0FBQztBQUNoRyxPQUFPLEVBQ0gsb0NBQW9DLEVBQ3ZDLE1BQU0sOEVBQThFLENB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QUFFLGNBQWdDO1FBQzFGLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRW5GLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEVBQUU7WUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO1NBQ2xGO1FBRUQsT0FBTztZQUNIO2dCQUNJLEtBQUssRUFBRSxFQUFDLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxFQUFDO2dCQUNuRCxXQUFXLEVBQUUsS0FBSztnQkFDbEIsbUJBQW1CLEVBQUUsMEJBQTBCO2dCQUMvQyxjQUFjLEVBQUU7b0JBQ1osc0JBQXNCLEVBQUUsSUFBSSxDQUFDLHVCQUF1QjtvQkFDcEQsZ0JBQWdCLEVBQUUsb0NBQW9DO29CQUN0RCxZQUFZLEVBQUUsQ0FBQztpQkFDbEI7YUFDSjtTQUNKLENBQUM7SUFDTixDQUFDO3dHQXZLUSx1QkFBdUIsa0JBSVosNkJBQTZCOzRGQUp4Qyx1QkFBdUIsOENBTHJCO1lBQ1AsYUFBYTtZQUNiLEVBQUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxtQ0FBbUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxjQUFjLENBQUMsRUFBQztTQUMxRywwQkNsQ0wsaU1BR0E7OzRGRGlDYSx1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0kscUJBQXFCLGFBR3BCO3dCQUNQLGFBQWE7d0JBQ2IsRUFBQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLG1DQUFtQyxFQUFFLElBQUksRUFBRSxDQUFDLGNBQWMsQ0FBQyxFQUFDO3FCQUMxRzs7MEJBTVksTUFBTTsyQkFBQyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5qZWN0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRGF0YUdyb3VwLFxuICAgIGV4dHJhY3RJY29uQW5kVGl0bGUsXG4gICAgZXh0cmFjdFNlYXJjaFR5cGVGcm9tRGF0YSxcbiAgICBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhLFxuICAgIGdyb3VwTmF2aWdhdGlvblZpZXdJZFNlZ21lbnRGYWN0b3J5LFxuICAgIE5BRV9OQVZJR0FUSU9OX0lURU1fVEFTS19EQVRBLFxuICAgIE5BRV9WSUVXX0lEX1NFR01FTlQsXG4gICAgTmV3Q2FzZUNyZWF0aW9uQ29uZmlndXJhdGlvbkRhdGEsXG4gICAgU2VhcmNoQ29tcG9uZW50Q29uZmlndXJhdGlvbixcbiAgICBTZWFyY2hNb2RlLFxuICAgIFRhYkNvbnRlbnQsXG4gICAgVmlld0lkU2VydmljZSxcbiAgICBGaWx0ZXJFeHRyYWN0aW9uU2VydmljZSxcbiAgICBHcm91cE5hdmlnYXRpb25Db25zdGFudHMsXG4gICAgaGFzVmlld1xufSBmcm9tICdAbmV0Z3JpZi9jb21wb25lbnRzLWNvcmUnO1xuaW1wb3J0IHtEZWZhdWx0VGFiYmVkQ2FzZVZpZXdDb21wb25lbnR9IGZyb20gJy4uL2RlZmF1bHQtdGFiYmVkLWNhc2Utdmlldy9kZWZhdWx0LXRhYmJlZC1jYXNlLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7RGVmYXVsdFRhYmJlZFRhc2tWaWV3Q29tcG9uZW50fSBmcm9tICcuLi9kZWZhdWx0LXRhYmJlZC10YXNrLXZpZXcvZGVmYXVsdC10YWJiZWQtdGFzay12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQge0FjdGl2YXRlZFJvdXRlfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuaW1wb3J0IHtEZWZhdWx0VGlja2V0Vmlld0NvbXBvbmVudH0gZnJvbSBcIi4uL2RlZmF1bHQtdGlja2V0LXZpZXcvZGVmYXVsdC10aWNrZXQtdmlldy5jb21wb25lbnRcIjtcbmltcG9ydCB7XG4gICAgRGVmYXVsdFRhYmJlZFNpbmdsZVRhc2tWaWV3Q29tcG9uZW50XG59IGZyb20gXCIuLi9kZWZhdWx0LXRhYmJlZC1zaW5nbGUtdGFzay12aWV3L2RlZmF1bHQtdGFiYmVkLXNpbmdsZS10YXNrLXZpZXcuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmMtZGVmYXVsdC10YWItdmlldycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2RlZmF1bHQtdGFiLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2RlZmF1bHQtdGFiLXZpZXcuY29tcG9uZW50LnNjc3MnXSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgVmlld0lkU2VydmljZSxcbiAgICAgICAge3Byb3ZpZGU6IE5BRV9WSUVXX0lEX1NFR01FTlQsIHVzZUZhY3Rvcnk6IGdyb3VwTmF2aWdhdGlvblZpZXdJZFNlZ21lbnRGYWN0b3J5LCBkZXBzOiBbQWN0aXZhdGVkUm91dGVdfVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgRGVmYXVsdFRhYlZpZXdDb21wb25lbnQge1xuXG4gICAgdGFiczogQXJyYXk8VGFiQ29udGVudD47XG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KE5BRV9OQVZJR0FUSU9OX0lURU1fVEFTS19EQVRBKSBwcm90ZWN0ZWQgX25hdmlnYXRpb25JdGVtVGFza0RhdGE6IEFycmF5PERhdGFHcm91cD4sXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIHRyYW5zbGF0aW9uU2VydmljZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgZXh0cmFjdGlvblNlcnZpY2U6IEZpbHRlckV4dHJhY3Rpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHByb3RlY3RlZCBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICAgICAgdGhpcy50YWJzID0gdGhpcy5nZXRUYWJzKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldFRhYnMoKTogVGFiQ29udGVudFtdIHtcbiAgICAgICAgY29uc3QgbWVudUl0ZW1EYXRhR3JvdXBzOiBBcnJheTxEYXRhR3JvdXA+ID0gdGhpcy5fbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YS5zbGljZSgwLCA0KVxuICAgICAgICBjb25zdCB2aWV3RGF0YUdyb3VwczogQXJyYXk8RGF0YUdyb3VwPiA9IHRoaXMuX25hdmlnYXRpb25JdGVtVGFza0RhdGEuc2xpY2UoNCwgdGhpcy5fbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YS5sZW5ndGgpO1xuXG4gICAgICAgIGNvbnN0IHZpZXdUeXBlOiBzdHJpbmcgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhKG1lbnVJdGVtRGF0YUdyb3VwcywgXCJ2aWV3X2NvbmZpZ3VyYXRpb25fdHlwZVwiKVxuICAgICAgICBzd2l0Y2ggKHZpZXdUeXBlKSB7XG4gICAgICAgICAgICBjYXNlIFwidGFiYmVkX2Nhc2Vfdmlld1wiOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmdldENhc2VUYWJzKG1lbnVJdGVtRGF0YUdyb3Vwcywgdmlld0RhdGFHcm91cHMpO1xuICAgICAgICAgICAgY2FzZSBcInRhYmJlZF90YXNrX3ZpZXdcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUYXNrVGFicyhtZW51SXRlbURhdGFHcm91cHMsIHZpZXdEYXRhR3JvdXBzKTtcbiAgICAgICAgICAgIGNhc2UgXCJ0YWJiZWRfdGlja2V0X3ZpZXdcIjpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5nZXRUaWNrZXRUYWJzKG1lbnVJdGVtRGF0YUdyb3Vwcywgdmlld0RhdGFHcm91cHMpO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCByZXNvbHZlIHRhYnMgZm9yICcke3ZpZXdUeXBlfScgdmlldyB0eXBlYCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0Q2FzZVRhYnMobWVudUl0ZW1EYXRhR3JvdXBzOiBBcnJheTxEYXRhR3JvdXA+LCB2aWV3RGF0YUdyb3VwczogQXJyYXk8RGF0YUdyb3VwPik6IFRhYkNvbnRlbnRbXSB7XG4gICAgICAgIGNvbnN0IGxhYmVsRGF0YSA9IGV4dHJhY3RJY29uQW5kVGl0bGUobWVudUl0ZW1EYXRhR3JvdXBzLCB0aGlzLnRyYW5zbGF0aW9uU2VydmljZSk7XG5cbiAgICAgICAgY29uc3QgYmxvY2tOZXRzU3RyaW5nID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmc+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9DQVNFX0JBTk5FRF9QUk9DRVNTX0NSRUFUSU9OKTtcbiAgICAgICAgY29uc3QgYmxvY2tOZXRzID0gYmxvY2tOZXRzU3RyaW5nID09PSB1bmRlZmluZWQgPyBbXSA6IGJsb2NrTmV0c1N0cmluZy5zcGxpdCgnLCcpXG4gICAgICAgIGNvbnN0IGNyZWF0ZUNhc2VCdXR0b25UaXRsZTogc3RyaW5nID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmc+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9DUkVBVEVfQ0FTRV9CVVRUT05fVElUTEUpO1xuICAgICAgICBjb25zdCBjcmVhdGVDYXNlQnV0dG9uSWNvbjogc3RyaW5nID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmc+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9DUkVBVEVfQ0FTRV9CVVRUT05fSUNPTik7XG4gICAgICAgIGNvbnN0IHJlcXVpcmVUaXRsZTogYm9vbGVhbiA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX0NBU0VfVElUTEVfSU5fQ1JFQVRJT04pO1xuICAgICAgICBjb25zdCBzaG93Q3JlYXRlQ2FzZUJ1dHRvbjogYm9vbGVhbiA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1NIT1dfQ1JFQVRFX0NBU0VfQlVUVE9OKTtcbiAgICAgICAgY29uc3QgY2hhaW5lZFZpZXdUeXBlOiBzdHJpbmcgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhKHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9DSEFJTkVEX1ZJRVdfQ09ORklHVVJBVElPTl9UWVBFKTtcblxuICAgICAgICBjb25zdCBuZXdDYXNlQnV0dG9uQ29uZmlnOiBOZXdDYXNlQ3JlYXRpb25Db25maWd1cmF0aW9uRGF0YSA9IHtcbiAgICAgICAgICAgIGVuYWJsZUNhc2VUaXRsZTogcmVxdWlyZVRpdGxlLFxuICAgICAgICAgICAgaXNDYXNlVGl0bGVSZXF1aXJlZDogcmVxdWlyZVRpdGxlLFxuICAgICAgICAgICAgbmV3Q2FzZUJ1dHRvbkNvbmZpZzoge1xuICAgICAgICAgICAgICAgIGNyZWF0ZUNhc2VCdXR0b25UaXRsZSxcbiAgICAgICAgICAgICAgICBjcmVhdGVDYXNlQnV0dG9uSWNvbixcbiAgICAgICAgICAgICAgICBzaG93Q3JlYXRlQ2FzZUJ1dHRvbjogc2hvd0NyZWF0ZUNhc2VCdXR0b24sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYmxvY2tOZXRzOiBibG9ja05ldHNcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgY2FzZVNlYXJjaFR5cGUgPSBleHRyYWN0U2VhcmNoVHlwZUZyb21EYXRhKHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9DQVNFX1ZJRVdfU0VBUkNIX1RZUEUpO1xuICAgICAgICBjb25zdCBjYXNlU2VhcmNoVHlwZUNvbmZpZzogU2VhcmNoQ29tcG9uZW50Q29uZmlndXJhdGlvbiA9IHtcbiAgICAgICAgICAgIHNob3dTZWFyY2hJY29uOiB0cnVlLFxuICAgICAgICAgICAgc2hvd1NlYXJjaFRvZ2dsZUJ1dHRvbjogY2FzZVNlYXJjaFR5cGUgPT09IFNlYXJjaE1vZGUuQURWQU5DRUQsXG4gICAgICAgICAgICBpbml0aWFsU2VhcmNoTW9kZTogKGNhc2VTZWFyY2hUeXBlID09PSB1bmRlZmluZWQpID8gdW5kZWZpbmVkIDogU2VhcmNoTW9kZS5GVUxMVEVYVCxcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjYXNlU2hvd01vcmVNZW51ID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ0FTRV9TSE9XX01PUkVfTUVOVSk7XG4gICAgICAgIGNvbnN0IGNhc2VWaWV3SGVhZGVyc0NoYW5nZWFibGUgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPGJvb2xlYW4+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9DQVNFX0hFQURFUlNfQ0hBTkdFQUJMRSk7XG4gICAgICAgIGNvbnN0IGNhc2VWaWV3SGVhZGVyc01vZGUgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPHN0cmluZ1tdPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ0FTRV9IRUFERVJTX01PREUpO1xuICAgICAgICBjb25zdCBjYXNlVmlld0FsbG93VGFibGVNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ0FTRV9BTExPV19UQUJMRV9NT0RFKTtcbiAgICAgICAgY29uc3QgY2FzZVZpZXdEZWZhdWx0SGVhZGVyc01vZGUgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPHN0cmluZ1tdPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfQ0FTRV9ERUZBVUxUX0hFQURFUlNfTU9ERSk7XG5cbiAgICAgICAgaWYgKCFoYXNWaWV3KHZpZXdEYXRhR3JvdXBzKSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBDYXNlIHZpZXcgaGFzIG1pc3NpbmcgY29uZmlndXJhdGlvbiBmb3IgdGFzayB2aWV3LmApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdGFza1NlYXJjaFR5cGUgPSBleHRyYWN0U2VhcmNoVHlwZUZyb21EYXRhKHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9UQVNLX1ZJRVdfU0VBUkNIX1RZUEUpO1xuICAgICAgICBjb25zdCB0YXNrU2hvd01vcmVNZW51ID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19TSE9XX01PUkVfTUVOVSk7XG4gICAgICAgIGNvbnN0IHRhc2tTZWFyY2hUeXBlQ29uZmlnOiBTZWFyY2hDb21wb25lbnRDb25maWd1cmF0aW9uID0ge1xuICAgICAgICAgICAgc2hvd1NlYXJjaEljb246IHRydWUsXG4gICAgICAgICAgICBzaG93U2VhcmNoVG9nZ2xlQnV0dG9uOiB0YXNrU2VhcmNoVHlwZSA9PT0gU2VhcmNoTW9kZS5BRFZBTkNFRCxcbiAgICAgICAgICAgIGluaXRpYWxTZWFyY2hNb2RlOiAodGFza1NlYXJjaFR5cGUgPT09IHVuZGVmaW5lZCkgPyB1bmRlZmluZWQgOiBTZWFyY2hNb2RlLkZVTExURVhULFxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHRhc2tWaWV3SGVhZGVyc0NoYW5nZWFibGUgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPGJvb2xlYW4+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9UQVNLX0hFQURFUlNfQ0hBTkdFQUJMRSk7XG4gICAgICAgIGNvbnN0IHRhc2tWaWV3SGVhZGVyc01vZGUgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPHN0cmluZ1tdPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19IRUFERVJTX01PREUpO1xuICAgICAgICBjb25zdCB0YXNrVmlld0FsbG93VGFibGVNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19BTExPV19UQUJMRV9NT0RFKTtcbiAgICAgICAgY29uc3QgdGFza1ZpZXdEZWZhdWx0SGVhZGVyc01vZGUgPSBleHRyYWN0RmllbGRWYWx1ZUZyb21EYXRhPHN0cmluZ1tdPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19ERUZBVUxUX0hFQURFUlNfTU9ERSk7XG4gICAgICAgIGNvbnN0IHRhc2tWaWV3QWRkaXRpb25hbEZpbHRlciA9IHRoaXMuZXh0cmFjdGlvblNlcnZpY2UuZXh0cmFjdENvbXBsZXRlQWRkaXRpb25hbEZpbHRlckZyb21EYXRhKHZpZXdEYXRhR3JvdXBzKTtcbiAgICAgICAgbGV0IG1lcmdlV2l0aEJhc2VGaWx0ZXI6IGJvb2xlYW4gPSAoY2hhaW5lZFZpZXdUeXBlID09PSBcInRhYmJlZF90YXNrX3ZpZXdfY29uZmlndXJhdGlvblwiKSA/IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX01FUkdFX0ZJTFRFUlMpIDogdHJ1ZTtcbiAgICAgICAgY29uc3QgYWRkaXRpb25hbEFsbG93ZWROZXRzID0gdGhpcy5leHRyYWN0aW9uU2VydmljZS5leHRyYWN0QWRkaXRpb25hbEZpbHRlckFsbG93ZWROZXRzKHZpZXdEYXRhR3JvdXBzKT8uYWxsb3dlZE5ldHNJZGVudGlmaWVycztcbiAgICAgICAgY29uc3QgY2hhaW5lZFZpZXdDb21wb25lbnQgPSBjaGFpbmVkVmlld1R5cGUgPT09IFwidGFiYmVkX3NpbmdsZV90YXNrX3ZpZXdfY29uZmlndXJhdGlvblwiID8gRGVmYXVsdFRhYmJlZFNpbmdsZVRhc2tWaWV3Q29tcG9uZW50IDogRGVmYXVsdFRhYmJlZFRhc2tWaWV3Q29tcG9uZW50O1xuXG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbGFiZWw6IHt0ZXh0OiBsYWJlbERhdGEubmFtZSwgaWNvbjogbGFiZWxEYXRhLmljb259LFxuICAgICAgICAgICAgICAgIGNhbkJlQ2xvc2VkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB0YWJDb250ZW50Q29tcG9uZW50OiBEZWZhdWx0VGFiYmVkQ2FzZVZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICAgICAgaW5qZWN0ZWRPYmplY3Q6IHtcbiAgICAgICAgICAgICAgICAgICAgdGFiVmlld0NvbXBvbmVudDogY2hhaW5lZFZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICAgICAgICAgIHRhYlZpZXdPcmRlcjogMCxcbiAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YTogdGhpcy5fbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YSxcblxuICAgICAgICAgICAgICAgICAgICBuZXdDYXNlQnV0dG9uQ29uZmlndXJhdGlvbjogbmV3Q2FzZUJ1dHRvbkNvbmZpZyxcbiAgICAgICAgICAgICAgICAgICAgY2FzZVZpZXdTZWFyY2hUeXBlQ29uZmlndXJhdGlvbjogY2FzZVNlYXJjaFR5cGVDb25maWcsXG4gICAgICAgICAgICAgICAgICAgIGNhc2VWaWV3U2hvd01vcmVNZW51OiBjYXNlU2hvd01vcmVNZW51LFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0hlYWRlcnNDaGFuZ2VhYmxlOiBjYXNlVmlld0hlYWRlcnNDaGFuZ2VhYmxlLFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0hlYWRlcnNNb2RlOiBjYXNlVmlld0hlYWRlcnNNb2RlLFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0FsbG93VGFibGVNb2RlOiBjYXNlVmlld0FsbG93VGFibGVNb2RlLFxuICAgICAgICAgICAgICAgICAgICBjYXNlVmlld0RlZmF1bHRIZWFkZXJzTW9kZTogY2FzZVZpZXdEZWZhdWx0SGVhZGVyc01vZGUsXG5cbiAgICAgICAgICAgICAgICAgICAgdGFza1ZpZXdTZWFyY2hUeXBlQ29uZmlndXJhdGlvbjogdGFza1NlYXJjaFR5cGVDb25maWcsXG4gICAgICAgICAgICAgICAgICAgIHRhc2tWaWV3U2hvd01vcmVNZW51OiB0YXNrU2hvd01vcmVNZW51LFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0hlYWRlcnNDaGFuZ2VhYmxlOiB0YXNrVmlld0hlYWRlcnNDaGFuZ2VhYmxlLFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0hlYWRlcnNNb2RlOiB0YXNrVmlld0hlYWRlcnNNb2RlLFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0FsbG93VGFibGVNb2RlOiB0YXNrVmlld0FsbG93VGFibGVNb2RlLFxuICAgICAgICAgICAgICAgICAgICB0YXNrVmlld0RlZmF1bHRIZWFkZXJzTW9kZTogdGFza1ZpZXdEZWZhdWx0SGVhZGVyc01vZGUsXG4gICAgICAgICAgICAgICAgICAgIHRhc2tWaWV3TWVyZ2VXaXRoQmFzZUZpbHRlcjogbWVyZ2VXaXRoQmFzZUZpbHRlcixcbiAgICAgICAgICAgICAgICAgICAgdGFza1ZpZXdBZGRpdGlvbmFsRmlsdGVyOiB0YXNrVmlld0FkZGl0aW9uYWxGaWx0ZXIsXG4gICAgICAgICAgICAgICAgICAgIHRhc2tWaWV3QWRkaXRpb25hbEFsbG93ZWROZXRzOiBhZGRpdGlvbmFsQWxsb3dlZE5ldHNcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIF07XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGdldFRhc2tUYWJzKG1lbnVJdGVtRGF0YUdyb3VwczogQXJyYXk8RGF0YUdyb3VwPiwgdmlld0RhdGFHcm91cHM6IEFycmF5PERhdGFHcm91cD4pOiBUYWJDb250ZW50W10ge1xuICAgICAgICBjb25zdCBsYWJlbERhdGEgPSBleHRyYWN0SWNvbkFuZFRpdGxlKG1lbnVJdGVtRGF0YUdyb3VwcywgdGhpcy50cmFuc2xhdGlvblNlcnZpY2UpO1xuICAgICAgICBjb25zdCB0YXNrU2VhcmNoVHlwZSA9IGV4dHJhY3RTZWFyY2hUeXBlRnJvbURhdGEodmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfVklFV19TRUFSQ0hfVFlQRSk7XG4gICAgICAgIGNvbnN0IGhlYWRlcnNDaGFuZ2VhYmxlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19IRUFERVJTX0NIQU5HRUFCTEUpO1xuICAgICAgICBjb25zdCBoZWFkZXJzTW9kZSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8c3RyaW5nW10+KHZpZXdEYXRhR3JvdXBzLCBHcm91cE5hdmlnYXRpb25Db25zdGFudHMuSVRFTV9GSUVMRF9JRF9UQVNLX0hFQURFUlNfTU9ERSk7XG4gICAgICAgIGNvbnN0IGFsbG93VGFibGVNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxib29sZWFuPih2aWV3RGF0YUdyb3VwcywgR3JvdXBOYXZpZ2F0aW9uQ29uc3RhbnRzLklURU1fRklFTERfSURfVEFTS19BTExPV19UQUJMRV9NT0RFKTtcbiAgICAgICAgY29uc3QgZGVmYXVsdEhlYWRlcnNNb2RlID0gZXh0cmFjdEZpZWxkVmFsdWVGcm9tRGF0YTxzdHJpbmdbXT4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfREVGQVVMVF9IRUFERVJTX01PREUpO1xuICAgICAgICBjb25zdCBzaG93VG9nZ2xlQnV0dG9uID0gdGFza1NlYXJjaFR5cGUgPT09IFNlYXJjaE1vZGUuQURWQU5DRURcbiAgICAgICAgY29uc3Qgc2VhcmNoVHlwZUNvbmZpZzogU2VhcmNoQ29tcG9uZW50Q29uZmlndXJhdGlvbiA9IHtcbiAgICAgICAgICAgIHNob3dTZWFyY2hJY29uOiB0cnVlLFxuICAgICAgICAgICAgc2hvd1NlYXJjaFRvZ2dsZUJ1dHRvbjogc2hvd1RvZ2dsZUJ1dHRvbixcbiAgICAgICAgICAgIGluaXRpYWxTZWFyY2hNb2RlOiAodGFza1NlYXJjaFR5cGUgPT09IHVuZGVmaW5lZCkgPyB1bmRlZmluZWQgOiBTZWFyY2hNb2RlLkZVTExURVhULFxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHNob3dNb3JlTWVudSA9IGV4dHJhY3RGaWVsZFZhbHVlRnJvbURhdGE8Ym9vbGVhbj4odmlld0RhdGFHcm91cHMsIEdyb3VwTmF2aWdhdGlvbkNvbnN0YW50cy5JVEVNX0ZJRUxEX0lEX1RBU0tfU0hPV19NT1JFX01FTlUpO1xuXG4gICAgICAgIGNvbnN0IGZpbHRlciA9IHRoaXMuZXh0cmFjdGlvblNlcnZpY2UuZXh0cmFjdENvbXBsZXRlRmlsdGVyRnJvbURhdGEodmlld0RhdGFHcm91cHMpO1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGxhYmVsOiB7dGV4dDogbGFiZWxEYXRhLm5hbWUsIGljb246IGxhYmVsRGF0YS5pY29ufSxcbiAgICAgICAgICAgICAgICBjYW5CZUNsb3NlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgdGFiQ29udGVudENvbXBvbmVudDogRGVmYXVsdFRhYmJlZFRhc2tWaWV3Q29tcG9uZW50LFxuICAgICAgICAgICAgICAgIGluamVjdGVkT2JqZWN0OiB7XG4gICAgICAgICAgICAgICAgICAgIG5hdmlnYXRpb25JdGVtVGFza0RhdGE6IHRoaXMuX25hdmlnYXRpb25JdGVtVGFza0RhdGEsXG4gICAgICAgICAgICAgICAgICAgIGJhc2VGaWx0ZXI6IGZpbHRlcixcbiAgICAgICAgICAgICAgICAgICAgc2VhcmNoVHlwZUNvbmZpZ3VyYXRpb246IHNlYXJjaFR5cGVDb25maWcsXG4gICAgICAgICAgICAgICAgICAgIHNob3dNb3JlTWVudTogc2hvd01vcmVNZW51LFxuICAgICAgICAgICAgICAgICAgICBoZWFkZXJzQ2hhbmdlYWJsZTogaGVhZGVyc0NoYW5nZWFibGUsXG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnNNb2RlOiBoZWFkZXJzTW9kZSxcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dUYWJsZU1vZGU6IGFsbG93VGFibGVNb2RlLFxuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0SGVhZGVyc01vZGU6IGRlZmF1bHRIZWFkZXJzTW9kZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0VGlja2V0VGFicyhtZW51SXRlbURhdGFHcm91cHM6IEFycmF5PERhdGFHcm91cD4sIHZpZXdEYXRhR3JvdXBzOiBBcnJheTxEYXRhR3JvdXA+KTogVGFiQ29udGVudFtdIHtcbiAgICAgICAgY29uc3QgbGFiZWxEYXRhID0gZXh0cmFjdEljb25BbmRUaXRsZShtZW51SXRlbURhdGFHcm91cHMsIHRoaXMudHJhbnNsYXRpb25TZXJ2aWNlKTtcblxuICAgICAgICBpZiAoIWhhc1ZpZXcodmlld0RhdGFHcm91cHMpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRpY2tldCB2aWV3IGhhcyBtaXNzaW5nIGNvbmZpZ3VyYXRpb24gZm9yIHNpbmdsZSB0YXNrIHZpZXcuYCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGxhYmVsOiB7dGV4dDogbGFiZWxEYXRhLm5hbWUsIGljb246IGxhYmVsRGF0YS5pY29ufSxcbiAgICAgICAgICAgICAgICBjYW5CZUNsb3NlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgdGFiQ29udGVudENvbXBvbmVudDogRGVmYXVsdFRpY2tldFZpZXdDb21wb25lbnQsXG4gICAgICAgICAgICAgICAgaW5qZWN0ZWRPYmplY3Q6IHtcbiAgICAgICAgICAgICAgICAgICAgbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YTogdGhpcy5fbmF2aWdhdGlvbkl0ZW1UYXNrRGF0YSxcbiAgICAgICAgICAgICAgICAgICAgdGFiVmlld0NvbXBvbmVudDogRGVmYXVsdFRhYmJlZFNpbmdsZVRhc2tWaWV3Q29tcG9uZW50LFxuICAgICAgICAgICAgICAgICAgICB0YWJWaWV3T3JkZXI6IDAsXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cblxufVxuIiwiPGRpdiBmeExheW91dD1cImNvbHVtblwiIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBzdHJldGNoXCIgY2xhc3M9XCJmdWxsLWhlaWdodFwiPlxuICAgIDxuYy10YWItdmlldyBbaW5pdGlhbFRhYnNdPVwidGFic1wiIHN0cmV0Y2g9XCJmYWxzZVwiIGNsYXNzPVwiZnVsbC1oZWlnaHQgYmxvY2tcIj48L25jLXRhYi12aWV3PlxuPC9kaXY+XG4iXX0=
@@ -19,15 +19,15 @@ export class SingleTaskComponent extends AbstractSingleTaskComponent {
19
19
  this._route = _route;
20
20
  }
21
21
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SingleTaskComponent, deps: [{ token: i1.LoggerService }, { token: i2.ActivatedRoute }, { token: NAE_TAB_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
22
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SingleTaskComponent, selector: "nc-single-task", usesInheritance: true, ngImport: i0, template: "<div fxLayout='column' fxLayoutAlign='start center' fxFlex>\n <ng-container *nccLet=\"(task$ | async) as task\">\n\n <div *ngIf='(loading$ | async) === false && !task' fxLayout='column' fxLayoutAlign='center center'\n fxFlex>\n <div *ngTemplateOutlet =\"noTaskSection ?? defaultNoTaskSection\"></div>\n </div>\n\n <div *ngIf=\"task\" class=\"task-panel-scroll-container full-width full-height\">\n <div *ngTemplateOutlet='pageHeader ?? defaultPageHeader'></div>\n <nc-task-panel\n [textEllipsis]='textEllipsis'\n [taskPanelData]='task'\n [selectedHeaders$]='selectedHeaders$'\n [forceLoadDataOnOpen]='forceLoadDataOnOpen'\n [responsiveBody]='responsiveBody'\n (taskEvent)='emitTaskEvent($event)'\n (panelRefOutput)='setPanelRef($event)'\n [preventCollapse]='preventCollapse'\n [hidePanelHeader]='hidePanelHeader'\n [actionButtonTemplates]='actionButtonTemplates'\n [actionRowJustifyContent]='actionRowJustifyContent'\n [first]='true'\n [last]='true'\n [hideActionRow]=\"hideActionRow\"\n class='panel-expanded-spacing single-task-fix'>\n </nc-task-panel>\n\n <div *ngIf='loading$ | async' fxLayout='column' fxLayoutAlign='center center'>\n <mat-spinner color='primary' diameter='52'></mat-spinner>\n </div>\n <div *ngTemplateOutlet='pageFooter ?? defaultPageFooter'></div>\n </div>\n\n <ng-template #defaultNoTaskSection>\n <mat-icon color='accent'>check_box</mat-icon>\n <span class='font-size-20'>{{ 'tasks.view.noTasksSatisfyingThisFilter' | translate }}</span>\n </ng-template>\n\n <ng-template #defaultPageHeader>\n <mat-card class=\"top-card\" *ngIf=\"showPageHeader\">\n <span class=\"top-card-title\"><strong>{{headerTitle ?? (!!task && !!task.task ? task.task.title : '')}}</strong></span>\n </mat-card>\n </ng-template>\n\n <ng-template #defaultPageFooter>\n <mat-card class='bottom-card footer' *ngIf=\"showPageFooter\">\n <span class=\"bottom-card-title footer-font\"><strong>{{footerText ?? 'tasks.footer.defaultText' | translate}}</strong></span>\n </mat-card>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".font-size-20{font-size:20px}.full-width{width:100%}.full-height{height:100%}.top-card{margin-bottom:10px;margin-top:10px}.top-card-title{display:flex;align-items:center;flex-direction:column}.bottom-card{margin-bottom:10px;margin-top:10px}.bottom-card-title{display:block;align-items:start;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i5.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i1.LetDirective, selector: "[nccLet]", inputs: ["nccLet"] }, { kind: "component", type: i8.TaskPanelComponent, selector: "nc-task-panel" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
22
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SingleTaskComponent, selector: "nc-single-task", usesInheritance: true, ngImport: i0, template: "<div fxLayout='column' fxLayoutAlign='start center' fxFlex>\n <ng-container *nccLet=\"(task$ | async) as task\">\n\n <div *ngIf='(loading$ | async) === false && !task' fxLayout='column' fxLayoutAlign='center center'\n fxFlex>\n <div *ngTemplateOutlet =\"noTaskSection ?? defaultNoTaskSection\"></div>\n </div>\n\n <div *ngIf=\"task\" class=\"task-panel-scroll-container full-width full-height\">\n <div *ngTemplateOutlet='pageHeader ?? defaultPageHeader'></div>\n <nc-task-panel\n [textEllipsis]='textEllipsis'\n [taskPanelData]='task'\n [selectedHeaders$]='selectedHeaders$'\n [forceLoadDataOnOpen]='forceLoadDataOnOpen'\n [responsiveBody]='responsiveBody'\n (taskEvent)='emitTaskEvent($event)'\n (panelRefOutput)='setPanelRef($event)'\n [preventCollapse]='preventCollapse'\n [hidePanelHeader]='hidePanelHeader'\n [actionButtonTemplates]='actionButtonTemplates'\n [actionRowJustifyContent]='actionRowJustifyContent'\n [first]='true'\n [last]='true'\n [hideActionRow]=\"hideActionRow\"\n class='panel-expanded-spacing'>\n </nc-task-panel>\n\n <div *ngIf='loading$ | async' fxLayout='column' fxLayoutAlign='center center'>\n <mat-spinner color='primary' diameter='52'></mat-spinner>\n </div>\n <div *ngTemplateOutlet='pageFooter ?? defaultPageFooter'></div>\n </div>\n\n <ng-template #defaultNoTaskSection>\n <mat-icon color='accent'>check_box</mat-icon>\n <span class='font-size-20'>{{ 'tasks.view.noTasksSatisfyingThisFilter' | translate }}</span>\n </ng-template>\n\n <ng-template #defaultPageHeader>\n <mat-card class=\"top-card\" *ngIf=\"showPageHeader\">\n <span class=\"top-card-title\"><strong>{{headerTitle ?? (!!task && !!task.task ? task.task.title : '')}}</strong></span>\n </mat-card>\n </ng-template>\n\n <ng-template #defaultPageFooter>\n <mat-card class='bottom-card footer' *ngIf=\"showPageFooter\">\n <span class=\"bottom-card-title footer-font\"><strong>{{footerText ?? 'tasks.footer.defaultText' | translate}}</strong></span>\n </mat-card>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".font-size-20{font-size:20px}.full-width{width:100%}.full-height{height:100%}.top-card{margin-bottom:10px;margin-top:10px}.top-card-title{display:flex;align-items:center;flex-direction:column}.bottom-card{margin-bottom:10px;margin-top:10px}.bottom-card-title{display:block;align-items:start;flex-direction:column}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i4.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i4.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: i5.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i1.LetDirective, selector: "[nccLet]", inputs: ["nccLet"] }, { kind: "component", type: i8.TaskPanelComponent, selector: "nc-task-panel" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i9.TranslatePipe, name: "translate" }] });
23
23
  }
24
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SingleTaskComponent, decorators: [{
25
25
  type: Component,
26
- args: [{ selector: 'nc-single-task', template: "<div fxLayout='column' fxLayoutAlign='start center' fxFlex>\n <ng-container *nccLet=\"(task$ | async) as task\">\n\n <div *ngIf='(loading$ | async) === false && !task' fxLayout='column' fxLayoutAlign='center center'\n fxFlex>\n <div *ngTemplateOutlet =\"noTaskSection ?? defaultNoTaskSection\"></div>\n </div>\n\n <div *ngIf=\"task\" class=\"task-panel-scroll-container full-width full-height\">\n <div *ngTemplateOutlet='pageHeader ?? defaultPageHeader'></div>\n <nc-task-panel\n [textEllipsis]='textEllipsis'\n [taskPanelData]='task'\n [selectedHeaders$]='selectedHeaders$'\n [forceLoadDataOnOpen]='forceLoadDataOnOpen'\n [responsiveBody]='responsiveBody'\n (taskEvent)='emitTaskEvent($event)'\n (panelRefOutput)='setPanelRef($event)'\n [preventCollapse]='preventCollapse'\n [hidePanelHeader]='hidePanelHeader'\n [actionButtonTemplates]='actionButtonTemplates'\n [actionRowJustifyContent]='actionRowJustifyContent'\n [first]='true'\n [last]='true'\n [hideActionRow]=\"hideActionRow\"\n class='panel-expanded-spacing single-task-fix'>\n </nc-task-panel>\n\n <div *ngIf='loading$ | async' fxLayout='column' fxLayoutAlign='center center'>\n <mat-spinner color='primary' diameter='52'></mat-spinner>\n </div>\n <div *ngTemplateOutlet='pageFooter ?? defaultPageFooter'></div>\n </div>\n\n <ng-template #defaultNoTaskSection>\n <mat-icon color='accent'>check_box</mat-icon>\n <span class='font-size-20'>{{ 'tasks.view.noTasksSatisfyingThisFilter' | translate }}</span>\n </ng-template>\n\n <ng-template #defaultPageHeader>\n <mat-card class=\"top-card\" *ngIf=\"showPageHeader\">\n <span class=\"top-card-title\"><strong>{{headerTitle ?? (!!task && !!task.task ? task.task.title : '')}}</strong></span>\n </mat-card>\n </ng-template>\n\n <ng-template #defaultPageFooter>\n <mat-card class='bottom-card footer' *ngIf=\"showPageFooter\">\n <span class=\"bottom-card-title footer-font\"><strong>{{footerText ?? 'tasks.footer.defaultText' | translate}}</strong></span>\n </mat-card>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".font-size-20{font-size:20px}.full-width{width:100%}.full-height{height:100%}.top-card{margin-bottom:10px;margin-top:10px}.top-card-title{display:flex;align-items:center;flex-direction:column}.bottom-card{margin-bottom:10px;margin-top:10px}.bottom-card-title{display:block;align-items:start;flex-direction:column}\n"] }]
26
+ args: [{ selector: 'nc-single-task', template: "<div fxLayout='column' fxLayoutAlign='start center' fxFlex>\n <ng-container *nccLet=\"(task$ | async) as task\">\n\n <div *ngIf='(loading$ | async) === false && !task' fxLayout='column' fxLayoutAlign='center center'\n fxFlex>\n <div *ngTemplateOutlet =\"noTaskSection ?? defaultNoTaskSection\"></div>\n </div>\n\n <div *ngIf=\"task\" class=\"task-panel-scroll-container full-width full-height\">\n <div *ngTemplateOutlet='pageHeader ?? defaultPageHeader'></div>\n <nc-task-panel\n [textEllipsis]='textEllipsis'\n [taskPanelData]='task'\n [selectedHeaders$]='selectedHeaders$'\n [forceLoadDataOnOpen]='forceLoadDataOnOpen'\n [responsiveBody]='responsiveBody'\n (taskEvent)='emitTaskEvent($event)'\n (panelRefOutput)='setPanelRef($event)'\n [preventCollapse]='preventCollapse'\n [hidePanelHeader]='hidePanelHeader'\n [actionButtonTemplates]='actionButtonTemplates'\n [actionRowJustifyContent]='actionRowJustifyContent'\n [first]='true'\n [last]='true'\n [hideActionRow]=\"hideActionRow\"\n class='panel-expanded-spacing'>\n </nc-task-panel>\n\n <div *ngIf='loading$ | async' fxLayout='column' fxLayoutAlign='center center'>\n <mat-spinner color='primary' diameter='52'></mat-spinner>\n </div>\n <div *ngTemplateOutlet='pageFooter ?? defaultPageFooter'></div>\n </div>\n\n <ng-template #defaultNoTaskSection>\n <mat-icon color='accent'>check_box</mat-icon>\n <span class='font-size-20'>{{ 'tasks.view.noTasksSatisfyingThisFilter' | translate }}</span>\n </ng-template>\n\n <ng-template #defaultPageHeader>\n <mat-card class=\"top-card\" *ngIf=\"showPageHeader\">\n <span class=\"top-card-title\"><strong>{{headerTitle ?? (!!task && !!task.task ? task.task.title : '')}}</strong></span>\n </mat-card>\n </ng-template>\n\n <ng-template #defaultPageFooter>\n <mat-card class='bottom-card footer' *ngIf=\"showPageFooter\">\n <span class=\"bottom-card-title footer-font\"><strong>{{footerText ?? 'tasks.footer.defaultText' | translate}}</strong></span>\n </mat-card>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".font-size-20{font-size:20px}.full-width{width:100%}.full-height{height:100%}.top-card{margin-bottom:10px;margin-top:10px}.top-card-title{display:flex;align-items:center;flex-direction:column}.bottom-card{margin-bottom:10px;margin-top:10px}.bottom-card-title{display:block;align-items:start;flex-direction:column}\n"] }]
27
27
  }], ctorParameters: () => [{ type: i1.LoggerService }, { type: i2.ActivatedRoute }, { type: undefined, decorators: [{
28
28
  type: Optional
29
29
  }, {
30
30
  type: Inject,
31
31
  args: [NAE_TAB_DATA]
32
32
  }] }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXRhc2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvcGFuZWwvdGFzay1wYW5lbC1zaW5nbGUvc2luZ2xlLXRhc2suY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvcGFuZWwvdGFzay1wYW5lbC1zaW5nbGUvc2luZ2xlLXRhc2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFDSCwyQkFBMkIsRUFHM0IsWUFBWSxFQUNmLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7O0FBUWxDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSwyQkFBMkI7SUFFNUM7SUFDQTtJQUR0QixZQUFzQixJQUFtQixFQUNuQixNQUFzQixFQUNFLGdCQUFpQztRQUMzRSxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBSHBCLFNBQUksR0FBSixJQUFJLENBQWU7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7SUFHNUMsQ0FBQzt3R0FOVSxtQkFBbUIsNkVBSUUsWUFBWTs0RkFKakMsbUJBQW1CLDZFQ2RoQywwOUVBb0RBOzs0RkR0Q2EsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGdCQUFnQjs7MEJBUWIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0U2luZ2xlVGFza0NvbXBvbmVudCxcbiAgICBJbmplY3RlZFRhYkRhdGEsXG4gICAgTG9nZ2VyU2VydmljZSxcbiAgICBOQUVfVEFCX0RBVEFcbn0gZnJvbSAnQG5ldGdyaWYvY29tcG9uZW50cy1jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmMtc2luZ2xlLXRhc2snLFxuICB0ZW1wbGF0ZVVybDogJy4vc2luZ2xlLXRhc2suY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaW5nbGUtdGFzay5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNpbmdsZVRhc2tDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdFNpbmdsZVRhc2tDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOQUVfVEFCX0RBVEEpIF9pbmplY3RlZFRhYkRhdGE6IEluamVjdGVkVGFiRGF0YSkge1xuICAgICAgc3VwZXIoX2xvZywgX3JvdXRlLCBfaW5qZWN0ZWRUYWJEYXRhKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGZ4TGF5b3V0PSdjb2x1bW4nIGZ4TGF5b3V0QWxpZ249J3N0YXJ0IGNlbnRlcicgZnhGbGV4PlxuICAgIDxuZy1jb250YWluZXIgKm5jY0xldD1cIih0YXNrJCB8IGFzeW5jKSBhcyB0YXNrXCI+XG5cbiAgICAgICAgPGRpdiAqbmdJZj0nKGxvYWRpbmckIHwgYXN5bmMpID09PSBmYWxzZSAmJiAhdGFzaycgZnhMYXlvdXQ9J2NvbHVtbicgZnhMYXlvdXRBbGlnbj0nY2VudGVyIGNlbnRlcidcbiAgICAgICAgICAgICBmeEZsZXg+XG4gICAgICAgICAgICA8ZGl2ICpuZ1RlbXBsYXRlT3V0bGV0ID1cIm5vVGFza1NlY3Rpb24gPz8gZGVmYXVsdE5vVGFza1NlY3Rpb25cIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInRhc2tcIiBjbGFzcz1cInRhc2stcGFuZWwtc2Nyb2xsLWNvbnRhaW5lciBmdWxsLXdpZHRoIGZ1bGwtaGVpZ2h0XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ1RlbXBsYXRlT3V0bGV0PSdwYWdlSGVhZGVyID8/IGRlZmF1bHRQYWdlSGVhZGVyJz48L2Rpdj5cbiAgICAgICAgICAgIDxuYy10YXNrLXBhbmVsXG4gICAgICAgICAgICAgICAgW3RleHRFbGxpcHNpc109J3RleHRFbGxpcHNpcydcbiAgICAgICAgICAgICAgICBbdGFza1BhbmVsRGF0YV09J3Rhc2snXG4gICAgICAgICAgICAgICAgW3NlbGVjdGVkSGVhZGVycyRdPSdzZWxlY3RlZEhlYWRlcnMkJ1xuICAgICAgICAgICAgICAgIFtmb3JjZUxvYWREYXRhT25PcGVuXT0nZm9yY2VMb2FkRGF0YU9uT3BlbidcbiAgICAgICAgICAgICAgICBbcmVzcG9uc2l2ZUJvZHldPSdyZXNwb25zaXZlQm9keSdcbiAgICAgICAgICAgICAgICAodGFza0V2ZW50KT0nZW1pdFRhc2tFdmVudCgkZXZlbnQpJ1xuICAgICAgICAgICAgICAgIChwYW5lbFJlZk91dHB1dCk9J3NldFBhbmVsUmVmKCRldmVudCknXG4gICAgICAgICAgICAgICAgW3ByZXZlbnRDb2xsYXBzZV09J3ByZXZlbnRDb2xsYXBzZSdcbiAgICAgICAgICAgICAgICBbaGlkZVBhbmVsSGVhZGVyXT0naGlkZVBhbmVsSGVhZGVyJ1xuICAgICAgICAgICAgICAgIFthY3Rpb25CdXR0b25UZW1wbGF0ZXNdPSdhY3Rpb25CdXR0b25UZW1wbGF0ZXMnXG4gICAgICAgICAgICAgICAgW2FjdGlvblJvd0p1c3RpZnlDb250ZW50XT0nYWN0aW9uUm93SnVzdGlmeUNvbnRlbnQnXG4gICAgICAgICAgICAgICAgW2ZpcnN0XT0ndHJ1ZSdcbiAgICAgICAgICAgICAgICBbbGFzdF09J3RydWUnXG4gICAgICAgICAgICAgICAgW2hpZGVBY3Rpb25Sb3ddPVwiaGlkZUFjdGlvblJvd1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9J3BhbmVsLWV4cGFuZGVkLXNwYWNpbmcgc2luZ2xlLXRhc2stZml4Jz5cbiAgICAgICAgICAgIDwvbmMtdGFzay1wYW5lbD5cblxuICAgICAgICAgICAgPGRpdiAqbmdJZj0nbG9hZGluZyQgfCBhc3luYycgZnhMYXlvdXQ9J2NvbHVtbicgZnhMYXlvdXRBbGlnbj0nY2VudGVyIGNlbnRlcic+XG4gICAgICAgICAgICAgICAgPG1hdC1zcGlubmVyIGNvbG9yPSdwcmltYXJ5JyBkaWFtZXRlcj0nNTInPjwvbWF0LXNwaW5uZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKm5nVGVtcGxhdGVPdXRsZXQ9J3BhZ2VGb290ZXIgPz8gZGVmYXVsdFBhZ2VGb290ZXInPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHROb1Rhc2tTZWN0aW9uPlxuICAgICAgICAgICAgPG1hdC1pY29uIGNvbG9yPSdhY2NlbnQnPmNoZWNrX2JveDwvbWF0LWljb24+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz0nZm9udC1zaXplLTIwJz57eyAndGFza3Mudmlldy5ub1Rhc2tzU2F0aXNmeWluZ1RoaXNGaWx0ZXInIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFBhZ2VIZWFkZXI+XG4gICAgICAgICAgICA8bWF0LWNhcmQgY2xhc3M9XCJ0b3AtY2FyZFwiICpuZ0lmPVwic2hvd1BhZ2VIZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRvcC1jYXJkLXRpdGxlXCI+PHN0cm9uZz57e2hlYWRlclRpdGxlID8/ICghIXRhc2sgJiYgISF0YXNrLnRhc2sgPyB0YXNrLnRhc2sudGl0bGUgOiAnJyl9fTwvc3Ryb25nPjwvc3Bhbj5cbiAgICAgICAgICAgIDwvbWF0LWNhcmQ+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0UGFnZUZvb3Rlcj5cbiAgICAgICAgICAgIDxtYXQtY2FyZCBjbGFzcz0nYm90dG9tLWNhcmQgZm9vdGVyJyAqbmdJZj1cInNob3dQYWdlRm9vdGVyXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJib3R0b20tY2FyZC10aXRsZSBmb290ZXItZm9udFwiPjxzdHJvbmc+e3tmb290ZXJUZXh0ID8/ICd0YXNrcy5mb290ZXIuZGVmYXVsdFRleHQnIHwgdHJhbnNsYXRlfX08L3N0cm9uZz48L3NwYW4+XG4gICAgICAgICAgICA8L21hdC1jYXJkPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlLXRhc2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvcGFuZWwvdGFzay1wYW5lbC1zaW5nbGUvc2luZ2xlLXRhc2suY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvcGFuZWwvdGFzay1wYW5lbC1zaW5nbGUvc2luZ2xlLXRhc2suY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVELE9BQU8sRUFDSCwyQkFBMkIsRUFHM0IsWUFBWSxFQUNmLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7O0FBUWxDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSwyQkFBMkI7SUFFNUM7SUFDQTtJQUR0QixZQUFzQixJQUFtQixFQUNuQixNQUFzQixFQUNFLGdCQUFpQztRQUMzRSxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBSHBCLFNBQUksR0FBSixJQUFJLENBQWU7UUFDbkIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7SUFHNUMsQ0FBQzt3R0FOVSxtQkFBbUIsNkVBSUUsWUFBWTs0RkFKakMsbUJBQW1CLDZFQ2RoQywwOEVBb0RBOzs0RkR0Q2EsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGdCQUFnQjs7MEJBUWIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbmplY3QsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIEFic3RyYWN0U2luZ2xlVGFza0NvbXBvbmVudCxcbiAgICBJbmplY3RlZFRhYkRhdGEsXG4gICAgTG9nZ2VyU2VydmljZSxcbiAgICBOQUVfVEFCX0RBVEFcbn0gZnJvbSAnQG5ldGdyaWYvY29tcG9uZW50cy1jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmMtc2luZ2xlLXRhc2snLFxuICB0ZW1wbGF0ZVVybDogJy4vc2luZ2xlLXRhc2suY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaW5nbGUtdGFzay5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNpbmdsZVRhc2tDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdFNpbmdsZVRhc2tDb21wb25lbnQge1xuXG4gIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfbG9nOiBMb2dnZXJTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3JvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOQUVfVEFCX0RBVEEpIF9pbmplY3RlZFRhYkRhdGE6IEluamVjdGVkVGFiRGF0YSkge1xuICAgICAgc3VwZXIoX2xvZywgX3JvdXRlLCBfaW5qZWN0ZWRUYWJEYXRhKTtcbiAgfVxuXG59XG4iLCI8ZGl2IGZ4TGF5b3V0PSdjb2x1bW4nIGZ4TGF5b3V0QWxpZ249J3N0YXJ0IGNlbnRlcicgZnhGbGV4PlxuICAgIDxuZy1jb250YWluZXIgKm5jY0xldD1cIih0YXNrJCB8IGFzeW5jKSBhcyB0YXNrXCI+XG5cbiAgICAgICAgPGRpdiAqbmdJZj0nKGxvYWRpbmckIHwgYXN5bmMpID09PSBmYWxzZSAmJiAhdGFzaycgZnhMYXlvdXQ9J2NvbHVtbicgZnhMYXlvdXRBbGlnbj0nY2VudGVyIGNlbnRlcidcbiAgICAgICAgICAgICBmeEZsZXg+XG4gICAgICAgICAgICA8ZGl2ICpuZ1RlbXBsYXRlT3V0bGV0ID1cIm5vVGFza1NlY3Rpb24gPz8gZGVmYXVsdE5vVGFza1NlY3Rpb25cIj48L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiAqbmdJZj1cInRhc2tcIiBjbGFzcz1cInRhc2stcGFuZWwtc2Nyb2xsLWNvbnRhaW5lciBmdWxsLXdpZHRoIGZ1bGwtaGVpZ2h0XCI+XG4gICAgICAgICAgICA8ZGl2ICpuZ1RlbXBsYXRlT3V0bGV0PSdwYWdlSGVhZGVyID8/IGRlZmF1bHRQYWdlSGVhZGVyJz48L2Rpdj5cbiAgICAgICAgICAgIDxuYy10YXNrLXBhbmVsXG4gICAgICAgICAgICAgICAgW3RleHRFbGxpcHNpc109J3RleHRFbGxpcHNpcydcbiAgICAgICAgICAgICAgICBbdGFza1BhbmVsRGF0YV09J3Rhc2snXG4gICAgICAgICAgICAgICAgW3NlbGVjdGVkSGVhZGVycyRdPSdzZWxlY3RlZEhlYWRlcnMkJ1xuICAgICAgICAgICAgICAgIFtmb3JjZUxvYWREYXRhT25PcGVuXT0nZm9yY2VMb2FkRGF0YU9uT3BlbidcbiAgICAgICAgICAgICAgICBbcmVzcG9uc2l2ZUJvZHldPSdyZXNwb25zaXZlQm9keSdcbiAgICAgICAgICAgICAgICAodGFza0V2ZW50KT0nZW1pdFRhc2tFdmVudCgkZXZlbnQpJ1xuICAgICAgICAgICAgICAgIChwYW5lbFJlZk91dHB1dCk9J3NldFBhbmVsUmVmKCRldmVudCknXG4gICAgICAgICAgICAgICAgW3ByZXZlbnRDb2xsYXBzZV09J3ByZXZlbnRDb2xsYXBzZSdcbiAgICAgICAgICAgICAgICBbaGlkZVBhbmVsSGVhZGVyXT0naGlkZVBhbmVsSGVhZGVyJ1xuICAgICAgICAgICAgICAgIFthY3Rpb25CdXR0b25UZW1wbGF0ZXNdPSdhY3Rpb25CdXR0b25UZW1wbGF0ZXMnXG4gICAgICAgICAgICAgICAgW2FjdGlvblJvd0p1c3RpZnlDb250ZW50XT0nYWN0aW9uUm93SnVzdGlmeUNvbnRlbnQnXG4gICAgICAgICAgICAgICAgW2ZpcnN0XT0ndHJ1ZSdcbiAgICAgICAgICAgICAgICBbbGFzdF09J3RydWUnXG4gICAgICAgICAgICAgICAgW2hpZGVBY3Rpb25Sb3ddPVwiaGlkZUFjdGlvblJvd1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9J3BhbmVsLWV4cGFuZGVkLXNwYWNpbmcnPlxuICAgICAgICAgICAgPC9uYy10YXNrLXBhbmVsPlxuXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPSdsb2FkaW5nJCB8IGFzeW5jJyBmeExheW91dD0nY29sdW1uJyBmeExheW91dEFsaWduPSdjZW50ZXIgY2VudGVyJz5cbiAgICAgICAgICAgICAgICA8bWF0LXNwaW5uZXIgY29sb3I9J3ByaW1hcnknIGRpYW1ldGVyPSc1Mic+PC9tYXQtc3Bpbm5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiAqbmdUZW1wbGF0ZU91dGxldD0ncGFnZUZvb3RlciA/PyBkZWZhdWx0UGFnZUZvb3Rlcic+PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdE5vVGFza1NlY3Rpb24+XG4gICAgICAgICAgICA8bWF0LWljb24gY29sb3I9J2FjY2VudCc+Y2hlY2tfYm94PC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSdmb250LXNpemUtMjAnPnt7ICd0YXNrcy52aWV3Lm5vVGFza3NTYXRpc2Z5aW5nVGhpc0ZpbHRlcicgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgICAgPG5nLXRlbXBsYXRlICNkZWZhdWx0UGFnZUhlYWRlcj5cbiAgICAgICAgICAgIDxtYXQtY2FyZCBjbGFzcz1cInRvcC1jYXJkXCIgKm5nSWY9XCJzaG93UGFnZUhlYWRlclwiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidG9wLWNhcmQtdGl0bGVcIj48c3Ryb25nPnt7aGVhZGVyVGl0bGUgPz8gKCEhdGFzayAmJiAhIXRhc2sudGFzayA/IHRhc2sudGFzay50aXRsZSA6ICcnKX19PC9zdHJvbmc+PC9zcGFuPlxuICAgICAgICAgICAgPC9tYXQtY2FyZD5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRQYWdlRm9vdGVyPlxuICAgICAgICAgICAgPG1hdC1jYXJkIGNsYXNzPSdib3R0b20tY2FyZCBmb290ZXInICpuZ0lmPVwic2hvd1BhZ2VGb290ZXJcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJvdHRvbS1jYXJkLXRpdGxlIGZvb3Rlci1mb250XCI+PHN0cm9uZz57e2Zvb3RlclRleHQgPz8gJ3Rhc2tzLmZvb3Rlci5kZWZhdWx0VGV4dCcgfCB0cmFuc2xhdGV9fTwvc3Ryb25nPjwvc3Bhbj5cbiAgICAgICAgICAgIDwvbWF0LWNhcmQ+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==