tin-spa 2.3.5 → 2.3.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/esm2020/lib/classes/Classes.mjs +2 -1
  2. package/esm2020/lib/classes/TinCore.mjs +3 -2
  3. package/esm2020/lib/components/accounts/accountDialog.component.mjs +1 -1
  4. package/esm2020/lib/components/change-password/change-password.component.mjs +1 -1
  5. package/esm2020/lib/components/create-account/create-account.component.mjs +2 -4
  6. package/esm2020/lib/components/date/date.component.mjs +18 -6
  7. package/esm2020/lib/components/datetime/datetime.component.mjs +19 -6
  8. package/esm2020/lib/components/filter/filter.component.mjs +1 -2
  9. package/esm2020/lib/components/form/form.component.mjs +17 -21
  10. package/esm2020/lib/components/inventory/inventory.component.mjs +1 -2
  11. package/esm2020/lib/components/inventory/quantityDialog.component.mjs +1 -1
  12. package/esm2020/lib/components/label/label.component.mjs +3 -3
  13. package/esm2020/lib/components/login/login.component.mjs +1 -1
  14. package/esm2020/lib/components/message/messageDialog.component.mjs +3 -3
  15. package/esm2020/lib/components/money/money.component.mjs +18 -6
  16. package/esm2020/lib/components/number/number.component.mjs +19 -5
  17. package/esm2020/lib/components/option/option.component.mjs +1 -1
  18. package/esm2020/lib/components/profile/profile.component.mjs +2 -4
  19. package/esm2020/lib/components/recover-account/recover-account.component.mjs +1 -1
  20. package/esm2020/lib/components/select/select.component.mjs +60 -12
  21. package/esm2020/lib/components/signup/signup.component.mjs +1 -1
  22. package/esm2020/lib/components/table/detailsDialog.component.mjs +24 -7
  23. package/esm2020/lib/components/table/table.component.mjs +25 -14
  24. package/esm2020/lib/components/table-internal/detailsDialog-internal.component.mjs +24 -7
  25. package/esm2020/lib/components/table-internal/table-internal.component.mjs +30 -14
  26. package/esm2020/lib/components/table-row/table-row.component.mjs +1 -1
  27. package/esm2020/lib/components/tenant-settings/inviteDialog.component.mjs +1 -1
  28. package/esm2020/lib/components/tenant-settings/tenant-settings.component.mjs +2 -3
  29. package/esm2020/lib/components/text/text.component.mjs +15 -3
  30. package/esm2020/lib/components/tiles/tiles.component.mjs +1 -2
  31. package/esm2020/lib/components/transactions/transactDialog.component.mjs +1 -1
  32. package/esm2020/lib/components/users/users.component.mjs +1 -2
  33. package/esm2020/lib/components/viewer/viewer.component.mjs +1 -3
  34. package/esm2020/lib/components/welcome/welcome.component.mjs +1 -1
  35. package/esm2020/lib/services/dialog.service.mjs +44 -1
  36. package/esm2020/lib/services/table-config.service.mjs +7 -3
  37. package/fesm2015/tin-spa.mjs +315 -130
  38. package/fesm2015/tin-spa.mjs.map +1 -1
  39. package/fesm2020/tin-spa.mjs +314 -130
  40. package/fesm2020/tin-spa.mjs.map +1 -1
  41. package/lib/classes/Classes.d.ts +13 -3
  42. package/lib/components/date/date.component.d.ts +4 -1
  43. package/lib/components/datetime/datetime.component.d.ts +4 -1
  44. package/lib/components/form/form.component.d.ts +1 -0
  45. package/lib/components/money/money.component.d.ts +4 -1
  46. package/lib/components/number/number.component.d.ts +5 -1
  47. package/lib/components/select/select.component.d.ts +16 -2
  48. package/lib/components/table/detailsDialog.component.d.ts +4 -2
  49. package/lib/components/table/table.component.d.ts +1 -0
  50. package/lib/components/table-internal/detailsDialog-internal.component.d.ts +4 -2
  51. package/lib/components/table-internal/table-internal.component.d.ts +1 -0
  52. package/lib/components/text/text.component.d.ts +5 -1
  53. package/lib/services/dialog.service.d.ts +2 -1
  54. package/lib/services/table-config.service.d.ts +2 -1
  55. package/package.json +1 -1
@@ -11,6 +11,7 @@ import * as i5 from "@angular/material/form-field";
11
11
  import * as i6 from "@angular/material/input";
12
12
  import * as i7 from "@angular/material/core";
13
13
  import * as i8 from "@angular/material/autocomplete";
14
+ import * as i9 from "@angular/material/tooltip";
14
15
  export class TextComponent {
15
16
  constructor() {
16
17
  this.multiDimension = false;
@@ -37,6 +38,7 @@ export class TextComponent {
37
38
  this.min = 0;
38
39
  this.max = 9000000000000000; //Math.max
39
40
  this.regex = ""; //"[a-zA-Z ]*" //"/\S+@\S+\.\S+/";
41
+ this.infoClick = new EventEmitter();
40
42
  //validation
41
43
  this.myControl = new FormControl('', [Validators.required, Validators.minLength(this.min), Validators.maxLength(this.max), Validators.pattern(this.regex)]);
42
44
  this.control = new FormControl(this.value, [Validators.required, Validators.minLength(this.min), Validators.maxLength(this.max), Validators.pattern(this.regex)]);
@@ -56,6 +58,10 @@ export class TextComponent {
56
58
  this.initControl(this.control);
57
59
  this.initControl(this.myControl);
58
60
  }
61
+ onInfoClick(event) {
62
+ event.stopPropagation();
63
+ this.infoClick.emit();
64
+ }
59
65
  initFilter() {
60
66
  const objKeyList = Object.keys(this.options[0]);
61
67
  const firstKey = objKeyList[0];
@@ -125,10 +131,10 @@ export class TextComponent {
125
131
  }
126
132
  }
127
133
  TextComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
128
- TextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TextComponent, selector: "spa-text", inputs: { readonly: "readonly", hint: "hint", display: "display", placeholder: "placeholder", value: "value", format: "format", type: "type", rows: "rows", width: "width", options: "options", optionValue: "optionValue", required: "required", min: "min", max: "max", regex: "regex" }, outputs: { valueChange: "valueChange", leave: "leave", enterPress: "enterPress" }, ngImport: i0, template: "\r\n<!-- General Text -->\r\n<mat-form-field *ngIf=\"(!rows || rows == 1) && (format=='text' || format =='date') && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\" >\r\n<mat-label *ngIf=\"format=='text'\">{{display}}</mat-label>\r\n<mat-label *ngIf=\"format=='date'\">{{display | date:'dd/MM/yyyy'}}</mat-label>\r\n<input matInput autocomplete=\"off\" [(ngModel)]=\"value\" (change)=\"changed()\" (blur)=\"leaved()\" (keyup.enter)=\"enterPressed()\" [type]=\"type\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"/>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n</mat-form-field>\r\n\r\n\r\n<!-- password -->\r\n<mat-form-field class=\"spa-text\" *ngIf=\"format=='password'\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px\">\r\n <mat-label>{{display}}</mat-label>\r\n <input matInput [type]=\"hide ? 'password' : 'text'\" (keyup.enter)=\"enterPressed()\" (change)=\"changed()\" (blur)=\"leaved()\" [(ngModel)]=\"value\" autocomplete=\"off\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <button mat-icon-button matSuffix (click)=\"hide = !hide\" [attr.aria-label]=\"'Hide password'\" [attr.aria-pressed]=\"hide\">\r\n <mat-icon style=\"font-size: 18px;\">{{hide ? 'visibility_off' : 'visibility'}}</mat-icon>\r\n </button>\r\n</mat-form-field>\r\n\r\n\r\n<!-- TextArea copy - Only change input to textarea and change ngif to not -->\r\n\r\n<mat-form-field *ngIf=\"rows > 1 && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n<mat-label>{{display}}</mat-label>\r\n<textarea matInput autocomplete=\"off\" [rows]=\"rows\" [(ngModel)]=\"value\" (change)=\"changed()\" (keyup.enter)=\"enterPressed()\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"></textarea>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n</mat-form-field>\r\n\r\n\r\n\r\n<!-- Auto Complete-->\r\n\r\n <mat-form-field *ngIf=\"(!rows || rows == 1) && format=='text' && options.length>0 \" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n <mat-label>{{display}}</mat-label>\r\n <input [type]=\"type\" [placeholder]=\"placeholder\" [(ngModel)]=\"value\" (change)=\"changed()\" matInput [formControl]=\"myControl\" [matAutocomplete]=\"auto\" [required]=\"required\" [readonly]=\"readonly\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(myControl)}}</mat-error>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"changed()\">\r\n\r\n <ng-container *ngIf=\"!multiDimension\">\r\n <mat-option *ngFor=\"let option of filteredOptions | async\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"multiDimension\">\r\n <mat-option *ngFor=\"let row of filteredOptions | async\" [value]=\"row[optionValue]\">\r\n {{row[optionValue]}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i6.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: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i8.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i8.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
134
+ TextComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TextComponent, selector: "spa-text", inputs: { readonly: "readonly", hint: "hint", display: "display", placeholder: "placeholder", value: "value", format: "format", type: "type", rows: "rows", width: "width", options: "options", optionValue: "optionValue", required: "required", min: "min", max: "max", regex: "regex", suffix: "suffix", infoMessage: "infoMessage" }, outputs: { valueChange: "valueChange", leave: "leave", enterPress: "enterPress", infoClick: "infoClick" }, ngImport: i0, template: "\r\n<!-- General Text -->\r\n<mat-form-field *ngIf=\"(!rows || rows == 1) && (format=='text' || format =='date') && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\" >\r\n<mat-label *ngIf=\"format=='text'\">{{display}}</mat-label>\r\n<mat-label *ngIf=\"format=='date'\">{{display | date:'dd/MM/yyyy'}}</mat-label>\r\n<input matInput autocomplete=\"off\" [(ngModel)]=\"value\" (change)=\"changed()\" (blur)=\"leaved()\" (keyup.enter)=\"enterPressed()\" [type]=\"type\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"/>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <div matSuffix class=\"suffix-icons\">\r\n <label *ngIf=\"suffix\">{{suffix}}</label>\r\n <button mat-icon-button *ngIf=\"infoMessage\" (click)=\"onInfoClick($event)\" matTooltip=\"Info\" matTooltipPosition=\"above\">\r\n <mat-icon style=\"color: steelblue;\">info</mat-icon>\r\n </button>\r\n\r\n </div>\r\n</mat-form-field>\r\n\r\n\r\n<!-- password -->\r\n<mat-form-field class=\"spa-text\" *ngIf=\"format=='password'\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px\">\r\n <mat-label>{{display}}</mat-label>\r\n <input matInput [type]=\"hide ? 'password' : 'text'\" (keyup.enter)=\"enterPressed()\" (change)=\"changed()\" (blur)=\"leaved()\" [(ngModel)]=\"value\" autocomplete=\"off\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <button mat-icon-button matSuffix (click)=\"hide = !hide\" [attr.aria-label]=\"'Hide password'\" [attr.aria-pressed]=\"hide\">\r\n <mat-icon style=\"font-size: 18px;\">{{hide ? 'visibility_off' : 'visibility'}}</mat-icon>\r\n </button>\r\n</mat-form-field>\r\n\r\n\r\n<!-- TextArea copy - Only change input to textarea and change ngif to not -->\r\n\r\n<mat-form-field *ngIf=\"rows > 1 && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n<mat-label>{{display}}</mat-label>\r\n<textarea matInput autocomplete=\"off\" [rows]=\"rows\" [(ngModel)]=\"value\" (change)=\"changed()\" (keyup.enter)=\"enterPressed()\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"></textarea>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <div matSuffix class=\"suffix-icons\">\r\n <button mat-icon-button *ngIf=\"infoMessage\" (click)=\"onInfoClick($event)\" matTooltip=\"Info\" matTooltipPosition=\"above\">\r\n <mat-icon style=\"color: steelblue;\">info</mat-icon>\r\n </button>\r\n </div>\r\n</mat-form-field>\r\n\r\n\r\n\r\n<!-- Auto Complete-->\r\n\r\n <mat-form-field *ngIf=\"(!rows || rows == 1) && format=='text' && options.length>0 \" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n <mat-label>{{display}}</mat-label>\r\n <input [type]=\"type\" [placeholder]=\"placeholder\" [(ngModel)]=\"value\" (change)=\"changed()\" matInput [formControl]=\"myControl\" [matAutocomplete]=\"auto\" [required]=\"required\" [readonly]=\"readonly\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(myControl)}}</mat-error>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"changed()\">\r\n\r\n <ng-container *ngIf=\"!multiDimension\">\r\n <mat-option *ngFor=\"let option of filteredOptions | async\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"multiDimension\">\r\n <mat-option *ngFor=\"let row of filteredOptions | async\" [value]=\"row[optionValue]\">\r\n {{row[optionValue]}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n\r\n </mat-autocomplete>\r\n <div matSuffix class=\"suffix-icons\">\r\n <button mat-icon-button *ngIf=\"infoMessage\" (click)=\"onInfoClick($event)\" matTooltip=\"Info\" matTooltipPosition=\"above\">\r\n <mat-icon style=\"color: steelblue;\">info</mat-icon>\r\n </button>\r\n </div>\r\n </mat-form-field>\r\n\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i5.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatSuffix, selector: "[matSuffix]" }, { kind: "directive", type: i6.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: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i8.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { kind: "directive", type: i8.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { kind: "directive", type: i9.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.DatePipe, name: "date" }] });
129
135
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextComponent, decorators: [{
130
136
  type: Component,
131
- args: [{ selector: 'spa-text', template: "\r\n<!-- General Text -->\r\n<mat-form-field *ngIf=\"(!rows || rows == 1) && (format=='text' || format =='date') && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\" >\r\n<mat-label *ngIf=\"format=='text'\">{{display}}</mat-label>\r\n<mat-label *ngIf=\"format=='date'\">{{display | date:'dd/MM/yyyy'}}</mat-label>\r\n<input matInput autocomplete=\"off\" [(ngModel)]=\"value\" (change)=\"changed()\" (blur)=\"leaved()\" (keyup.enter)=\"enterPressed()\" [type]=\"type\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"/>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n</mat-form-field>\r\n\r\n\r\n<!-- password -->\r\n<mat-form-field class=\"spa-text\" *ngIf=\"format=='password'\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px\">\r\n <mat-label>{{display}}</mat-label>\r\n <input matInput [type]=\"hide ? 'password' : 'text'\" (keyup.enter)=\"enterPressed()\" (change)=\"changed()\" (blur)=\"leaved()\" [(ngModel)]=\"value\" autocomplete=\"off\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <button mat-icon-button matSuffix (click)=\"hide = !hide\" [attr.aria-label]=\"'Hide password'\" [attr.aria-pressed]=\"hide\">\r\n <mat-icon style=\"font-size: 18px;\">{{hide ? 'visibility_off' : 'visibility'}}</mat-icon>\r\n </button>\r\n</mat-form-field>\r\n\r\n\r\n<!-- TextArea copy - Only change input to textarea and change ngif to not -->\r\n\r\n<mat-form-field *ngIf=\"rows > 1 && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n<mat-label>{{display}}</mat-label>\r\n<textarea matInput autocomplete=\"off\" [rows]=\"rows\" [(ngModel)]=\"value\" (change)=\"changed()\" (keyup.enter)=\"enterPressed()\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"></textarea>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n</mat-form-field>\r\n\r\n\r\n\r\n<!-- Auto Complete-->\r\n\r\n <mat-form-field *ngIf=\"(!rows || rows == 1) && format=='text' && options.length>0 \" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n <mat-label>{{display}}</mat-label>\r\n <input [type]=\"type\" [placeholder]=\"placeholder\" [(ngModel)]=\"value\" (change)=\"changed()\" matInput [formControl]=\"myControl\" [matAutocomplete]=\"auto\" [required]=\"required\" [readonly]=\"readonly\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(myControl)}}</mat-error>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"changed()\">\r\n\r\n <ng-container *ngIf=\"!multiDimension\">\r\n <mat-option *ngFor=\"let option of filteredOptions | async\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"multiDimension\">\r\n <mat-option *ngFor=\"let row of filteredOptions | async\" [value]=\"row[optionValue]\">\r\n {{row[optionValue]}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n\r\n </mat-autocomplete>\r\n </mat-form-field>\r\n\r\n" }]
137
+ args: [{ selector: 'spa-text', template: "\r\n<!-- General Text -->\r\n<mat-form-field *ngIf=\"(!rows || rows == 1) && (format=='text' || format =='date') && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\" >\r\n<mat-label *ngIf=\"format=='text'\">{{display}}</mat-label>\r\n<mat-label *ngIf=\"format=='date'\">{{display | date:'dd/MM/yyyy'}}</mat-label>\r\n<input matInput autocomplete=\"off\" [(ngModel)]=\"value\" (change)=\"changed()\" (blur)=\"leaved()\" (keyup.enter)=\"enterPressed()\" [type]=\"type\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"/>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <div matSuffix class=\"suffix-icons\">\r\n <label *ngIf=\"suffix\">{{suffix}}</label>\r\n <button mat-icon-button *ngIf=\"infoMessage\" (click)=\"onInfoClick($event)\" matTooltip=\"Info\" matTooltipPosition=\"above\">\r\n <mat-icon style=\"color: steelblue;\">info</mat-icon>\r\n </button>\r\n\r\n </div>\r\n</mat-form-field>\r\n\r\n\r\n<!-- password -->\r\n<mat-form-field class=\"spa-text\" *ngIf=\"format=='password'\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px\">\r\n <mat-label>{{display}}</mat-label>\r\n <input matInput [type]=\"hide ? 'password' : 'text'\" (keyup.enter)=\"enterPressed()\" (change)=\"changed()\" (blur)=\"leaved()\" [(ngModel)]=\"value\" autocomplete=\"off\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <button mat-icon-button matSuffix (click)=\"hide = !hide\" [attr.aria-label]=\"'Hide password'\" [attr.aria-pressed]=\"hide\">\r\n <mat-icon style=\"font-size: 18px;\">{{hide ? 'visibility_off' : 'visibility'}}</mat-icon>\r\n </button>\r\n</mat-form-field>\r\n\r\n\r\n<!-- TextArea copy - Only change input to textarea and change ngif to not -->\r\n\r\n<mat-form-field *ngIf=\"rows > 1 && options.length==0\" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n<mat-label>{{display}}</mat-label>\r\n<textarea matInput autocomplete=\"off\" [rows]=\"rows\" [(ngModel)]=\"value\" (change)=\"changed()\" (keyup.enter)=\"enterPressed()\" [placeholder]=\"placeholder\" [formControl]=\"control\" [required]=\"required\" [readonly]=\"readonly\"></textarea>\r\n<mat-error *ngIf=\"control.invalid\">{{validate(control)}}</mat-error>\r\n <div matSuffix class=\"suffix-icons\">\r\n <button mat-icon-button *ngIf=\"infoMessage\" (click)=\"onInfoClick($event)\" matTooltip=\"Info\" matTooltipPosition=\"above\">\r\n <mat-icon style=\"color: steelblue;\">info</mat-icon>\r\n </button>\r\n </div>\r\n</mat-form-field>\r\n\r\n\r\n\r\n<!-- Auto Complete-->\r\n\r\n <mat-form-field *ngIf=\"(!rows || rows == 1) && format=='text' && options.length>0 \" [hideRequiredMarker]=\"!required\" [hintLabel]=\"hint\" [ngStyle]=\"{'width':width}\" style=\"margin-right: 5px;\">\r\n <mat-label>{{display}}</mat-label>\r\n <input [type]=\"type\" [placeholder]=\"placeholder\" [(ngModel)]=\"value\" (change)=\"changed()\" matInput [formControl]=\"myControl\" [matAutocomplete]=\"auto\" [required]=\"required\" [readonly]=\"readonly\">\r\n <mat-error *ngIf=\"control.invalid\">{{validate(myControl)}}</mat-error>\r\n <mat-autocomplete #auto=\"matAutocomplete\" (optionSelected)=\"changed()\">\r\n\r\n <ng-container *ngIf=\"!multiDimension\">\r\n <mat-option *ngFor=\"let option of filteredOptions | async\" [value]=\"option\">\r\n {{option}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"multiDimension\">\r\n <mat-option *ngFor=\"let row of filteredOptions | async\" [value]=\"row[optionValue]\">\r\n {{row[optionValue]}}\r\n </mat-option>\r\n </ng-container>\r\n\r\n\r\n </mat-autocomplete>\r\n <div matSuffix class=\"suffix-icons\">\r\n <button mat-icon-button *ngIf=\"infoMessage\" (click)=\"onInfoClick($event)\" matTooltip=\"Info\" matTooltipPosition=\"above\">\r\n <mat-icon style=\"color: steelblue;\">info</mat-icon>\r\n </button>\r\n </div>\r\n </mat-form-field>\r\n\r\n" }]
132
138
  }], ctorParameters: function () { return []; }, propDecorators: { readonly: [{
133
139
  type: Input
134
140
  }], hint: [{
@@ -165,5 +171,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
165
171
  type: Input
166
172
  }], regex: [{
167
173
  type: Input
174
+ }], suffix: [{
175
+ type: Input
176
+ }], infoMessage: [{
177
+ type: Input
178
+ }], infoClick: [{
179
+ type: Output
168
180
  }] } });
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90aW4tc3BhL3NyYy9saWIvY29tcG9uZW50cy90ZXh0L3RleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdGV4dC90ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7OztBQU83QyxNQUFNLE9BQU8sYUFBYTtJQUV4QjtRQTRCQSxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUV2QixzQkFBc0I7UUFDdEIsd0JBQW1CLEdBQUcsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDNUMsU0FBSSxHQUFHLElBQUksQ0FBQyxDQUFDLG1CQUFtQjtRQUV2QixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFNBQUksR0FBRyxFQUFFLENBQUM7UUFDVixZQUFPLEdBQUcsRUFBRSxDQUFDO1FBQ2IsZ0JBQVcsR0FBRyxFQUFFLENBQUM7UUFDakIsVUFBSyxHQUFHLEVBQUUsQ0FBQztRQUNWLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNsQyxXQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ2hCLFNBQUksR0FBRyxFQUFFLENBQUM7UUFFVCxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMzQixlQUFVLEdBQUcs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STtzQkFBWixLQUFLO2dCQUVJLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVFLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSUcsT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29yZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvVGluQ29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NwYS10ZXh0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGV4dC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vdGV4dC5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRleHRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHsgIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKCF0aGlzLm9wdGlvbnMpe1xyXG4gICAgICB0aGlzLm9wdGlvbnMgPSBbXVxyXG4gICAgfVxyXG5cclxuICAgIGlmKHRoaXMub3B0aW9ucy5sZW5ndGggPiAwKXtcclxuICAgICAgdGhpcy5pbml0RmlsdGVyKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMucGxhY2Vob2xkZXIgPT0gXCJcIikge1xyXG4gICAgICB0aGlzLnBsYWNlaG9sZGVyID0gXCJFbnRlciBcIiArIHRoaXMuZGlzcGxheTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcblxyXG4gICAgdGhpcy5pbml0Q29udHJvbCh0aGlzLmNvbnRyb2wpXHJcblxyXG4gICAgdGhpcy5pbml0Q29udHJvbCh0aGlzLm15Q29udHJvbClcclxuXHJcbiAgfVxyXG5cclxuXHJcbiAgZmlsdGVyZWRPcHRpb25zOiBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcclxuICBtdWx0aURpbWVuc2lvbiA9IGZhbHNlO1xyXG5cclxuICAvLyBvcHRpb25zOiBGb3JtR3JvdXA7XHJcbiAgaGlkZVJlcXVpcmVkQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCh0cnVlKTtcclxuICBoaWRlID0gdHJ1ZTsgLy9mb3IgcGFzc3dvcmQgb25seVxyXG5cclxuICBASW5wdXQoKSByZWFkb25seSA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGhpbnQgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIGRpc3BsYXkgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyID0gXCJcIjtcclxuICBASW5wdXQoKSB2YWx1ZSA9IFwiXCI7XHJcbiAgQE91dHB1dCgpIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBJbnB1dCgpIGZvcm1hdCA9IFwidGV4dFwiO1xyXG4gIEBJbnB1dCgpIHR5cGUgPSBcIlwiO1xyXG5cclxuICBAT3V0cHV0KCkgbGVhdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIGVudGVyUHJlc3MgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBJbnB1dCgpIHJvd3MgPSAxO1xyXG4gIEBJbnB1dCgpIHdpZHRoID0gXCIxMDAlXCJcclxuXHJcblxyXG4gIC8vQXV0b2NvbXBsZXRlIGl0ZW1zXHJcbiAgQElucHV0KCkgb3B0aW9uczogYW55ID0gW107XHJcbiAgQElucHV0KCkgb3B0aW9uVmFsdWUgPSBcIlwiO1xyXG5cclxuICAvL3ZhbGlkYXRpb24gaW5wdXRcclxuICBASW5wdXQoKSByZXF1aXJlZCA9IHRydWU7XHJcbiAgQElucHV0KCkgbWluID0gMDtcclxuICBASW5wdXQoKSBtYXggPSA5MDAwMDAwMDAwMDAwMDAwOyAvL01hdGgubWF4XHJcbiAgQElucHV0KCkgcmVnZXggPSBcIlwiIC8vXCJbYS16QS1aIF0qXCIgLy9cIi9cXFMrQFxcUytcXC5cXFMrL1wiO1xyXG5cclxuXHJcblxyXG4gIHByaXZhdGUgaW5pdEZpbHRlcigpIHtcclxuXHJcbiAgICBjb25zdCBvYmpLZXlMaXN0ID0gT2JqZWN0LmtleXModGhpcy5vcHRpb25zWzBdKTtcclxuICAgIGNvbnN0IGZpcnN0S2V5ID0gb2JqS2V5TGlzdFswXTtcclxuICAgIHRoaXMubXVsdGlEaW1lbnNpb24gPSAhQ29yZS5pc051bWJlcihmaXJzdEtleSk7XHJcblxyXG4gICAgdGhpcy5maWx0ZXJlZE9wdGlvbnMgPSB0aGlzLm15Q29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgc3RhcnRXaXRoKFwiXCIpLFxyXG4gICAgICBtYXAoKHZhbHVlKSA9PiB0aGlzLl9maWx0ZXIodmFsdWUpKVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2ZpbHRlcih2YWx1ZSk6IHN0cmluZ1tdIHtcclxuXHJcbiAgICBpZiAodGhpcy5tdWx0aURpbWVuc2lvbil7XHJcblxyXG4gICAgICBsZXQgZmlsdGVyVmFsdWUgPSBcIlwiO1xyXG4gICAgICBpZiAodmFsdWUgIT0gXCJcIiAmJiB2YWx1ZSl7XHJcbiAgICAgICAgZmlsdGVyVmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZpbHRlcigob3B0aW9uKSA9PiBvcHRpb25bYCR7dGhpcy5vcHRpb25WYWx1ZX1gXS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZpbHRlclZhbHVlKSk7XHJcblxyXG4gICAgfWVsc2V7XHJcbiAgICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcclxuICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucy5maWx0ZXIob3B0aW9uID0+IG9wdGlvbi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKGZpbHRlclZhbHVlKSk7XHJcbiAgICB9XHJcblxyXG5cclxuICB9XHJcblxyXG5cclxuICBpbml0Q29udHJvbChjb250cm9sOiBGb3JtQ29udHJvbCl7XHJcbiAgICBpZiAodGhpcy5yZWFkb25seSkge1xyXG4gICAgICBjb250cm9sLnNldFZhbGlkYXRvcnMobnVsbCk7XHJcbiAgICAgIGNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLnJlcXVpcmVkICYmICF0aGlzLnJlYWRvbmx5KSB7XHJcblxyXG4gICAgICBjb250cm9sLnNldFZhbGlkYXRvcnMoW1ZhbGlkYXRvcnMubWluTGVuZ3RoKHRoaXMubWluKSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgodGhpcy5tYXgpLCBWYWxpZGF0b3JzLnBhdHRlcm4odGhpcy5yZWdleCldKTtcclxuICAgICAgdGhpcy5jb250cm9sLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvL0V2ZW50c1xyXG4gIGNoYW5nZWQoKXtcclxuXHJcbiAgICBpZiAodGhpcy5vcHRpb25zLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMubXlDb250cm9sLnZhbHVlKTtcclxuICAgIH1lbHNle1xyXG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy52YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gIH1cclxuXHJcbiAgbGVhdmVkKCl7XHJcbiAgICB0aGlzLmxlYXZlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIGVudGVyUHJlc3NlZCgpIHtcclxuICAgIHRoaXMuZW50ZXJQcmVzcy5lbWl0KCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy92YWxpZGF0aW9uXHJcbiAgbXlDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgodGhpcy5taW4pLCBWYWxpZGF0b3JzLm1heExlbmd0aCh0aGlzLm1heCksIFZhbGlkYXRvcnMucGF0dGVybih0aGlzLnJlZ2V4KV0pO1xyXG4gIGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woIHRoaXMudmFsdWUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCh0aGlzLm1pbiksIFZhbGlkYXRvcnMubWF4TGVuZ3RoKHRoaXMubWF4KSwgVmFsaWRhdG9ycy5wYXR0ZXJuKHRoaXMucmVnZXgpICBdKTtcclxuXHJcbiAgdmFsaWRhdGUoY29udHJvbDogRm9ybUNvbnRyb2wpIDogc3RyaW5ne1xyXG5cclxuXHJcbiAgICBpZiAoKHRoaXMucmVxdWlyZWQgfHwgdGhpcy5taW4gPiAwKSAmJiBjb250cm9sLmhhc0Vycm9yKCdyZXF1aXJlZCcpICl7XHJcbiAgICAgIHJldHVybiBgUmVxdWlyZWRgO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb250cm9sLmhhc0Vycm9yKCdtaW5sZW5ndGgnKSApe1xyXG4gICAgICByZXR1cm4gYE1pbmltdW4gbGVuZ3RoIGlzICR7dGhpcy5taW59YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY29udHJvbC5oYXNFcnJvcignbWF4bGVuZ3RoJykpIHtcclxuICAgICAgcmV0dXJuIGBNYXhpbXVtIGxlbmd0aCBpcyAke3RoaXMubWF4fWA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ3BhdHRlcm4nKSkge1xyXG4gICAgICByZXR1cm4gYEludmFsaWQgSW5wdXRgO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvLyBpZiAodGhpcy5yZWdleCAhPSBcIlwiKXtcclxuXHJcbiAgICAvLyAgIGxldCByID0gbmV3IFJlZ0V4cCh0aGlzLnJlZ2V4LCBcImdcIik7XHJcblxyXG4gICAgLy8gICBpZiAoIXIudGVzdCh0aGlzLnZhbHVlKSl7XHJcbiAgICAvLyAgICAgdGhpcy52YWxpZCA9IGZhbHNlO1xyXG4gICAgLy8gICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gXCJJbnZhbGlkIGlucHV0XCI7XHJcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuZXJyb3JNZXNzYWdlO1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyB9XHJcblxyXG4gICAgcmV0dXJuIFwiXCI7XHJcbiAgfVxyXG5cclxufVxyXG4iLCJcclxuPCEtLSBHZW5lcmFsIFRleHQgLS0+XHJcbjxtYXQtZm9ybS1maWVsZCAqbmdJZj1cIighcm93cyB8fCByb3dzID09IDEpICYmIChmb3JtYXQ9PSd0ZXh0JyB8fCBmb3JtYXQgPT0nZGF0ZScpICYmIG9wdGlvbnMubGVuZ3RoPT0wXCIgW2hpZGVSZXF1aXJlZE1hcmtlcl09XCIhcmVxdWlyZWRcIiBbaGludExhYmVsXT1cImhpbnRcIiAgW25nU3R5bGVdPVwieyd3aWR0aCc6d2lkdGh9XCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDVweDtcIiA+XHJcbjxtYXQtbGFiZWwgKm5nSWY9XCJmb3JtYXQ9PSd0ZXh0J1wiPnt7ZGlzcGxheX19PC9tYXQtbGFiZWw+XHJcbjxtYXQtbGFiZWwgKm5nSWY9XCJmb3JtYXQ9PSdkYXRlJ1wiPnt7ZGlzcGxheSB8IGRhdGU6J2RkL01NL3l5eXknfX08L21hdC1sYWJlbD5cclxuPGlucHV0IG1hdElucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIFsobmdNb2RlbCldPVwidmFsdWVcIiAgKGNoYW5nZSk9XCJjaGFuZ2VkKClcIiAoYmx1cik9XCJsZWF2ZWQoKVwiIChrZXl1cC5lbnRlcik9XCJlbnRlclByZXNzZWQoKVwiIFt0eXBlXT1cInR5cGVcIiBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbZm9ybUNvbnRyb2xdPVwiY29udHJvbFwiIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiIFtyZWFkb25seV09XCJyZWFkb25seVwiLz5cclxuPG1hdC1lcnJvciAqbmdJZj1cImNvbnRyb2wuaW52YWxpZFwiPnt7dmFsaWRhdGUoY29udHJvbCl9fTwvbWF0LWVycm9yPlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuXHJcbjwhLS0gcGFzc3dvcmQgLS0+XHJcbjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInNwYS10ZXh0XCIgKm5nSWY9XCJmb3JtYXQ9PSdwYXNzd29yZCdcIiBbaGlkZVJlcXVpcmVkTWFya2VyXT1cIiFyZXF1aXJlZFwiIFtoaW50TGFiZWxdPVwiaGludFwiICBbbmdTdHlsZV09XCJ7J3dpZHRoJzp3aWR0aH1cIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogNXB4XCI+XHJcbiAgPG1hdC1sYWJlbD57e2Rpc3BsYXl9fTwvbWF0LWxhYmVsPlxyXG4gIDxpbnB1dCBtYXRJbnB1dCBbdHlwZV09XCJoaWRlID8gJ3Bhc3N3b3JkJyA6ICd0ZXh0J1wiIChrZXl1cC5lbnRlcik9XCJlbnRlclByZXNzZWQoKVwiIChjaGFuZ2UpPVwiY2hhbmdlZCgpXCIgKGJsdXIpPVwibGVhdmVkKClcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIiBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIj5cclxuICA8bWF0LWVycm9yICpuZ0lmPVwiY29udHJvbC5pbnZhbGlkXCI+e3t2YWxpZGF0ZShjb250cm9sKX19PC9tYXQtZXJyb3I+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gbWF0U3VmZml4IChjbGljayk9XCJoaWRlID0gIWhpZGVcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidIaWRlIHBhc3N3b3JkJ1wiIFthdHRyLmFyaWEtcHJlc3NlZF09XCJoaWRlXCI+XHJcbiAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6IDE4cHg7XCI+e3toaWRlID8gJ3Zpc2liaWxpdHlfb2ZmJyA6ICd2aXNpYmlsaXR5J319PC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcblxyXG48IS0tIFRleHRBcmVhIGNvcHkgLSBPbmx5IGNoYW5nZSBpbnB1dCB0byB0ZXh0YXJlYSBhbmQgY2hhbmdlIG5naWYgdG8gbm90IC0tPlxyXG5cclxuPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwicm93cyA+IDEgICYmIG9wdGlvbnMubGVuZ3RoPT0wXCIgW2hpZGVSZXF1aXJlZE1hcmtlcl09XCIhcmVxdWlyZWRcIiBbaGludExhYmVsXT1cImhpbnRcIiAgW25nU3R5bGVdPVwieyd3aWR0aCc6d2lkdGh9XCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDVweDtcIj5cclxuPG1hdC1sYWJlbD57e2Rpc3BsYXl9fTwvbWF0LWxhYmVsPlxyXG48dGV4dGFyZWEgbWF0SW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgW3Jvd3NdPVwicm93c1wiIFsobmdNb2RlbCldPVwidmFsdWVcIiAoY2hhbmdlKT1cImNoYW5nZWQoKVwiIChrZXl1cC5lbnRlcik9XCJlbnRlclByZXNzZWQoKVwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCI+PC90ZXh0YXJlYT5cclxuPG1hdC1lcnJvciAqbmdJZj1cImNvbnRyb2wuaW52YWxpZFwiPnt7dmFsaWRhdGUoY29udHJvbCl9fTwvbWF0LWVycm9yPlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuXHJcblxyXG48IS0tIEF1dG8gQ29tcGxldGUtLT5cclxuXHJcbiAgPG1hdC1mb3JtLWZpZWxkICAqbmdJZj1cIighcm93cyB8fCByb3dzID09IDEpICYmIGZvcm1hdD09J3RleHQnICYmIG9wdGlvbnMubGVuZ3RoPjAgXCIgW2hpZGVSZXF1aXJlZE1hcmtlcl09XCIhcmVxdWlyZWRcIiBbaGludExhYmVsXT1cImhpbnRcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzp3aWR0aH1cIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogNXB4O1wiPlxyXG4gICAgPG1hdC1sYWJlbD57e2Rpc3BsYXl9fTwvbWF0LWxhYmVsPlxyXG4gICAgPGlucHV0IFt0eXBlXT1cInR5cGVcIiBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgKGNoYW5nZSk9XCJjaGFuZ2VkKClcIiBtYXRJbnB1dCBbZm9ybUNvbnRyb2xdPVwibXlDb250cm9sXCIgIFttYXRBdXRvY29tcGxldGVdPVwiYXV0b1wiIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIj5cclxuICAgIDxtYXQtZXJyb3IgKm5nSWY9XCJjb250cm9sLmludmFsaWRcIj57e3ZhbGlkYXRlKG15Q29udHJvbCl9fTwvbWF0LWVycm9yPlxyXG4gICAgPG1hdC1hdXRvY29tcGxldGUgI2F1dG89XCJtYXRBdXRvY29tcGxldGVcIiAob3B0aW9uU2VsZWN0ZWQpPVwiY2hhbmdlZCgpXCI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW11bHRpRGltZW5zaW9uXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IG9wdGlvbiBvZiBmaWx0ZXJlZE9wdGlvbnMgfCBhc3luY1wiIFt2YWx1ZV09XCJvcHRpb25cIj5cclxuICAgICAgICAgIHt7b3B0aW9ufX1cclxuICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm11bHRpRGltZW5zaW9uXCI+XHJcbiAgICAgICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHJvdyBvZiBmaWx0ZXJlZE9wdGlvbnMgfCBhc3luY1wiIFt2YWx1ZV09XCJyb3dbb3B0aW9uVmFsdWVdXCI+XHJcbiAgICAgICAgICB7e3Jvd1tvcHRpb25WYWx1ZV19fVxyXG4gICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG5cclxuICAgIDwvbWF0LWF1dG9jb21wbGV0ZT5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuIl19
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90aW4tc3BhL3NyYy9saWIvY29tcG9uZW50cy90ZXh0L3RleHQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdGV4dC90ZXh0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7Ozs7Ozs7Ozs7QUFPN0MsTUFBTSxPQUFPLGFBQWE7SUFFeEI7UUE0QkEsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFFdkIsc0JBQXNCO1FBQ3RCLHdCQUFtQixHQUFHLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVDLFNBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxtQkFBbUI7UUFFdkIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1YsWUFBTyxHQUFHLEVBQUUsQ0FBQztRQUNiLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLFVBQUssR0FBRyxFQUFFLENBQUM7UUFDVixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDbEMsV0FBTSxHQUFHLE1BQU0sQ0FBQztRQUNoQixTQUFJLEdBQUcsRUFBRSxDQUFDO1FBRVQsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDM0IsZUFBVSxHQUFH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QUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0ksV0FBVztzQkFBcEIsTUFBTTtnQkFDRSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUVJLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVFLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBSUcsT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBDb3JlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9UaW5Db3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLXRleHQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90ZXh0LmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoIXRoaXMub3B0aW9ucyl7XHJcbiAgICAgIHRoaXMub3B0aW9ucyA9IFtdXHJcbiAgICB9XHJcblxyXG4gICAgaWYodGhpcy5vcHRpb25zLmxlbmd0aCA+IDApe1xyXG4gICAgICB0aGlzLmluaXRGaWx0ZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5wbGFjZWhvbGRlciA9PSBcIlwiKSB7XHJcbiAgICAgIHRoaXMucGxhY2Vob2xkZXIgPSBcIkVudGVyIFwiICsgdGhpcy5kaXNwbGF5O1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuXHJcbiAgICB0aGlzLmluaXRDb250cm9sKHRoaXMuY29udHJvbClcclxuXHJcbiAgICB0aGlzLmluaXRDb250cm9sKHRoaXMubXlDb250cm9sKVxyXG5cclxuICB9XHJcblxyXG5cclxuICBmaWx0ZXJlZE9wdGlvbnM6IE9ic2VydmFibGU8c3RyaW5nW10+O1xyXG4gIG11bHRpRGltZW5zaW9uID0gZmFsc2U7XHJcblxyXG4gIC8vIG9wdGlvbnM6IEZvcm1Hcm91cDtcclxuICBoaWRlUmVxdWlyZWRDb250cm9sID0gbmV3IEZvcm1Db250cm9sKHRydWUpO1xyXG4gIGhpZGUgPSB0cnVlOyAvL2ZvciBwYXNzd29yZCBvbmx5XHJcblxyXG4gIEBJbnB1dCgpIHJlYWRvbmx5ID0gZmFsc2U7XHJcbiAgQElucHV0KCkgaGludCA9IFwiXCI7XHJcbiAgQElucHV0KCkgZGlzcGxheSA9IFwiXCI7XHJcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIHZhbHVlID0gXCJcIjtcclxuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgZm9ybWF0ID0gXCJ0ZXh0XCI7XHJcbiAgQElucHV0KCkgdHlwZSA9IFwiXCI7XHJcblxyXG4gIEBPdXRwdXQoKSBsZWF2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBAT3V0cHV0KCkgZW50ZXJQcmVzcyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KCkgcm93cyA9IDE7XHJcbiAgQElucHV0KCkgd2lkdGggPSBcIjEwMCVcIlxyXG5cclxuXHJcbiAgLy9BdXRvY29tcGxldGUgaXRlbXNcclxuICBASW5wdXQoKSBvcHRpb25zOiBhbnkgPSBbXTtcclxuICBASW5wdXQoKSBvcHRpb25WYWx1ZSA9IFwiXCI7XHJcblxyXG4gIC8vdmFsaWRhdGlvbiBpbnB1dFxyXG4gIEBJbnB1dCgpIHJlcXVpcmVkID0gdHJ1ZTtcclxuICBASW5wdXQoKSBtaW4gPSAwO1xyXG4gIEBJbnB1dCgpIG1heCA9IDkwMDAwMDAwMDAwMDAwMDA7IC8vTWF0aC5tYXhcclxuICBASW5wdXQoKSByZWdleCA9IFwiXCIgLy9cIlthLXpBLVogXSpcIiAvL1wiL1xcUytAXFxTK1xcLlxcUysvXCI7XHJcblxyXG4gIEBJbnB1dCgpIHN1ZmZpeDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGluZm9NZXNzYWdlOiBzdHJpbmc7XHJcbiAgQE91dHB1dCgpIGluZm9DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgb25JbmZvQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5pbmZvQ2xpY2suZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0RmlsdGVyKCkge1xyXG5cclxuICAgIGNvbnN0IG9iaktleUxpc3QgPSBPYmplY3Qua2V5cyh0aGlzLm9wdGlvbnNbMF0pO1xyXG4gICAgY29uc3QgZmlyc3RLZXkgPSBvYmpLZXlMaXN0WzBdO1xyXG4gICAgdGhpcy5tdWx0aURpbWVuc2lvbiA9ICFDb3JlLmlzTnVtYmVyKGZpcnN0S2V5KTtcclxuXHJcbiAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyA9IHRoaXMubXlDb250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxyXG4gICAgICBzdGFydFdpdGgoXCJcIiksXHJcbiAgICAgIG1hcCgodmFsdWUpID0+IHRoaXMuX2ZpbHRlcih2YWx1ZSkpXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZmlsdGVyKHZhbHVlKTogc3RyaW5nW10ge1xyXG5cclxuICAgIGlmICh0aGlzLm11bHRpRGltZW5zaW9uKXtcclxuXHJcbiAgICAgIGxldCBmaWx0ZXJWYWx1ZSA9IFwiXCI7XHJcbiAgICAgIGlmICh2YWx1ZSAhPSBcIlwiICYmIHZhbHVlKXtcclxuICAgICAgICBmaWx0ZXJWYWx1ZSA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZmlsdGVyKChvcHRpb24pID0+IG9wdGlvbltgJHt0aGlzLm9wdGlvblZhbHVlfWBdLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZmlsdGVyVmFsdWUpKTtcclxuXHJcbiAgICB9ZWxzZXtcclxuICAgICAgY29uc3QgZmlsdGVyVmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICByZXR1cm4gdGhpcy5vcHRpb25zLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoZmlsdGVyVmFsdWUpKTtcclxuICAgIH1cclxuXHJcblxyXG4gIH1cclxuXHJcblxyXG4gIGluaXRDb250cm9sKGNvbnRyb2w6IEZvcm1Db250cm9sKXtcclxuICAgIGlmICh0aGlzLnJlYWRvbmx5KSB7XHJcbiAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyhudWxsKTtcclxuICAgICAgY29udHJvbC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXRoaXMucmVxdWlyZWQgJiYgIXRoaXMucmVhZG9ubHkpIHtcclxuXHJcbiAgICAgIGNvbnRyb2wuc2V0VmFsaWRhdG9ycyhbVmFsaWRhdG9ycy5taW5MZW5ndGgodGhpcy5taW4pLCBWYWxpZGF0b3JzLm1heExlbmd0aCh0aGlzLm1heCksIFZhbGlkYXRvcnMucGF0dGVybih0aGlzLnJlZ2V4KV0pO1xyXG4gICAgICB0aGlzLmNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4gIC8vRXZlbnRzXHJcbiAgY2hhbmdlZCgpe1xyXG5cclxuICAgIGlmICh0aGlzLm9wdGlvbnMubGVuZ3RoID4gMCkge1xyXG4gICAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy5teUNvbnRyb2wudmFsdWUpO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBsZWF2ZWQoKXtcclxuICAgIHRoaXMubGVhdmUuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgZW50ZXJQcmVzc2VkKCkge1xyXG4gICAgdGhpcy5lbnRlclByZXNzLmVtaXQoKTtcclxuICB9XHJcblxyXG5cclxuICAvL3ZhbGlkYXRpb25cclxuICBteUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLm1pbkxlbmd0aCh0aGlzLm1pbiksIFZhbGlkYXRvcnMubWF4TGVuZ3RoKHRoaXMubWF4KSwgVmFsaWRhdG9ycy5wYXR0ZXJuKHRoaXMucmVnZXgpXSk7XHJcbiAgY29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCggdGhpcy52YWx1ZSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKHRoaXMubWluKSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgodGhpcy5tYXgpLCBWYWxpZGF0b3JzLnBhdHRlcm4odGhpcy5yZWdleCkgIF0pO1xyXG5cclxuICB2YWxpZGF0ZShjb250cm9sOiBGb3JtQ29udHJvbCkgOiBzdHJpbmd7XHJcblxyXG5cclxuICAgIGlmICgodGhpcy5yZXF1aXJlZCB8fCB0aGlzLm1pbiA+IDApICYmIGNvbnRyb2wuaGFzRXJyb3IoJ3JlcXVpcmVkJykgKXtcclxuICAgICAgcmV0dXJuIGBSZXF1aXJlZGA7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGNvbnRyb2wuaGFzRXJyb3IoJ21pbmxlbmd0aCcpICl7XHJcbiAgICAgIHJldHVybiBgTWluaW11biBsZW5ndGggaXMgJHt0aGlzLm1pbn1gO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChjb250cm9sLmhhc0Vycm9yKCdtYXhsZW5ndGgnKSkge1xyXG4gICAgICByZXR1cm4gYE1heGltdW0gbGVuZ3RoIGlzICR7dGhpcy5tYXh9YDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoY29udHJvbC5oYXNFcnJvcigncGF0dGVybicpKSB7XHJcbiAgICAgIHJldHVybiBgSW52YWxpZCBJbnB1dGA7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8vIGlmICh0aGlzLnJlZ2V4ICE9IFwiXCIpe1xyXG5cclxuICAgIC8vICAgbGV0IHIgPSBuZXcgUmVnRXhwKHRoaXMucmVnZXgsIFwiZ1wiKTtcclxuXHJcbiAgICAvLyAgIGlmICghci50ZXN0KHRoaXMudmFsdWUpKXtcclxuICAgIC8vICAgICB0aGlzLnZhbGlkID0gZmFsc2U7XHJcbiAgICAvLyAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBcIkludmFsaWQgaW5wdXRcIjtcclxuICAgIC8vICAgICByZXR1cm4gdGhpcy5lcnJvck1lc3NhZ2U7XHJcbiAgICAvLyAgIH1cclxuICAgIC8vIH1cclxuXHJcbiAgICByZXR1cm4gXCJcIjtcclxuICB9XHJcblxyXG59XHJcbiIsIlxyXG48IS0tIEdlbmVyYWwgVGV4dCAtLT5cclxuPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwiKCFyb3dzIHx8IHJvd3MgPT0gMSkgJiYgKGZvcm1hdD09J3RleHQnIHx8IGZvcm1hdCA9PSdkYXRlJykgJiYgb3B0aW9ucy5sZW5ndGg9PTBcIiBbaGlkZVJlcXVpcmVkTWFya2VyXT1cIiFyZXF1aXJlZFwiIFtoaW50TGFiZWxdPVwiaGludFwiICBbbmdTdHlsZV09XCJ7J3dpZHRoJzp3aWR0aH1cIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogNXB4O1wiID5cclxuPG1hdC1sYWJlbCAqbmdJZj1cImZvcm1hdD09J3RleHQnXCI+e3tkaXNwbGF5fX08L21hdC1sYWJlbD5cclxuPG1hdC1sYWJlbCAqbmdJZj1cImZvcm1hdD09J2RhdGUnXCI+e3tkaXNwbGF5IHwgZGF0ZTonZGQvTU0veXl5eSd9fTwvbWF0LWxhYmVsPlxyXG48aW5wdXQgbWF0SW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiICAoY2hhbmdlKT1cImNoYW5nZWQoKVwiIChibHVyKT1cImxlYXZlZCgpXCIgKGtleXVwLmVudGVyKT1cImVudGVyUHJlc3NlZCgpXCIgW3R5cGVdPVwidHlwZVwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCIvPlxyXG48bWF0LWVycm9yICpuZ0lmPVwiY29udHJvbC5pbnZhbGlkXCI+e3t2YWxpZGF0ZShjb250cm9sKX19PC9tYXQtZXJyb3I+XHJcbiAgPGRpdiBtYXRTdWZmaXggY2xhc3M9XCJzdWZmaXgtaWNvbnNcIj5cclxuICAgIDxsYWJlbCAqbmdJZj1cInN1ZmZpeFwiPnt7c3VmZml4fX08L2xhYmVsPlxyXG4gICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKm5nSWY9XCJpbmZvTWVzc2FnZVwiIChjbGljayk9XCJvbkluZm9DbGljaygkZXZlbnQpXCIgbWF0VG9vbHRpcD1cIkluZm9cIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPlxyXG4gICAgICA8bWF0LWljb24gc3R5bGU9XCJjb2xvcjogc3RlZWxibHVlO1wiPmluZm88L21hdC1pY29uPlxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gIDwvZGl2PlxyXG48L21hdC1mb3JtLWZpZWxkPlxyXG5cclxuXHJcbjwhLS0gcGFzc3dvcmQgLS0+XHJcbjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cInNwYS10ZXh0XCIgKm5nSWY9XCJmb3JtYXQ9PSdwYXNzd29yZCdcIiBbaGlkZVJlcXVpcmVkTWFya2VyXT1cIiFyZXF1aXJlZFwiIFtoaW50TGFiZWxdPVwiaGludFwiICBbbmdTdHlsZV09XCJ7J3dpZHRoJzp3aWR0aH1cIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogNXB4XCI+XHJcbiAgPG1hdC1sYWJlbD57e2Rpc3BsYXl9fTwvbWF0LWxhYmVsPlxyXG4gIDxpbnB1dCBtYXRJbnB1dCBbdHlwZV09XCJoaWRlID8gJ3Bhc3N3b3JkJyA6ICd0ZXh0J1wiIChrZXl1cC5lbnRlcik9XCJlbnRlclByZXNzZWQoKVwiIChjaGFuZ2UpPVwiY2hhbmdlZCgpXCIgKGJsdXIpPVwibGVhdmVkKClcIiBbKG5nTW9kZWwpXT1cInZhbHVlXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgW2Zvcm1Db250cm9sXT1cImNvbnRyb2xcIiBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIj5cclxuICA8bWF0LWVycm9yICpuZ0lmPVwiY29udHJvbC5pbnZhbGlkXCI+e3t2YWxpZGF0ZShjb250cm9sKX19PC9tYXQtZXJyb3I+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gbWF0U3VmZml4IChjbGljayk9XCJoaWRlID0gIWhpZGVcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidIaWRlIHBhc3N3b3JkJ1wiIFthdHRyLmFyaWEtcHJlc3NlZF09XCJoaWRlXCI+XHJcbiAgICA8bWF0LWljb24gc3R5bGU9XCJmb250LXNpemU6IDE4cHg7XCI+e3toaWRlID8gJ3Zpc2liaWxpdHlfb2ZmJyA6ICd2aXNpYmlsaXR5J319PC9tYXQtaWNvbj5cclxuICA8L2J1dHRvbj5cclxuPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcblxyXG48IS0tIFRleHRBcmVhIGNvcHkgLSBPbmx5IGNoYW5nZSBpbnB1dCB0byB0ZXh0YXJlYSBhbmQgY2hhbmdlIG5naWYgdG8gbm90IC0tPlxyXG5cclxuPG1hdC1mb3JtLWZpZWxkICpuZ0lmPVwicm93cyA+IDEgICYmIG9wdGlvbnMubGVuZ3RoPT0wXCIgW2hpZGVSZXF1aXJlZE1hcmtlcl09XCIhcmVxdWlyZWRcIiBbaGludExhYmVsXT1cImhpbnRcIiAgW25nU3R5bGVdPVwieyd3aWR0aCc6d2lkdGh9XCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDVweDtcIj5cclxuPG1hdC1sYWJlbD57e2Rpc3BsYXl9fTwvbWF0LWxhYmVsPlxyXG48dGV4dGFyZWEgbWF0SW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgW3Jvd3NdPVwicm93c1wiIFsobmdNb2RlbCldPVwidmFsdWVcIiAoY2hhbmdlKT1cImNoYW5nZWQoKVwiIChrZXl1cC5lbnRlcik9XCJlbnRlclByZXNzZWQoKVwiIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtmb3JtQ29udHJvbF09XCJjb250cm9sXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCI+PC90ZXh0YXJlYT5cclxuPG1hdC1lcnJvciAqbmdJZj1cImNvbnRyb2wuaW52YWxpZFwiPnt7dmFsaWRhdGUoY29udHJvbCl9fTwvbWF0LWVycm9yPlxyXG4gIDxkaXYgbWF0U3VmZml4IGNsYXNzPVwic3VmZml4LWljb25zXCI+XHJcbiAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAqbmdJZj1cImluZm9NZXNzYWdlXCIgKGNsaWNrKT1cIm9uSW5mb0NsaWNrKCRldmVudClcIiBtYXRUb29sdGlwPVwiSW5mb1wiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+XHJcbiAgICAgIDxtYXQtaWNvbiBzdHlsZT1cImNvbG9yOiBzdGVlbGJsdWU7XCI+aW5mbzwvbWF0LWljb24+XHJcbiAgICA8L2J1dHRvbj5cclxuICA8L2Rpdj5cclxuPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcblxyXG5cclxuPCEtLSBBdXRvIENvbXBsZXRlLS0+XHJcblxyXG4gIDxtYXQtZm9ybS1maWVsZCAgKm5nSWY9XCIoIXJvd3MgfHwgcm93cyA9PSAxKSAmJiBmb3JtYXQ9PSd0ZXh0JyAmJiBvcHRpb25zLmxlbmd0aD4wIFwiIFtoaWRlUmVxdWlyZWRNYXJrZXJdPVwiIXJlcXVpcmVkXCIgW2hpbnRMYWJlbF09XCJoaW50XCIgW25nU3R5bGVdPVwieyd3aWR0aCc6d2lkdGh9XCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDVweDtcIj5cclxuICAgIDxtYXQtbGFiZWw+e3tkaXNwbGF5fX08L21hdC1sYWJlbD5cclxuICAgIDxpbnB1dCBbdHlwZV09XCJ0eXBlXCIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiIChjaGFuZ2UpPVwiY2hhbmdlZCgpXCIgbWF0SW5wdXQgW2Zvcm1Db250cm9sXT1cIm15Q29udHJvbFwiICBbbWF0QXV0b2NvbXBsZXRlXT1cImF1dG9cIiBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIiAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCI+XHJcbiAgICA8bWF0LWVycm9yICpuZ0lmPVwiY29udHJvbC5pbnZhbGlkXCI+e3t2YWxpZGF0ZShteUNvbnRyb2wpfX08L21hdC1lcnJvcj5cclxuICAgIDxtYXQtYXV0b2NvbXBsZXRlICNhdXRvPVwibWF0QXV0b2NvbXBsZXRlXCIgKG9wdGlvblNlbGVjdGVkKT1cImNoYW5nZWQoKVwiPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtdWx0aURpbWVuc2lvblwiPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZmlsdGVyZWRPcHRpb25zIHwgYXN5bmNcIiBbdmFsdWVdPVwib3B0aW9uXCI+XHJcbiAgICAgICAgICB7e29wdGlvbn19XHJcbiAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJtdWx0aURpbWVuc2lvblwiPlxyXG4gICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCByb3cgb2YgZmlsdGVyZWRPcHRpb25zIHwgYXN5bmNcIiBbdmFsdWVdPVwicm93W29wdGlvblZhbHVlXVwiPlxyXG4gICAgICAgICAge3tyb3dbb3B0aW9uVmFsdWVdfX1cclxuICAgICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcbiAgICA8L21hdC1hdXRvY29tcGxldGU+XHJcbiAgICAgIDxkaXYgbWF0U3VmZml4IGNsYXNzPVwic3VmZml4LWljb25zXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKm5nSWY9XCJpbmZvTWVzc2FnZVwiIChjbGljayk9XCJvbkluZm9DbGljaygkZXZlbnQpXCIgbWF0VG9vbHRpcD1cIkluZm9cIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIHN0eWxlPVwiY29sb3I6IHN0ZWVsYmx1ZTtcIj5pbmZvPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC9kaXY+XHJcbiAgPC9tYXQtZm9ybS1maWVsZD5cclxuXHJcbiJdfQ==
@@ -52,7 +52,6 @@ export class TilesComponent {
52
52
  }
53
53
  }
54
54
  loadData(action, data) {
55
- console.log("loading");
56
55
  if (action) {
57
56
  this.dataService.CallApi(action, data).subscribe((apiResponse) => {
58
57
  if (apiResponse.success) {
@@ -79,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
79
78
  }], tileClick: [{
80
79
  type: Output
81
80
  }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdGlsZXMvdGlsZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdGlsZXMvdGlsZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFZL0UsTUFBTSxPQUFPLGNBQWM7SUFFekIsWUFBb0IsV0FBMkIsRUFBVSxjQUE4QjtRQUFuRSxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFvQzdFLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXpDLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBRTFCLFFBQUcsR0FBRyxJQUFJLENBQUE7SUF4Q2tGLENBQUM7SUFFN0YsUUFBUTtRQUVOLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBQztZQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFFL0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtnQkFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUM1QztTQUNGO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFFeEIsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFDO2dCQUNaLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUU7b0JBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQzVDO2FBQ0Y7UUFFSCxDQUFDLENBQUMsQ0FBQztJQUVMLENBQUM7SUFFRCxXQUFXO0lBRVgsQ0FBQztJQWdCRCxPQUFPLENBQUMsQ0FBTztRQUliLElBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBR2xDLElBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFDO1lBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1NBQ3hCO2FBQUk7WUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQzVCO0lBR0gsQ0FBQztJQUVELEdBQUcsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEVBQUM7WUFDSixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUM3QjtJQUVILENBQUM7SUFHRCxRQUFRLENBQUMsTUFBYyxFQUFFLElBQVM7UUFDaEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUV0QixJQUFJLE1BQU0sRUFBRTtZQUVWLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxXQUF3QixFQUFFLEVBQUU7Z0JBRTVFLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRTtvQkFDdkIsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFBO2lCQUM3QjtxQkFDSTtvQkFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUM1RDtZQUVILENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFFSCxDQUFDOzsyR0F4RlUsY0FBYzsrRkFBZCxjQUFjLHlLQ1ozQix1MkhBa0VBOzJGRHREYSxjQUFjO2tCQUwxQixTQUFTOytCQUNFLFdBQVc7a0lBbUNaLE1BQU07c0JBQWQsS0FBSztnQkFHRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsTUFBTTtzQkFBZCxLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGlvbiwgVGlsZSwgVGlsZUNvbmZpZywgQXBpUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9jbGFzc2VzL0NsYXNzZXMnO1xyXG5pbXBvcnQgeyBEYXRhU2VydmljZUxpYiB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZSc7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbWVzc2FnZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc3BhLXRpbGVzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGlsZXMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3RpbGVzLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGlsZXNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZUxpYiwgcHJpdmF0ZSBtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UsKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgaWYgKHRoaXMuY29uZmlnKXtcclxuICAgICAgdGhpcy50aWxlcyA9IHRoaXMuY29uZmlnLnRpbGVzO1xyXG5cclxuICAgICAgaWYgKHRoaXMuY29uZmlnPy5sb2FkQWN0aW9uICYmIHRoaXMuY29uZmlnLmxvYWRJbml0KSB7XHJcbiAgICAgICAgdGhpcy5sb2FkRGF0YSh0aGlzLmNvbmZpZz8ubG9hZEFjdGlvbiwgXCJcIik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnJlbG9hZC5zdWJzY3JpYmUodiA9PiB7XHJcblxyXG4gICAgICBpZiAodiA9PSB0cnVlKXtcclxuICAgICAgICBpZiAodGhpcy5jb25maWc/LmxvYWRBY3Rpb24pIHtcclxuICAgICAgICAgIHRoaXMubG9hZERhdGEodGhpcy5jb25maWc/LmxvYWRBY3Rpb24sIFwiXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCkge1xyXG5cclxuICB9XHJcblxyXG4gIHRpbGVzOiBUaWxlW107XHJcbiAgQElucHV0KCkgY29uZmlnOiBUaWxlQ29uZmlnO1xyXG5cclxuXHJcbiAgQElucHV0KCkgZGF0YTtcclxuICAvLyBASW5wdXQoKSBjbGlja2FibGU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKSByZWxvYWQ6IFN1YmplY3Q8Ym9vbGVhbj47XHJcblxyXG4gIEBPdXRwdXQoKSB0aWxlQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIHNlbGVjdGVkVGlsZTogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgbmV3ID0gdHJ1ZVxyXG5cclxuICBjbGlja2VkKHY6IFRpbGUpe1xyXG5cclxuXHJcblxyXG4gICAgaWYoIXRoaXMuY29uZmlnLmNsaWNrYWJsZSkgcmV0dXJuO1xyXG5cclxuXHJcbiAgICBpZih0aGlzLnNlbGVjdGVkVGlsZSA9PSB2Lm5hbWUpe1xyXG4gICAgICB0aGlzLnRpbGVDbGljay5lbWl0KFwiXCIpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGlsZSA9IFwiXCI7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy50aWxlQ2xpY2suZW1pdCh2Lm5hbWUpO1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGlsZSA9IHYubmFtZTtcclxuICAgIH1cclxuXHJcblxyXG4gIH1cclxuXHJcbiAgcG9wKHgpe1xyXG5cclxuICAgIGlmICh4KXtcclxuICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS5pbmZvKHgpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG5cclxuICBsb2FkRGF0YShhY3Rpb246IEFjdGlvbiwgZGF0YTogYW55KSB7XHJcbiAgICBjb25zb2xlLmxvZyhcImxvYWRpbmdcIilcclxuXHJcbiAgICBpZiAoYWN0aW9uKSB7XHJcblxyXG4gICAgICB0aGlzLmRhdGFTZXJ2aWNlLkNhbGxBcGkoYWN0aW9uLCBkYXRhKS5zdWJzY3JpYmUoKGFwaVJlc3BvbnNlOiBBcGlSZXNwb25zZSkgPT4ge1xyXG5cclxuICAgICAgICBpZiAoYXBpUmVzcG9uc2Uuc3VjY2Vzcykge1xyXG4gICAgICAgICAgdGhpcy5kYXRhID0gYXBpUmVzcG9uc2UuZGF0YVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJFcnJvcjogXCIgKyBhcGlSZXNwb25zZS5tZXNzYWdlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxufVxyXG4iLCIgICAgICA8ZGl2IGNsYXNzPVwidGluLXJvdyBhbGlnbi1pdGVtcy1jZW50ZXIgdGlsZXNcIiAqbmdJZj1cIiFuZXdcIj5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGlsZSBvZiB0aWxlc1wiPlxyXG5cclxuICAgICAgICAgIDxtYXQtY2FyZCBjbGFzcz1cImNhcmQgdGluLWNvbFwiICpuZ0lmPVwiIXRpbGUuaGlkZGVuXCIgKGNsaWNrKT1cImNsaWNrZWQodGlsZSlcIj5cclxuXHJcbiAgICAgICAgICAgIDxtYXQtbGFiZWwgc3R5bGU9XCJmb250LXdlaWdodDpib2xkOyB0ZXh0LWFsaWduOiBjZW50ZXI7IHBhZGRpbmc6IDBweDsgbWFyZ2luOiAwcHg7XCIgW25nU3R5bGVdPVwieydjb2xvcic6dGlsZS5jb2xvciwnZm9udC1zaXplJzp0aWxlLm5hbWUgPT0gc2VsZWN0ZWRUaWxlID8gJzQ1cHgnIDogJzM1cHgnIH1cIj57e2RhdGEgPyBkYXRhW3RpbGUubmFtZV0gOiAwfX08L21hdC1sYWJlbD5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuXHJcbiAgICAgICAgICAgICAgPCEtLSA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwicG9wKHRpbGUuaW5mbylcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgW25nU3R5bGVdPVwieydmb250LXNpemUnOnRpbGUubmFtZSA9PSBzZWxlY3RlZFRpbGUgPyAnMTRweCcgOiAnMTRweCcgfVwiIHN0eWxlPVwicGFkZGluZy1sZWZ0OjVweDtwYWRkaW5nLXJpZ2h0OjVweDsgbWFyZ2luLXJpZ2h0OiAxMHB4O1wiPnt7dGlsZS5hbGlhcyA/PyB0aWxlLm5hbWUgfCBjYW1lbFRvV29yZHN9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIFttYXRUb29sdGlwXT1cInRpbGUuaW5mb1wiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCIgW25nU3R5bGVdPVwieydmb250LXNpemUnOnRpbGUubmFtZSA9PSBzZWxlY3RlZFRpbGUgPyAnMjR4JyA6ICcyNHB4JyB9XCIgc3R5bGU9XCIgY29sb3I6c3RlZWxibHVlO1wiPmluZm88L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIDwvYnV0dG9uPiAtLT5cclxuXHJcbiAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInBvcCh0aWxlLmluZm8pXCIgc3R5bGU9XCJtYXJnaW46IDBweDsgcGFkZGluZzogMHB4O1wiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCBbbmdTdHlsZV09XCJ7J2ZvbnQtc2l6ZSc6dGlsZS5uYW1lID09IHNlbGVjdGVkVGlsZSA/ICcxNHB4JyA6ICcxNHB4JyB9XCIgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6NXB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7XCI+e3t0aWxlLmFsaWFzID8/IHRpbGUubmFtZSB8IGNhbWVsVG9Xb3Jkc319PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gW21hdFRvb2x0aXBdPVwidGlsZS5pbmZvXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIiBbbmdTdHlsZV09XCJ7J2ZvbnQtc2l6ZSc6dGlsZS5uYW1lID09IHNlbGVjdGVkVGlsZSA/ICcyNHgnIDogJzE4cHgnIH1cIiBzdHlsZT1cIiBjb2xvcjpzdGVlbGJsdWU7XCI+aW5mbzwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+XHJcblxyXG4gICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInJvdyBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciByb3cgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIFtuZ1N0eWxlXT1cInsnZm9udC1zaXplJzp0aWxlLm5hbWUgPT0gc2VsZWN0ZWRUaWxlID8gJzE4cHgnIDogJzEycHgnIH1cIiBzdHlsZT1cInBhZGRpbmctbGVmdDo1cHg7cGFkZGluZy1yaWdodDo1cHhcIj57e3RpbGUubmFtZX19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gW21hdFRvb2x0aXBdPVwidGlsZS5pbmZvXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIiBbbmdTdHlsZV09XCJ7J2ZvbnQtc2l6ZSc6dGlsZS5uYW1lID09IHNlbGVjdGVkVGlsZSA/ICcyMHB4JyA6ICcxN3B4JyB9XCIgc3R5bGU9XCIgY29sb3I6c3RlZWxibHVlO1wiPmluZm88L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PiAtLT5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDwvbWF0LWNhcmQ+XHJcblxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCByb3cgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgKm5nSWY9XCJuZXdcIj5cclxuXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgdGlsZSBvZiB0aWxlc1wiPlxyXG5cclxuICAgICAgICAgIDxtYXQtY2FyZCBjbGFzcz1cImNvbFwiIHN0eWxlPVwibWFyZ2luLWxlZnQ6IDVweDttYXJnaW4tcmlnaHQ6IDVweDsgcGFkZGluZzogMTBweCAxNnB4IDsgbWluLXdpZHRoOiAxNTBweDsgbWFyZ2luLXRvcDogNXB4O1wiIChjbGljayk9XCJjbGlja2VkKHRpbGUpXCI+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCBzdHlsZT1cImZvbnQtd2VpZ2h0OmJvbGQ7XCIgKm5nSWY9XCJ0aWxlLnByZWZpeFwiID57e3RpbGUucHJlZml4fX08L21hdC1sYWJlbD4gJm5ic3A7XHJcbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIHN0eWxlPVwiZm9udC13ZWlnaHQ6Ym9sZDsgdGV4dC1hbGlnbjogY2VudGVyO1wiIFtuZ1N0eWxlXT1cInsnY29sb3InOnRpbGUuY29sb3IsJ2ZvbnQtc2l6ZSc6dGlsZS5uYW1lID09IHNlbGVjdGVkVGlsZSA/ICczNXB4JyA6ICczMHB4JyB9XCI+e3tkYXRhID8gZGF0YVt0aWxlLm5hbWVdIDogMH19PC9tYXQtbGFiZWw+Jm5ic3A7XHJcbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIHN0eWxlPVwiZm9udC13ZWlnaHQ6Ym9sZDtcIiAqbmdJZj1cInRpbGUuc3VmZml4XCI+e3t0aWxlLnN1ZmZpeH19PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIFtuZ1N0eWxlXT1cInsnZm9udC1zaXplJzp0aWxlLm5hbWUgPT0gc2VsZWN0ZWRUaWxlID8gJzE4cHgnIDogJzE0cHgnIH1cIiBzdHlsZT1cInBhZGRpbmctbGVmdDo1cHg7cGFkZGluZy1yaWdodDo1cHg7IHRleHQtYWxpZ246IGNlbnRlcjtcIj57e3RpbGUuYWxpYXMgPz8gdGlsZS5uYW1lIHwgY2FtZWxUb1dvcmRzfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbbWF0VG9vbHRpcF09XCJ0aWxlLmluZm9cIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiICBzdHlsZT1cImZvbnQtc2l6ZTogMjBweDsgY29sb3I6c3RlZWxibHVlO1wiPmluZm88L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgPC9tYXQtY2FyZD5cclxuXHJcblxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPC9kaXY+XHJcbiJdfQ==
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdGlsZXMvdGlsZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdGlsZXMvdGlsZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7QUFZL0UsTUFBTSxPQUFPLGNBQWM7SUFFekIsWUFBb0IsV0FBMkIsRUFBVSxjQUE4QjtRQUFuRSxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBVSxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFvQzdFLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXpDLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBRTFCLFFBQUcsR0FBRyxJQUFJLENBQUE7SUF4Q2tGLENBQUM7SUFFN0YsUUFBUTtRQUVOLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBQztZQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFFL0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtnQkFDbkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQzthQUM1QztTQUNGO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFFeEIsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFDO2dCQUNaLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUU7b0JBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQzVDO2FBQ0Y7UUFFSCxDQUFDLENBQUMsQ0FBQztJQUVMLENBQUM7SUFFRCxXQUFXO0lBRVgsQ0FBQztJQWdCRCxPQUFPLENBQUMsQ0FBTztRQUliLElBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBR2xDLElBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFDO1lBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDO1NBQ3hCO2FBQUk7WUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQzVCO0lBR0gsQ0FBQztJQUVELEdBQUcsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEVBQUM7WUFDSixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUM3QjtJQUVILENBQUM7SUFHRCxRQUFRLENBQUMsTUFBYyxFQUFFLElBQVM7UUFFaEMsSUFBSSxNQUFNLEVBQUU7WUFFVixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFO2dCQUU1RSxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUU7b0JBQ3ZCLElBQUksQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQTtpQkFDN0I7cUJBQ0k7b0JBQ0gsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztpQkFDNUQ7WUFFSCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBRUgsQ0FBQzs7MkdBdkZVLGNBQWM7K0ZBQWQsY0FBYyx5S0NaM0IsdTJIQWtFQTsyRkR0RGEsY0FBYztrQkFMMUIsU0FBUzsrQkFDRSxXQUFXO2tJQW1DWixNQUFNO3NCQUFkLEtBQUs7Z0JBR0csSUFBSTtzQkFBWixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFFSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3Rpb24sIFRpbGUsIFRpbGVDb25maWcsIEFwaVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgRGF0YVNlcnZpY2VMaWIgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9kYXRhbGliLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL21lc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NwYS10aWxlcycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3RpbGVzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90aWxlcy5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRpbGVzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkYXRhU2VydmljZTogRGF0YVNlcnZpY2VMaWIsIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlLCkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLmNvbmZpZyl7XHJcbiAgICAgIHRoaXMudGlsZXMgPSB0aGlzLmNvbmZpZy50aWxlcztcclxuXHJcbiAgICAgIGlmICh0aGlzLmNvbmZpZz8ubG9hZEFjdGlvbiAmJiB0aGlzLmNvbmZpZy5sb2FkSW5pdCkge1xyXG4gICAgICAgIHRoaXMubG9hZERhdGEodGhpcy5jb25maWc/LmxvYWRBY3Rpb24sIFwiXCIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yZWxvYWQuc3Vic2NyaWJlKHYgPT4ge1xyXG5cclxuICAgICAgaWYgKHYgPT0gdHJ1ZSl7XHJcbiAgICAgICAgaWYgKHRoaXMuY29uZmlnPy5sb2FkQWN0aW9uKSB7XHJcbiAgICAgICAgICB0aGlzLmxvYWREYXRhKHRoaXMuY29uZmlnPy5sb2FkQWN0aW9uLCBcIlwiKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9KTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpIHtcclxuXHJcbiAgfVxyXG5cclxuICB0aWxlczogVGlsZVtdO1xyXG4gIEBJbnB1dCgpIGNvbmZpZzogVGlsZUNvbmZpZztcclxuXHJcblxyXG4gIEBJbnB1dCgpIGRhdGE7XHJcbiAgLy8gQElucHV0KCkgY2xpY2thYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgcmVsb2FkOiBTdWJqZWN0PGJvb2xlYW4+O1xyXG5cclxuICBAT3V0cHV0KCkgdGlsZUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBzZWxlY3RlZFRpbGU6IHN0cmluZyA9IFwiXCI7XHJcblxyXG4gIG5ldyA9IHRydWVcclxuXHJcbiAgY2xpY2tlZCh2OiBUaWxlKXtcclxuXHJcblxyXG5cclxuICAgIGlmKCF0aGlzLmNvbmZpZy5jbGlja2FibGUpIHJldHVybjtcclxuXHJcblxyXG4gICAgaWYodGhpcy5zZWxlY3RlZFRpbGUgPT0gdi5uYW1lKXtcclxuICAgICAgdGhpcy50aWxlQ2xpY2suZW1pdChcIlwiKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRpbGUgPSBcIlwiO1xyXG4gICAgfWVsc2V7XHJcbiAgICAgIHRoaXMudGlsZUNsaWNrLmVtaXQodi5uYW1lKTtcclxuICAgICAgdGhpcy5zZWxlY3RlZFRpbGUgPSB2Lm5hbWU7XHJcbiAgICB9XHJcblxyXG5cclxuICB9XHJcblxyXG4gIHBvcCh4KXtcclxuXHJcbiAgICBpZiAoeCl7XHJcbiAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuaW5mbyh4KTtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuXHJcbiAgbG9hZERhdGEoYWN0aW9uOiBBY3Rpb24sIGRhdGE6IGFueSkge1xyXG5cclxuICAgIGlmIChhY3Rpb24pIHtcclxuXHJcbiAgICAgIHRoaXMuZGF0YVNlcnZpY2UuQ2FsbEFwaShhY3Rpb24sIGRhdGEpLnN1YnNjcmliZSgoYXBpUmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcblxyXG4gICAgICAgIGlmIChhcGlSZXNwb25zZS5zdWNjZXNzKSB7XHJcbiAgICAgICAgICB0aGlzLmRhdGEgPSBhcGlSZXNwb25zZS5kYXRhXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdChcIkVycm9yOiBcIiArIGFwaVJlc3BvbnNlLm1lc3NhZ2UpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG59XHJcbiIsIiAgICAgIDxkaXYgY2xhc3M9XCJ0aW4tcm93IGFsaWduLWl0ZW1zLWNlbnRlciB0aWxlc1wiICpuZ0lmPVwiIW5ld1wiPlxyXG5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCB0aWxlIG9mIHRpbGVzXCI+XHJcblxyXG4gICAgICAgICAgPG1hdC1jYXJkIGNsYXNzPVwiY2FyZCB0aW4tY29sXCIgKm5nSWY9XCIhdGlsZS5oaWRkZW5cIiAoY2xpY2spPVwiY2xpY2tlZCh0aWxlKVwiPlxyXG5cclxuICAgICAgICAgICAgPG1hdC1sYWJlbCBzdHlsZT1cImZvbnQtd2VpZ2h0OmJvbGQ7IHRleHQtYWxpZ246IGNlbnRlcjsgcGFkZGluZzogMHB4OyBtYXJnaW46IDBweDtcIiBbbmdTdHlsZV09XCJ7J2NvbG9yJzp0aWxlLmNvbG9yLCdmb250LXNpemUnOnRpbGUubmFtZSA9PSBzZWxlY3RlZFRpbGUgPyAnNDVweCcgOiAnMzVweCcgfVwiPnt7ZGF0YSA/IGRhdGFbdGlsZS5uYW1lXSA6IDB9fTwvbWF0LWxhYmVsPlxyXG5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG5cclxuICAgICAgICAgICAgICA8IS0tIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJwb3AodGlsZS5pbmZvKVwiPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1sYWJlbCBbbmdTdHlsZV09XCJ7J2ZvbnQtc2l6ZSc6dGlsZS5uYW1lID09IHNlbGVjdGVkVGlsZSA/ICcxNHB4JyA6ICcxNHB4JyB9XCIgc3R5bGU9XCJwYWRkaW5nLWxlZnQ6NXB4O3BhZGRpbmctcmlnaHQ6NXB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7XCI+e3t0aWxlLmFsaWFzID8/IHRpbGUubmFtZSB8IGNhbWVsVG9Xb3Jkc319PC9tYXQtbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWljb24gW21hdFRvb2x0aXBdPVwidGlsZS5pbmZvXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIiBbbmdTdHlsZV09XCJ7J2ZvbnQtc2l6ZSc6dGlsZS5uYW1lID09IHNlbGVjdGVkVGlsZSA/ICcyNHgnIDogJzI0cHgnIH1cIiBzdHlsZT1cIiBjb2xvcjpzdGVlbGJsdWU7XCI+aW5mbzwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+IC0tPlxyXG5cclxuICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwicG9wKHRpbGUuaW5mbylcIiBzdHlsZT1cIm1hcmdpbjogMHB4OyBwYWRkaW5nOiAwcHg7XCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIFtuZ1N0eWxlXT1cInsnZm9udC1zaXplJzp0aWxlLm5hbWUgPT0gc2VsZWN0ZWRUaWxlID8gJzE0cHgnIDogJzE0cHgnIH1cIiBzdHlsZT1cInBhZGRpbmctbGVmdDo1cHg7cGFkZGluZy1yaWdodDo1cHg7IG1hcmdpbi1yaWdodDogMTBweDtcIj57e3RpbGUuYWxpYXMgPz8gdGlsZS5uYW1lIHwgY2FtZWxUb1dvcmRzfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbbWF0VG9vbHRpcF09XCJ0aWxlLmluZm9cIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiIFtuZ1N0eWxlXT1cInsnZm9udC1zaXplJzp0aWxlLm5hbWUgPT0gc2VsZWN0ZWRUaWxlID8gJzI0eCcgOiAnMThweCcgfVwiIHN0eWxlPVwiIGNvbG9yOnN0ZWVsYmx1ZTtcIj5pbmZvPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuXHJcbiAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwicm93IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIHJvdyBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgW25nU3R5bGVdPVwieydmb250LXNpemUnOnRpbGUubmFtZSA9PSBzZWxlY3RlZFRpbGUgPyAnMThweCcgOiAnMTJweCcgfVwiIHN0eWxlPVwicGFkZGluZy1sZWZ0OjVweDtwYWRkaW5nLXJpZ2h0OjVweFwiPnt7dGlsZS5uYW1lfX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbbWF0VG9vbHRpcF09XCJ0aWxlLmluZm9cIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiIFtuZ1N0eWxlXT1cInsnZm9udC1zaXplJzp0aWxlLm5hbWUgPT0gc2VsZWN0ZWRUaWxlID8gJzIwcHgnIDogJzE3cHgnIH1cIiBzdHlsZT1cIiBjb2xvcjpzdGVlbGJsdWU7XCI+aW5mbzwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgPC9tYXQtY2FyZD5cclxuXHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IHJvdyBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiAqbmdJZj1cIm5ld1wiPlxyXG5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCB0aWxlIG9mIHRpbGVzXCI+XHJcblxyXG4gICAgICAgICAgPG1hdC1jYXJkIGNsYXNzPVwiY29sXCIgc3R5bGU9XCJtYXJnaW4tbGVmdDogNXB4O21hcmdpbi1yaWdodDogNXB4OyBwYWRkaW5nOiAxMHB4IDE2cHggOyBtaW4td2lkdGg6IDE1MHB4OyBtYXJnaW4tdG9wOiA1cHg7XCIgKGNsaWNrKT1cImNsaWNrZWQodGlsZSlcIj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWxhYmVsIHN0eWxlPVwiZm9udC13ZWlnaHQ6Ym9sZDtcIiAqbmdJZj1cInRpbGUucHJlZml4XCIgPnt7dGlsZS5wcmVmaXh9fTwvbWF0LWxhYmVsPiAmbmJzcDtcclxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgc3R5bGU9XCJmb250LXdlaWdodDpib2xkOyB0ZXh0LWFsaWduOiBjZW50ZXI7XCIgW25nU3R5bGVdPVwieydjb2xvcic6dGlsZS5jb2xvciwnZm9udC1zaXplJzp0aWxlLm5hbWUgPT0gc2VsZWN0ZWRUaWxlID8gJzM1cHgnIDogJzMwcHgnIH1cIj57e2RhdGEgPyBkYXRhW3RpbGUubmFtZV0gOiAwfX08L21hdC1sYWJlbD4mbmJzcDtcclxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgc3R5bGU9XCJmb250LXdlaWdodDpib2xkO1wiICpuZ0lmPVwidGlsZS5zdWZmaXhcIj57e3RpbGUuc3VmZml4fX08L21hdC1sYWJlbD5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcblxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5cclxuICAgICAgICAgICAgICAgIDxtYXQtbGFiZWwgW25nU3R5bGVdPVwieydmb250LXNpemUnOnRpbGUubmFtZSA9PSBzZWxlY3RlZFRpbGUgPyAnMThweCcgOiAnMTRweCcgfVwiIHN0eWxlPVwicGFkZGluZy1sZWZ0OjVweDtwYWRkaW5nLXJpZ2h0OjVweDsgdGV4dC1hbGlnbjogY2VudGVyO1wiPnt7dGlsZS5hbGlhcyA/PyB0aWxlLm5hbWUgfCBjYW1lbFRvV29yZHN9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIFttYXRUb29sdGlwXT1cInRpbGUuaW5mb1wiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCIgIHN0eWxlPVwiZm9udC1zaXplOiAyMHB4OyBjb2xvcjpzdGVlbGJsdWU7XCI+aW5mbzwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICA8L21hdC1jYXJkPlxyXG5cclxuXHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8L2Rpdj5cclxuIl19
@@ -68,7 +68,7 @@ export class transactDialog {
68
68
  }
69
69
  }
70
70
  transactDialog.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: transactDialog, deps: [{ token: i1.LoaderService }, { token: i2.MessageService }, { token: i3.DataServiceLib }, { token: i4.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
71
- transactDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: transactDialog, selector: "app-quanityDiag", ngImport: i0, template: "\r\n<h2 mat-dialog-title>{{action | titlecase}}</h2>\r\n\r\n\r\n<mat-dialog-content class=\"mat-typography\">\r\n\r\n <div class=\"tin-input\" style=\"font-size:14px\">\r\n\r\n <spa-select *ngIf=\"action == 'transfer'\" [(value)]=\"txn.destinationID\" display=\"Transfer to\" [options]=\"accounts\" optionDisplay=\"name\" optionValue=\"accountID\"></spa-select>\r\n\r\n <spa-date display=\"Date\" [(value)]=\"txn.date\"></spa-date>\r\n <spa-money display=\"Amount\" [(value)]=\"txn.amount\"></spa-money>\r\n <spa-text display=\"Narration\" [(value)]=\"txn.narration\"></spa-text>\r\n <spa-select display=\"Category\" [(value)]=\"txn.categoryID\" [options]=\"categories\" optionDisplay=\"name\" optionValue=\"listItemID\" [defaultFirstValue]=\"true\"></spa-select>\r\n\r\n\r\n\r\n </div>\r\n\r\n</mat-dialog-content>\r\n\r\n\r\n<mat-dialog-actions>\r\n<button mat-button [disabled]=\"isProcessing\" (click)=\"submit()\" cdkFocusInitial>Submit</button>\r\n<button mat-button [disabled]=\"isProcessing\" cdkFocusInitial mat-dialog-close>Cancel</button>\r\n</mat-dialog-actions>\r\n\r\n\r\n\r\n", styles: [".info{color:#4682b4;margin-top:5px;margin-right:5px;font-size:18px}.sign{margin-top:5px;font-size:18px}.actionbuttons{gap:1px}button{padding-left:7px}.mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i7.TextComponent, selector: "spa-text", inputs: ["readonly", "hint", "display", "placeholder", "value", "format", "type", "rows", "width", "options", "optionValue", "required", "min", "max", "regex"], outputs: ["valueChange", "leave", "enterPress"] }, { kind: "component", type: i8.DateComponent, selector: "spa-date", inputs: ["required", "min", "max", "readonly", "hint", "value", "display", "placeholder", "width"], outputs: ["valueChange"] }, { kind: "component", type: i9.SelectComponent, selector: "spa-select", inputs: ["width", "readonly", "required", "defaultFirstValue", "readonlyMode", "hint", "placeholder", "multiple", "display", "value", "options", "masterOptions", "optionValue", "optionDisplay", "optionDisplayExtra", "nullable"], outputs: ["valueChange"] }, { kind: "component", type: i10.MoneyComponent, selector: "spa-money", inputs: ["readonly", "hint", "display", "placeholder", "value", "width", "currency", "required", "min", "max"], outputs: ["valueChange", "leave", "enterPress"] }, { kind: "pipe", type: i5.TitleCasePipe, name: "titlecase" }] });
71
+ transactDialog.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: transactDialog, selector: "app-quanityDiag", ngImport: i0, template: "\r\n<h2 mat-dialog-title>{{action | titlecase}}</h2>\r\n\r\n\r\n<mat-dialog-content class=\"mat-typography\">\r\n\r\n <div class=\"tin-input\" style=\"font-size:14px\">\r\n\r\n <spa-select *ngIf=\"action == 'transfer'\" [(value)]=\"txn.destinationID\" display=\"Transfer to\" [options]=\"accounts\" optionDisplay=\"name\" optionValue=\"accountID\"></spa-select>\r\n\r\n <spa-date display=\"Date\" [(value)]=\"txn.date\"></spa-date>\r\n <spa-money display=\"Amount\" [(value)]=\"txn.amount\"></spa-money>\r\n <spa-text display=\"Narration\" [(value)]=\"txn.narration\"></spa-text>\r\n <spa-select display=\"Category\" [(value)]=\"txn.categoryID\" [options]=\"categories\" optionDisplay=\"name\" optionValue=\"listItemID\" [defaultFirstValue]=\"true\"></spa-select>\r\n\r\n\r\n\r\n </div>\r\n\r\n</mat-dialog-content>\r\n\r\n\r\n<mat-dialog-actions>\r\n<button mat-button [disabled]=\"isProcessing\" (click)=\"submit()\" cdkFocusInitial>Submit</button>\r\n<button mat-button [disabled]=\"isProcessing\" cdkFocusInitial mat-dialog-close>Cancel</button>\r\n</mat-dialog-actions>\r\n\r\n\r\n\r\n", styles: [".info{color:#4682b4;margin-top:5px;margin-right:5px;font-size:18px}.sign{margin-top:5px;font-size:18px}.actionbuttons{gap:1px}button{padding-left:7px}.mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i7.TextComponent, selector: "spa-text", inputs: ["readonly", "hint", "display", "placeholder", "value", "format", "type", "rows", "width", "options", "optionValue", "required", "min", "max", "regex", "suffix", "infoMessage"], outputs: ["valueChange", "leave", "enterPress", "infoClick"] }, { kind: "component", type: i8.DateComponent, selector: "spa-date", inputs: ["required", "min", "max", "readonly", "hint", "value", "display", "placeholder", "width", "infoMessage"], outputs: ["valueChange", "infoClick"] }, { kind: "component", type: i9.SelectComponent, selector: "spa-select", inputs: ["width", "readonly", "required", "defaultFirstValue", "readonlyMode", "hint", "placeholder", "multiple", "display", "value", "options", "masterOptions", "optionValue", "optionDisplay", "optionDisplayExtra", "nullable", "peekConfig", "infoMessage"], outputs: ["valueChange", "infoClick"] }, { kind: "component", type: i10.MoneyComponent, selector: "spa-money", inputs: ["readonly", "hint", "display", "placeholder", "value", "width", "currency", "required", "min", "max", "infoMessage"], outputs: ["valueChange", "leave", "enterPress", "infoClick"] }, { kind: "pipe", type: i5.TitleCasePipe, name: "titlecase" }] });
72
72
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: transactDialog, decorators: [{
73
73
  type: Component,
74
74
  args: [{ selector: 'app-quanityDiag', template: "\r\n<h2 mat-dialog-title>{{action | titlecase}}</h2>\r\n\r\n\r\n<mat-dialog-content class=\"mat-typography\">\r\n\r\n <div class=\"tin-input\" style=\"font-size:14px\">\r\n\r\n <spa-select *ngIf=\"action == 'transfer'\" [(value)]=\"txn.destinationID\" display=\"Transfer to\" [options]=\"accounts\" optionDisplay=\"name\" optionValue=\"accountID\"></spa-select>\r\n\r\n <spa-date display=\"Date\" [(value)]=\"txn.date\"></spa-date>\r\n <spa-money display=\"Amount\" [(value)]=\"txn.amount\"></spa-money>\r\n <spa-text display=\"Narration\" [(value)]=\"txn.narration\"></spa-text>\r\n <spa-select display=\"Category\" [(value)]=\"txn.categoryID\" [options]=\"categories\" optionDisplay=\"name\" optionValue=\"listItemID\" [defaultFirstValue]=\"true\"></spa-select>\r\n\r\n\r\n\r\n </div>\r\n\r\n</mat-dialog-content>\r\n\r\n\r\n<mat-dialog-actions>\r\n<button mat-button [disabled]=\"isProcessing\" (click)=\"submit()\" cdkFocusInitial>Submit</button>\r\n<button mat-button [disabled]=\"isProcessing\" cdkFocusInitial mat-dialog-close>Cancel</button>\r\n</mat-dialog-actions>\r\n\r\n\r\n\r\n", styles: [".info{color:#4682b4;margin-top:5px;margin-right:5px;font-size:18px}.sign{margin-top:5px;font-size:18px}.actionbuttons{gap:1px}button{padding-left:7px}.mat-mini-fab{width:32px;height:32px}.mat-mini-fab mat-icon{font-size:16px;margin-top:-3px}\n"] }]
@@ -32,7 +32,6 @@ export class UsersComponent {
32
32
  }
33
33
  UpdateData() {
34
34
  this.dataService.GetUser().subscribe((apiResponse) => {
35
- // console.log(apiResponse)
36
35
  this.usersRaw = apiResponse.data;
37
36
  this.users = new MatTableDataSource(apiResponse.data);
38
37
  this.users.paginator = this.usersPaginator;
@@ -116,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
116
115
  type: ViewChild,
117
116
  args: ["usersPaginator"]
118
117
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdXNlcnMvdXNlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdXNlcnMvdXNlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBa0IsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFlN0QsTUFBTSxPQUFPLGNBQWM7SUFDekIsWUFBb0IsV0FBd0IsRUFBUyxNQUFjLEVBQVUsV0FBd0IsRUFBVSxXQUEyQixFQUFTLE1BQWlCLEVBQVUsY0FBOEI7UUFBeEwsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBTzVNLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBRzlCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBSWpCLHFCQUFnQixHQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQWQyRyxDQUFDO0lBRWpOLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FB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LGNBQWMsbUtDaEIzQix3cUpBaUdBOzJGRGpGYSxjQUFjO2tCQUwxQixTQUFTOytCQUNFLFdBQVc7bU9BYVEsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0LCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGVcIjtcclxuaW1wb3J0IHsgTWF0UGFnaW5hdG9yIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvclwiO1xyXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2RpYWxvZ1wiO1xyXG5pbXBvcnQgeyBEYXRhU2VydmljZUxpYiB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9kYXRhbGliLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9tZXNzYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvYXV0aC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFRhYmxlQ29uZmlnLCBVc2VyLCBBcGlSZXNwb25zZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcbmltcG9ydCB7IEh0dHBTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2h0dHAuc2VydmljZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwic3BhLXVzZXJzXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi91c2Vycy5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi91c2Vycy5jb21wb25lbnQuY3NzXCJdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVXNlcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cFNlcnZpY2U6IEh0dHBTZXJ2aWNlLCBwdWJsaWMgcm91dGVyOiBSb3V0ZXIsIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLCBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZUxpYiwgcHVibGljIGRpYWxvZzogTWF0RGlhbG9nLCBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hdXRoU2VydmljZS5pc0F1dGhvcmlzZWQodGhpcy5kYXRhU2VydmljZS5jYXBVc2Vycy5uYW1lKTtcclxuICAgIHRoaXMuVXBkYXRlRGF0YSgpO1xyXG4gIH1cclxuXHJcbiAgaXNQcm9jZXNzaW5nOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQFZpZXdDaGlsZChcInVzZXJzUGFnaW5hdG9yXCIpIHVzZXJzUGFnaW5hdG9yOiBNYXRQYWdpbmF0b3I7XHJcblxyXG4gIF9maWx0ZXJUZXh0ID0gXCJcIjtcclxuXHJcbiAgdXNlcnM7XHJcbiAgdXNlcnNSYXc7XHJcbiAgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10gPSBbXCJ1c2VyTmFtZVwiLCBcImZ1bGxOYW1lXCIsIFwicm9sZU5hbWVcIiwgXCJsb2NrZWRcIiwgXCJkYXRlQ3JlYXRlZFwiLCBcIkFjdGlvblwiXTtcclxuXHJcbiAgcHVibGljIFVwZGF0ZURhdGEoKSB7XHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLkdldFVzZXIoKS5zdWJzY3JpYmUoXHJcbiAgICAgIChhcGlSZXNwb25zZSkgPT4ge1xyXG5cclxuICAgICAgICAvLyBjb25zb2xlLmxvZyhhcGlSZXNwb25zZSlcclxuXHJcblxyXG4gICAgICAgIHRoaXMudXNlcnNSYXcgPSBhcGlSZXNwb25zZS5kYXRhO1xyXG4gICAgICAgIHRoaXMudXNlcnMgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlKGFwaVJlc3BvbnNlLmRhdGEpO1xyXG4gICAgICAgIHRoaXMudXNlcnMucGFnaW5hdG9yID0gdGhpcy51c2Vyc1BhZ2luYXRvcjtcclxuICAgICAgICB0aGlzLmFwcGx5RmlsdGVyKHRoaXMuX2ZpbHRlclRleHQpO1xyXG5cclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KHRoaXMuaHR0cFNlcnZpY2UuRXJyb3IoZXJyb3IpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGFwcGx5RmlsdGVyKGZpbHRlclZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMudXNlcnMuZmlsdGVyID0gZmlsdGVyVmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVBY2NvdW50KCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiaG9tZS9hZG1pbi9jcmVhdGUtYWNjb3VudFwiXSk7XHJcbiAgfVxyXG5cclxuICB2aWV3UHJvZmlsZSh1c2VyOiBVc2VyKSB7XHJcblxyXG4gICAgdGhpcy5kYXRhU2VydmljZS50bXBQcm9maWxldXNlck5hbWUgPSB1c2VyLnVzZXJOYW1lO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiaG9tZS91c2VyL3Byb2ZpbGVcIl0pO1xyXG5cclxuICB9XHJcblxyXG4gIGxvY2sodSkge1xyXG4gICAgbGV0IGxvZ2luID0geyB1c2VyTmFtZTogdS51c2VyTmFtZSwgcGFzc3dvcmQ6IFwiQWJjZGVmQDEyM1wiIH1cclxuXHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLkxvY2tVc2VyKGxvZ2luKS5zdWJzY3JpYmUoKGFwaVJlc3BvbnNlKSA9PiB7XHJcblxyXG4gICAgICBpZiAoYXBpUmVzcG9uc2Uuc3VjY2Vzcykge1xyXG4gICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJVc2VyIExvY2tlZFwiKTtcclxuICAgICAgICB0aGlzLlVwZGF0ZURhdGEoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiRXJyb3I6IFwiICsgYXBpUmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHVubG9jayh1KSB7XHJcbiAgICBsZXQgbG9naW4gPSB7IHVzZXJOYW1lOiB1LnVzZXJOYW1lLCBwYXNzd29yZDogXCJBYmNkZWZAMTIzXCIgfVxyXG5cclxuICAgIHRoaXMuZGF0YVNlcnZpY2UuVW5sb2NrVXNlcihsb2dpbikuc3Vic2NyaWJlKChhcGlSZXNwb25zZSkgPT4ge1xyXG5cclxuICAgICAgaWYgKGFwaVJlc3BvbnNlLnN1Y2Nlc3MpIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiVXNlciBVbmxvY2tlZFwiKTtcclxuICAgICAgICB0aGlzLlVwZGF0ZURhdGEoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiRXJyb3I6IFwiICsgYXBpUmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlY292ZXIodTogVXNlcikge1xyXG4gICAgdGhpcy5kYXRhU2VydmljZS5TZWxmUmVzZXQodSkuc3Vic2NyaWJlKChhcGlSZXNwb25zZTogQXBpUmVzcG9uc2UpID0+IHtcclxuICAgICAgaWYgKGFwaVJlc3BvbnNlLm1lc3NhZ2UgPT0gXCJzdWNjZXNzXCIpIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiVGhlIHBhc3N3b3JkIGhhcyBiZWVuIHNlbnQgb24gZW1haWxcIik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdChcIkVycm9yOiBcIiArIGFwaVJlc3BvbnNlLm1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgfVxyXG5cclxuICBkZWxldGVVc2VyKHVzZXI6IFVzZXIpIHtcclxuXHJcblxyXG5cclxuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuY29uZmlybShgRGVsZXRlICR7dXNlci51c2VyTmFtZX0gP2ApLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcblxyXG4gICAgICBpZiAocmVzdWx0ID09IFwieWVzXCIpIHtcclxuXHJcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuRGVsZXRlVXNlcih1c2VyKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAoYXBpUmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICBpZiAoYXBpUmVzcG9uc2UubWVzc2FnZSA9PSBcInN1Y2Nlc3NcIikge1xyXG4gICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJVc2VyIERlbGV0ZWRcIik7XHJcblxyXG4gICAgICAgICAgICAgIHRoaXMuVXBkYXRlRGF0YSgpO1xyXG5cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiRXJyb3I6IFwiICsgYXBpUmVzcG9uc2UubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdChcIkNvbm5lY3Rpb24gZmFpbGVkIFwiKTtcclxuICAgICAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG5cclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gIC8vIGNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgLy8gICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gIC8vICAgbmV3VGV4dDogXCJDcmVhdGUgQWNjb3VudFwiLFxyXG4gIC8vICAgbWluQ29sdW1uczogWydmaXJzdE5hbWUnLCAnbGFzdE5hbWUnLCAncm9sZUlEJ10sXHJcblxyXG4gIC8vICAgY29sdW1uczogW1xyXG4gIC8vICAgICB7IG5hbWU6ICd1c2VyTmFtZScsIHR5cGU6ICd0ZXh0JywgaWNvbjogeyBuYW1lOiAncGVyc29uJywgY29sb3I6ICdncmVlbicsIHRpcDogJ25hbWUgZGVzYycgfSB9LFxyXG4gIC8vICAgICB7IG5hbWU6ICdmaXJzdE5hbWUnLCB0eXBlOiAndGV4dCcsfSxcclxuICAvLyAgICAgeyBuYW1lOiAnbGFzdE5hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAvLyAgICAgeyBuYW1lOiAncm9sZUlEJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgLy8gICAgIHsgbmFtZTogJ2xvY2tlZCcsIHR5cGU6ICdjaGVja2JveCcgfSxcclxuICAvLyAgICAgeyBuYW1lOiAnY3JlYXRlZERhdGUnLCB0eXBlOiAnZGF0ZScgfSxcclxuICAvLyAgIF0sXHJcblxyXG4gIC8vICAgYnV0dG9uczogW1xyXG4gIC8vICAgICB7IG5hbWU6J2NyZWF0ZScsIGRpc3BsYXk6J0NyZWF0ZSBBY2NvdW50JywgZGlhbG9nOiB0cnVlIH0sXHJcbiAgLy8gICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUsIGljb246IHsgbmFtZTogJ2FjY291bnRfY2lyY2xlJ30gfSxcclxuICAvLyAgICAgeyBuYW1lOiAnY3VzdG9tMScsIGFjdGlvbjogeyBtZXRob2Q6ICdwb3N0JywgdXJsOiAnVXNlci9sb2NrJywgc3VjY2Vzc01lc3NhZ2U6IFwiVXNlciBsb2NrZWRcIiB9LCBjb2xvcjoncmVkJywgdGlwOidsb2NrJywgaWNvbjogeyBuYW1lOiAnbG9jayd9LCB2aXNpYmxlOiAodmFsdWUpID0+IHZhbHVlLmxvY2tlZCA9PSAwfSxcclxuICAvLyAgICAgeyBuYW1lOiAnY3VzdG9tMicsIGFjdGlvbjogeyBtZXRob2Q6ICdwb3N0JywgdXJsOiAnVXNlci91bmxvY2snLCBzdWNjZXNzTWVzc2FnZTogXCJVc2VyIFVubG9ja2VkXCIgfSwgY29sb3I6ICdncmVlbicsIHRpcDogJ3VubG9jaycsIGljb246IHsgbmFtZTogJ2xvY2tfb3BlbicgfSwgdmlzaWJsZTogKHZhbHVlKSA9PiB2YWx1ZS5sb2NrZWQgPT0gMSB9LFxyXG4gIC8vICAgICB7IG5hbWU6ICdkZWxldGUnIH0sXHJcbiAgLy8gICBdLFxyXG5cclxuICAvLyAgIGxvYWRBY3Rpb246IHsgdXJsOiAnVXNlci9hbGwveCcgfVxyXG5cclxuICAvLyB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbiIsIlxyXG48aDQ+VXNlcnM8L2g0PlxyXG48aHIgLz5cclxuXHJcbjxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTRweDtcIj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cInJvdyBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiIHN0eWxlPVwicGFkZGluZy1ib3R0b206IDEwcHhcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMlwiPlxyXG4gICAgICA8YnV0dG9uIGlkPVwiYnRuQ3JlYXRlQWNjb3VudFwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJjcmVhdGVBY2NvdW50KClcIj5DcmVhdGUgVXNlcjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCI+XHJcbiAgICAgIDxzcGEtZmlsdGVyIFtkYXRhXT1cInVzZXJzXCIgKHJlZnJlc2hDbGljayk9XCJVcGRhdGVEYXRhKClcIj48L3NwYS1maWx0ZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcblxyXG4gIDxwICpuZ0lmPVwiIXVzZXJzXCI+PGVtPkxvYWRpbmcuLi48L2VtPjwvcD5cclxuXHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXo4XCIgKm5nSWY9XCJ1c2Vyc1wiPlxyXG5cclxuICAgIDx0YWJsZSBpZD1cInRibFRhYmxlXCIgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cInVzZXJzXCI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInVzZXJOYW1lXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gVXNlck5hbWUgPC90aD5cclxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgdXNlclwiPiB7e3VzZXIudXNlck5hbWV9fSA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwibG9ja2VkXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gTG9ja2VkIDwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHVzZXJcIj4ge3t1c2VyLmxvY2tlZH19IDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJmdWxsTmFtZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+IE5hbWUgPC90aD5cclxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgdXNlclwiPiB7e3VzZXIuZmlyc3ROYW1lfX0ge3t1c2VyLmxhc3ROYW1lfX0gPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInJvbGVOYW1lXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gUm9sZSA8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCB1c2VyXCI+IHt7dXNlci5yb2xlLnJvbGVOYW1lfX0gPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImRpc2FibGVkXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gRGlzYWJsZWQgPC90aD5cclxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgdXNlclwiPiB7e3VzZXIuZGlzYWJsZWR9fSA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZGF0ZUNyZWF0ZWRcIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPiBDcmVhdGVkIDwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHVzZXJcIj4ge3t1c2VyLmNyZWF0ZWREYXRlIHwgZGF0ZTogJ2RkL01NL3l5eXknfX0gPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImRhdGVVcGRhdGVkXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gVXBkYXRlZCA8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCB1c2VyXCI+IHt7dXNlci51cGRhdGVkRGF0ZSB8IGRhdGU6ICdkZC9NTS95eXl5J319IDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiQWN0aW9uXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gQWN0aW9uIDwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHVzZXJcIiBzdHlsZT1cIndpZHRoOiAyNTBweDtcIj5cclxuXHJcbiAgICAgICAgICA8YnV0dG9uIG1hdC1taW5pLWZhYiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwidmlld1Byb2ZpbGUodXNlcilcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDozMHB4XCIgbWF0VG9vbHRpcD1cIlZpZXcgUHJvZmlsZVwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+IDxtYXQtaWNvbj5hY2NvdW50X2NpcmNsZTwvbWF0LWljb24+PC9idXR0b24+XHJcblxyXG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cInVzZXIubG9ja2VkPT0nMCdcIiBtYXQtbWluaS1mYWIgY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cImxvY2sodXNlcilcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDoxMHB4XCIgbWF0VG9vbHRpcD1cIkxvY2tcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPiA8bWF0LWljb24+bG9jazwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwidXNlci5sb2NrZWQ9PScxJ1wiIG1hdC1taW5pLWZhYiAgKGNsaWNrKT1cInVubG9jayh1c2VyKVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OjEwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1wiIG1hdFRvb2x0aXA9XCJVbmxvY2tcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPiA8bWF0LWljb24gPmxvY2tfb3BlbjwvbWF0LWljb24+PC9idXR0b24+XHJcblxyXG4gICAgICAgICAgPCEtLSA8YnV0dG9uICpuZ0lmPVwidXNlci5kaXNhYmxlZD09JzAnXCIgbWF0LW1pbmktZmFiIGNvbG9yPVwid2FyblwiIChjbGljayk9XCJkaXNhYmxlKHVzZXIpXCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6MTBweFwiIG1hdFRvb2x0aXA9XCJEaXNhYmxlXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIj4gPG1hdC1pY29uPmJsb2NrPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJ1c2VyLmRpc2FibGVkPT0nMSdcIiBtYXQtbWluaS1mYWIgKGNsaWNrKT1cImVuYWJsZSh1c2VyKVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OjEwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuXCIgbWF0VG9vbHRpcD1cIkVuYWJsZVwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+IDxtYXQtaWNvbj5kb25lPC9tYXQtaWNvbj48L2J1dHRvbj4gLS0+XHJcblxyXG4gICAgICAgICAgPGJ1dHRvbiBtYXQtbWluaS1mYWIgY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cImRlbGV0ZVVzZXIodXNlcilcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDoxMHB4XCIgbWF0VG9vbHRpcD1cIkRlbGV0ZVwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+IDxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICAgICAgPCEtLSA8YnV0dG9uIG1hdC1taW5pLWZhYiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwicmVjb3Zlcih1c2VyKVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OjEwcHhcIiBtYXRUb29sdGlwPVwiUmVzZXQgUGFzc3dvcmRcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPiA8bWF0LWljb24+dnBuX2tleTwvbWF0LWljb24+PC9idXR0b24+IC0tPlxyXG5cclxuXHJcblxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcbiAgICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc1wiPjwvdHI+XHJcbiAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zO1wiIFtuZ0NsYXNzXT1cInsnbWFrZS1ncmF5Jzogcm93LmRpc2FibGVkID09JzEnfVwiPjwvdHI+XHJcblxyXG4gICAgPC90YWJsZT5cclxuXHJcbiAgPC9kaXY+XHJcblxyXG4gIDxtYXQtcGFnaW5hdG9yICN1c2Vyc1BhZ2luYXRvciBbcGFnZVNpemVPcHRpb25zXT1cIlsxMCwgMjAsIDUwXVwiIHNob3dGaXJzdExhc3RCdXR0b25zPjwvbWF0LXBhZ2luYXRvcj5cclxuPC9kaXY+XHJcblxyXG48IS0tIC0tLS0tLS0tLS0tLS0tLS0tLSAtLT5cclxuXHJcbjwhLS0gPGRpdiBjbGFzcz1cImNvbnRhaW5lciBtdC01XCIgc3R5bGU9XCIgZm9udC1zaXplOiAxNHB4O1wiPlxyXG48c3BhLXRhYmxlICBbZGF0YV09XCJ1c2Vyc1Jhd1wiIFtjb25maWddPVwiY29uZmlnXCIgKHJlZnJlc2hDbGljayk9XCJVcGRhdGVEYXRhKClcIiAodmlld0NsaWNrKT1cInZpZXdQcm9maWxlKCRldmVudClcIiAoY3JlYXRlQ2xpY2spPVwiY3JlYXRlQWNjb3VudCgpXCIgKGRlbGV0ZUNsaWNrKT1cImRlbGV0ZVVzZXIoJGV2ZW50KVwiPjwvc3BhLXRhYmxlPlxyXG48L2Rpdj4gLS0+XHJcblxyXG4iXX0=
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdXNlcnMvdXNlcnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdXNlcnMvdXNlcnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBa0IsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFlN0QsTUFBTSxPQUFPLGNBQWM7SUFDekIsWUFBb0IsV0FBd0IsRUFBUyxNQUFjLEVBQVUsV0FBd0IsRUFBVSxXQUEyQixFQUFTLE1BQWlCLEVBQVUsY0FBOEI7UUFBeEwsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBZ0I7UUFBUyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQVUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBTzVNLGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBRzlCLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBSWpCLHFCQUFnQixHQUFhLENBQUMsVUFBVSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQztJQWQyRyxDQUFDO0lBRWpOLFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FB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LHdxSkFpR0E7MkZEakZhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsV0FBVzttT0FhUSxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC90YWJsZVwiO1xyXG5pbXBvcnQgeyBNYXRQYWdpbmF0b3IgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yXCI7XHJcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nXCI7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlTGliIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL21lc3NhZ2Uuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgVGFibGVDb25maWcsIFVzZXIsIEFwaVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvaHR0cC5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJzcGEtdXNlcnNcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL3VzZXJzLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL3VzZXJzLmNvbXBvbmVudC5jc3NcIl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVc2Vyc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwU2VydmljZTogSHR0cFNlcnZpY2UsIHB1YmxpYyByb3V0ZXI6IFJvdXRlciwgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlTGliLCBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2csIHByaXZhdGUgbWVzc2FnZVNlcnZpY2U6IE1lc3NhZ2VTZXJ2aWNlKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmlzQXV0aG9yaXNlZCh0aGlzLmRhdGFTZXJ2aWNlLmNhcFVzZXJzLm5hbWUpO1xyXG4gICAgdGhpcy5VcGRhdGVEYXRhKCk7XHJcbiAgfVxyXG5cclxuICBpc1Byb2Nlc3Npbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBAVmlld0NoaWxkKFwidXNlcnNQYWdpbmF0b3JcIikgdXNlcnNQYWdpbmF0b3I6IE1hdFBhZ2luYXRvcjtcclxuXHJcbiAgX2ZpbHRlclRleHQgPSBcIlwiO1xyXG5cclxuICB1c2VycztcclxuICB1c2Vyc1JhdztcclxuICBkaXNwbGF5ZWRDb2x1bW5zOiBzdHJpbmdbXSA9IFtcInVzZXJOYW1lXCIsIFwiZnVsbE5hbWVcIiwgXCJyb2xlTmFtZVwiLCBcImxvY2tlZFwiLCBcImRhdGVDcmVhdGVkXCIsIFwiQWN0aW9uXCJdO1xyXG5cclxuICBwdWJsaWMgVXBkYXRlRGF0YSgpIHtcclxuICAgIHRoaXMuZGF0YVNlcnZpY2UuR2V0VXNlcigpLnN1YnNjcmliZShcclxuICAgICAgKGFwaVJlc3BvbnNlKSA9PiB7XHJcblxyXG4gICAgICAgIHRoaXMudXNlcnNSYXcgPSBhcGlSZXNwb25zZS5kYXRhO1xyXG4gICAgICAgIHRoaXMudXNlcnMgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlKGFwaVJlc3BvbnNlLmRhdGEpO1xyXG4gICAgICAgIHRoaXMudXNlcnMucGFnaW5hdG9yID0gdGhpcy51c2Vyc1BhZ2luYXRvcjtcclxuICAgICAgICB0aGlzLmFwcGx5RmlsdGVyKHRoaXMuX2ZpbHRlclRleHQpO1xyXG5cclxuICAgICAgfSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KHRoaXMuaHR0cFNlcnZpY2UuRXJyb3IoZXJyb3IpKTtcclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGFwcGx5RmlsdGVyKGZpbHRlclZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMudXNlcnMuZmlsdGVyID0gZmlsdGVyVmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVBY2NvdW50KCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiaG9tZS9hZG1pbi9jcmVhdGUtYWNjb3VudFwiXSk7XHJcbiAgfVxyXG5cclxuICB2aWV3UHJvZmlsZSh1c2VyOiBVc2VyKSB7XHJcblxyXG4gICAgdGhpcy5kYXRhU2VydmljZS50bXBQcm9maWxldXNlck5hbWUgPSB1c2VyLnVzZXJOYW1lO1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1wiaG9tZS91c2VyL3Byb2ZpbGVcIl0pO1xyXG5cclxuICB9XHJcblxyXG4gIGxvY2sodSkge1xyXG4gICAgbGV0IGxvZ2luID0geyB1c2VyTmFtZTogdS51c2VyTmFtZSwgcGFzc3dvcmQ6IFwiQWJjZGVmQDEyM1wiIH1cclxuXHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLkxvY2tVc2VyKGxvZ2luKS5zdWJzY3JpYmUoKGFwaVJlc3BvbnNlKSA9PiB7XHJcblxyXG4gICAgICBpZiAoYXBpUmVzcG9uc2Uuc3VjY2Vzcykge1xyXG4gICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJVc2VyIExvY2tlZFwiKTtcclxuICAgICAgICB0aGlzLlVwZGF0ZURhdGEoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiRXJyb3I6IFwiICsgYXBpUmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHVubG9jayh1KSB7XHJcbiAgICBsZXQgbG9naW4gPSB7IHVzZXJOYW1lOiB1LnVzZXJOYW1lLCBwYXNzd29yZDogXCJBYmNkZWZAMTIzXCIgfVxyXG5cclxuICAgIHRoaXMuZGF0YVNlcnZpY2UuVW5sb2NrVXNlcihsb2dpbikuc3Vic2NyaWJlKChhcGlSZXNwb25zZSkgPT4ge1xyXG5cclxuICAgICAgaWYgKGFwaVJlc3BvbnNlLnN1Y2Nlc3MpIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiVXNlciBVbmxvY2tlZFwiKTtcclxuICAgICAgICB0aGlzLlVwZGF0ZURhdGEoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiRXJyb3I6IFwiICsgYXBpUmVzcG9uc2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHJlY292ZXIodTogVXNlcikge1xyXG4gICAgdGhpcy5kYXRhU2VydmljZS5TZWxmUmVzZXQodSkuc3Vic2NyaWJlKChhcGlSZXNwb25zZTogQXBpUmVzcG9uc2UpID0+IHtcclxuICAgICAgaWYgKGFwaVJlc3BvbnNlLm1lc3NhZ2UgPT0gXCJzdWNjZXNzXCIpIHtcclxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiVGhlIHBhc3N3b3JkIGhhcyBiZWVuIHNlbnQgb24gZW1haWxcIik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdChcIkVycm9yOiBcIiArIGFwaVJlc3BvbnNlLm1lc3NhZ2UpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgfVxyXG5cclxuICBkZWxldGVVc2VyKHVzZXI6IFVzZXIpIHtcclxuXHJcblxyXG5cclxuICAgIHRoaXMubWVzc2FnZVNlcnZpY2UuY29uZmlybShgRGVsZXRlICR7dXNlci51c2VyTmFtZX0gP2ApLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XHJcblxyXG4gICAgICBpZiAocmVzdWx0ID09IFwieWVzXCIpIHtcclxuXHJcbiAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuRGVsZXRlVXNlcih1c2VyKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAoYXBpUmVzcG9uc2U6IEFwaVJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuaXNQcm9jZXNzaW5nID0gZmFsc2U7XHJcblxyXG4gICAgICAgICAgICBpZiAoYXBpUmVzcG9uc2UubWVzc2FnZSA9PSBcInN1Y2Nlc3NcIikge1xyXG4gICAgICAgICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UudG9hc3QoXCJVc2VyIERlbGV0ZWRcIik7XHJcblxyXG4gICAgICAgICAgICAgIHRoaXMuVXBkYXRlRGF0YSgpO1xyXG5cclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLnRvYXN0KFwiRXJyb3I6IFwiICsgYXBpUmVzcG9uc2UubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZS50b2FzdChcIkNvbm5lY3Rpb24gZmFpbGVkIFwiKTtcclxuICAgICAgICAgICAgdGhpcy5pc1Byb2Nlc3NpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG5cclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4gIC8vIGNvbmZpZzogVGFibGVDb25maWcgPSB7XHJcbiAgLy8gICBzaG93RmlsdGVyOiB0cnVlLFxyXG4gIC8vICAgbmV3VGV4dDogXCJDcmVhdGUgQWNjb3VudFwiLFxyXG4gIC8vICAgbWluQ29sdW1uczogWydmaXJzdE5hbWUnLCAnbGFzdE5hbWUnLCAncm9sZUlEJ10sXHJcblxyXG4gIC8vICAgY29sdW1uczogW1xyXG4gIC8vICAgICB7IG5hbWU6ICd1c2VyTmFtZScsIHR5cGU6ICd0ZXh0JywgaWNvbjogeyBuYW1lOiAncGVyc29uJywgY29sb3I6ICdncmVlbicsIHRpcDogJ25hbWUgZGVzYycgfSB9LFxyXG4gIC8vICAgICB7IG5hbWU6ICdmaXJzdE5hbWUnLCB0eXBlOiAndGV4dCcsfSxcclxuICAvLyAgICAgeyBuYW1lOiAnbGFzdE5hbWUnLCB0eXBlOiAndGV4dCcgfSxcclxuICAvLyAgICAgeyBuYW1lOiAncm9sZUlEJywgdHlwZTogJ3RleHQnIH0sXHJcbiAgLy8gICAgIHsgbmFtZTogJ2xvY2tlZCcsIHR5cGU6ICdjaGVja2JveCcgfSxcclxuICAvLyAgICAgeyBuYW1lOiAnY3JlYXRlZERhdGUnLCB0eXBlOiAnZGF0ZScgfSxcclxuICAvLyAgIF0sXHJcblxyXG4gIC8vICAgYnV0dG9uczogW1xyXG4gIC8vICAgICB7IG5hbWU6J2NyZWF0ZScsIGRpc3BsYXk6J0NyZWF0ZSBBY2NvdW50JywgZGlhbG9nOiB0cnVlIH0sXHJcbiAgLy8gICAgIHsgbmFtZTogJ3ZpZXcnLCBkaWFsb2c6IHRydWUsIGljb246IHsgbmFtZTogJ2FjY291bnRfY2lyY2xlJ30gfSxcclxuICAvLyAgICAgeyBuYW1lOiAnY3VzdG9tMScsIGFjdGlvbjogeyBtZXRob2Q6ICdwb3N0JywgdXJsOiAnVXNlci9sb2NrJywgc3VjY2Vzc01lc3NhZ2U6IFwiVXNlciBsb2NrZWRcIiB9LCBjb2xvcjoncmVkJywgdGlwOidsb2NrJywgaWNvbjogeyBuYW1lOiAnbG9jayd9LCB2aXNpYmxlOiAodmFsdWUpID0+IHZhbHVlLmxvY2tlZCA9PSAwfSxcclxuICAvLyAgICAgeyBuYW1lOiAnY3VzdG9tMicsIGFjdGlvbjogeyBtZXRob2Q6ICdwb3N0JywgdXJsOiAnVXNlci91bmxvY2snLCBzdWNjZXNzTWVzc2FnZTogXCJVc2VyIFVubG9ja2VkXCIgfSwgY29sb3I6ICdncmVlbicsIHRpcDogJ3VubG9jaycsIGljb246IHsgbmFtZTogJ2xvY2tfb3BlbicgfSwgdmlzaWJsZTogKHZhbHVlKSA9PiB2YWx1ZS5sb2NrZWQgPT0gMSB9LFxyXG4gIC8vICAgICB7IG5hbWU6ICdkZWxldGUnIH0sXHJcbiAgLy8gICBdLFxyXG5cclxuICAvLyAgIGxvYWRBY3Rpb246IHsgdXJsOiAnVXNlci9hbGwveCcgfVxyXG5cclxuICAvLyB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcbiIsIlxyXG48aDQ+VXNlcnM8L2g0PlxyXG48aHIgLz5cclxuXHJcbjxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWRcIiBzdHlsZT1cImZvbnQtc2l6ZTogMTRweDtcIj5cclxuXHJcbiAgPGRpdiBjbGFzcz1cInJvdyBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiIHN0eWxlPVwicGFkZGluZy1ib3R0b206IDEwcHhcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtMlwiPlxyXG4gICAgICA8YnV0dG9uIGlkPVwiYnRuQ3JlYXRlQWNjb3VudFwiIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIChjbGljayk9XCJjcmVhdGVBY2NvdW50KClcIj5DcmVhdGUgVXNlcjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtZW5kXCI+XHJcbiAgICAgIDxzcGEtZmlsdGVyIFtkYXRhXT1cInVzZXJzXCIgKHJlZnJlc2hDbGljayk9XCJVcGRhdGVEYXRhKClcIj48L3NwYS1maWx0ZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcblxyXG4gIDxwICpuZ0lmPVwiIXVzZXJzXCI+PGVtPkxvYWRpbmcuLi48L2VtPjwvcD5cclxuXHJcblxyXG4gIDxkaXYgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXo4XCIgKm5nSWY9XCJ1c2Vyc1wiPlxyXG5cclxuICAgIDx0YWJsZSBpZD1cInRibFRhYmxlXCIgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cInVzZXJzXCI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInVzZXJOYW1lXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gVXNlck5hbWUgPC90aD5cclxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgdXNlclwiPiB7e3VzZXIudXNlck5hbWV9fSA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwibG9ja2VkXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gTG9ja2VkIDwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHVzZXJcIj4ge3t1c2VyLmxvY2tlZH19IDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJmdWxsTmFtZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+IE5hbWUgPC90aD5cclxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgdXNlclwiPiB7e3VzZXIuZmlyc3ROYW1lfX0ge3t1c2VyLmxhc3ROYW1lfX0gPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInJvbGVOYW1lXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gUm9sZSA8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCB1c2VyXCI+IHt7dXNlci5yb2xlLnJvbGVOYW1lfX0gPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImRpc2FibGVkXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gRGlzYWJsZWQgPC90aD5cclxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgdXNlclwiPiB7e3VzZXIuZGlzYWJsZWR9fSA8L3RkPlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZGF0ZUNyZWF0ZWRcIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPiBDcmVhdGVkIDwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHVzZXJcIj4ge3t1c2VyLmNyZWF0ZWREYXRlIHwgZGF0ZTogJ2RkL01NL3l5eXknfX0gPC90ZD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImRhdGVVcGRhdGVkXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gVXBkYXRlZCA8L3RoPlxyXG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCB1c2VyXCI+IHt7dXNlci51cGRhdGVkRGF0ZSB8IGRhdGU6ICdkZC9NTS95eXl5J319IDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiQWN0aW9uXCI+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj4gQWN0aW9uIDwvdGg+XHJcbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IHVzZXJcIiBzdHlsZT1cIndpZHRoOiAyNTBweDtcIj5cclxuXHJcbiAgICAgICAgICA8YnV0dG9uIG1hdC1taW5pLWZhYiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwidmlld1Byb2ZpbGUodXNlcilcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDozMHB4XCIgbWF0VG9vbHRpcD1cIlZpZXcgUHJvZmlsZVwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+IDxtYXQtaWNvbj5hY2NvdW50X2NpcmNsZTwvbWF0LWljb24+PC9idXR0b24+XHJcblxyXG4gICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cInVzZXIubG9ja2VkPT0nMCdcIiBtYXQtbWluaS1mYWIgY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cImxvY2sodXNlcilcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDoxMHB4XCIgbWF0VG9vbHRpcD1cIkxvY2tcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPiA8bWF0LWljb24+bG9jazwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwidXNlci5sb2NrZWQ9PScxJ1wiIG1hdC1taW5pLWZhYiAgKGNsaWNrKT1cInVubG9jayh1c2VyKVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OjEwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuO1wiIG1hdFRvb2x0aXA9XCJVbmxvY2tcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPiA8bWF0LWljb24gPmxvY2tfb3BlbjwvbWF0LWljb24+PC9idXR0b24+XHJcblxyXG4gICAgICAgICAgPCEtLSA8YnV0dG9uICpuZ0lmPVwidXNlci5kaXNhYmxlZD09JzAnXCIgbWF0LW1pbmktZmFiIGNvbG9yPVwid2FyblwiIChjbGljayk9XCJkaXNhYmxlKHVzZXIpXCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6MTBweFwiIG1hdFRvb2x0aXA9XCJEaXNhYmxlXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIj4gPG1hdC1pY29uPmJsb2NrPC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICAgICAgICAgIDxidXR0b24gKm5nSWY9XCJ1c2VyLmRpc2FibGVkPT0nMSdcIiBtYXQtbWluaS1mYWIgKGNsaWNrKT1cImVuYWJsZSh1c2VyKVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OjEwcHg7IGJhY2tncm91bmQtY29sb3I6IGdyZWVuXCIgbWF0VG9vbHRpcD1cIkVuYWJsZVwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+IDxtYXQtaWNvbj5kb25lPC9tYXQtaWNvbj48L2J1dHRvbj4gLS0+XHJcblxyXG4gICAgICAgICAgPGJ1dHRvbiBtYXQtbWluaS1mYWIgY29sb3I9XCJ3YXJuXCIgKGNsaWNrKT1cImRlbGV0ZVVzZXIodXNlcilcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDoxMHB4XCIgbWF0VG9vbHRpcD1cIkRlbGV0ZVwiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+IDxtYXQtaWNvbj5kZWxldGU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgICAgICAgPCEtLSA8YnV0dG9uIG1hdC1taW5pLWZhYiBjb2xvcj1cInByaW1hcnlcIiAoY2xpY2spPVwicmVjb3Zlcih1c2VyKVwiIHN0eWxlPVwibWFyZ2luLXJpZ2h0OjEwcHhcIiBtYXRUb29sdGlwPVwiUmVzZXQgUGFzc3dvcmRcIiBtYXRUb29sdGlwUG9zaXRpb249XCJhYm92ZVwiPiA8bWF0LWljb24+dnBuX2tleTwvbWF0LWljb24+PC9idXR0b24+IC0tPlxyXG5cclxuXHJcblxyXG4gICAgICAgIDwvdGQ+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuXHJcbiAgICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc1wiPjwvdHI+XHJcbiAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zO1wiIFtuZ0NsYXNzXT1cInsnbWFrZS1ncmF5Jzogcm93LmRpc2FibGVkID09JzEnfVwiPjwvdHI+XHJcblxyXG4gICAgPC90YWJsZT5cclxuXHJcbiAgPC9kaXY+XHJcblxyXG4gIDxtYXQtcGFnaW5hdG9yICN1c2Vyc1BhZ2luYXRvciBbcGFnZVNpemVPcHRpb25zXT1cIlsxMCwgMjAsIDUwXVwiIHNob3dGaXJzdExhc3RCdXR0b25zPjwvbWF0LXBhZ2luYXRvcj5cclxuPC9kaXY+XHJcblxyXG48IS0tIC0tLS0tLS0tLS0tLS0tLS0tLSAtLT5cclxuXHJcbjwhLS0gPGRpdiBjbGFzcz1cImNvbnRhaW5lciBtdC01XCIgc3R5bGU9XCIgZm9udC1zaXplOiAxNHB4O1wiPlxyXG48c3BhLXRhYmxlICBbZGF0YV09XCJ1c2Vyc1Jhd1wiIFtjb25maWddPVwiY29uZmlnXCIgKHJlZnJlc2hDbGljayk9XCJVcGRhdGVEYXRhKClcIiAodmlld0NsaWNrKT1cInZpZXdQcm9maWxlKCRldmVudClcIiAoY3JlYXRlQ2xpY2spPVwiY3JlYXRlQWNjb3VudCgpXCIgKGRlbGV0ZUNsaWNrKT1cImRlbGV0ZVVzZXIoJGV2ZW50KVwiPjwvc3BhLXRhYmxlPlxyXG48L2Rpdj4gLS0+XHJcblxyXG4iXX0=
@@ -18,8 +18,6 @@ export class ViewerComponent {
18
18
  this.title = "Documents";
19
19
  }
20
20
  ngOnInit() {
21
- // this.fileNames = 'tinashe.jpg'
22
- console.log("Viewer Init");
23
21
  if (this.fileAction) {
24
22
  this.loadData();
25
23
  }
@@ -78,4 +76,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
78
76
  }], title: [{
79
77
  type: Input
80
78
  }] } });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9jb21wb25lbnRzL3ZpZXdlci92aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdmlld2VyL3ZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQVN4RCxNQUFNLE9BQU8sZUFBZTtJQUUxQixZQUFvQixXQUEyQixFQUFRLE1BQWlCO1FBQXBELGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUFRLFdBQU0sR0FBTixNQUFNLENBQVc7UUFnQi9ELFNBQUksR0FBRyxFQUFFLENBQUM7UUFDVixlQUFVLEdBQUMsRUFBRSxDQUFDO1FBRWQsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNqQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUM3QixZQUFPLEdBQUcsV0FBVyxDQUFDO1FBQ3RCLFVBQUssR0FBRyxXQUFXLENBQUM7SUF0QitDLENBQUM7SUFFN0UsUUFBUTtRQUVOLGlDQUFpQztRQUNqQyxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBQzFCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBQztZQUNsQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDakI7YUFBSTtZQUNILElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztTQUNoQjtJQUNILENBQUM7SUFhRCxzQkFBc0I7SUFFdEIsUUFBUTtRQUVOLE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUE7UUFDNUIsSUFBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLEdBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2hFLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEVBQUMsR0FBRyxFQUFFLEdBQUcsRUFBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFdBQXdCLEVBQUUsRUFBRTtZQUM5RSxJQUFJLENBQUMsU0FBUyxHQUFHLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDbEMsOEJBQThCO1lBQzlCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxPQUFPO1FBQ0wsSUFBSSxPQUFPLElBQUksQ0FBQyxTQUFTLElBQUksUUFBUSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUE7U0FDM0M7SUFDSCxDQUFDO0lBRUQsUUFBUSxDQUFDLFFBQWdCO1FBRXZCLElBQUksT0FBTyxRQUFRLElBQUksUUFBUSxFQUFFO1lBQy9CLE9BQU87U0FDUjtRQUlELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUMvQyxRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxNQUFNO1lBRWhCLElBQUksRUFBRSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLElBQUksSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUUsRUFBRTtTQUM3RyxDQUFDLENBQUM7SUFFTCxDQUFDO0lBRUQsT0FBTyxDQUFDLENBQUM7UUFDUCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN0QixDQUFDOzs0R0FoRVUsZUFBZTtnR0FBZixlQUFlLG1QQ1g1QixxZ0JBYUE7MkZERmEsZUFBZTtrQkFMM0IsU0FBUzsrQkFDRSxZQUFZOzZIQXFCYixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDSSxNQUFNO3NCQUFmLE1BQU07Z0JBQ0UsT0FBTztzQkFBZixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyB2aWV3ZXJEaWFsb2cgfSBmcm9tICcuL3ZpZXdlckRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEYXRhU2VydmljZUxpYiB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2RhdGFsaWIuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjdGlvbiwgQXBpUmVzcG9uc2UgfSBmcm9tICcuLi8uLi9jbGFzc2VzL0NsYXNzZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzcGEtdmlld2VyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdmlld2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi92aWV3ZXIuY29tcG9uZW50LmNzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWaWV3ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZUxpYixwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2cpIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuXHJcbiAgICAvLyB0aGlzLmZpbGVOYW1lcyA9ICd0aW5hc2hlLmpwZydcclxuICAgIGNvbnNvbGUubG9nKFwiVmlld2VyIEluaXRcIilcclxuICAgIGlmICh0aGlzLmZpbGVBY3Rpb24pe1xyXG4gICAgICB0aGlzLmxvYWREYXRhKCk7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5jb252ZXJ0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIEBJbnB1dCgpIGZpbGVBY3Rpb24gOiBBY3Rpb247XHJcbiAgQElucHV0KCkgcGF0aCA9IFwiXCI7XHJcbiAgQElucHV0KCkgZm9sZGVyTmFtZT1cIlwiO1xyXG4gIEBJbnB1dCgpIGZpbGVOYW1lczsvLyBuZXcgQXJyYXkoKVxyXG4gIEBJbnB1dCgpIHJlbW92YWJsZSA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSByZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgZGlzcGxheSA9IFwiRG9jdW1lbnRzXCI7XHJcbiAgQElucHV0KCkgdGl0bGUgPSBcIkRvY3VtZW50c1wiO1xyXG5cclxuICAvLyBmaWxlTGlzdDogc3RyaW5nW107XHJcblxyXG4gIGxvYWREYXRhKCkge1xyXG5cclxuICAgIGNvbnNvbGUubG9nKFwiQ2FsbGluZyBmaWxlc1wiKVxyXG4gICAgbGV0IHVybCA9IHRoaXMuZmlsZUFjdGlvbi51cmwucmVwbGFjZShcIi94XCIsICcvJyt0aGlzLmZvbGRlck5hbWUpXHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLkNhbGxBcGkoe3VybDogdXJsfSwgXCJcIikuc3Vic2NyaWJlKChhcGlSZXNwb25zZTogQXBpUmVzcG9uc2UpID0+IHtcclxuICAgICAgdGhpcy5maWxlTmFtZXMgPSBhcGlSZXNwb25zZS5kYXRhO1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmZpbGVOYW1lcylcclxuICAgICAgdGhpcy5jb252ZXJ0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNvbnZlcnQoKXtcclxuICAgIGlmICh0eXBlb2YgdGhpcy5maWxlTmFtZXMgPT0gJ3N0cmluZycpIHtcclxuICAgICAgdGhpcy5maWxlTmFtZXMgPSB0aGlzLmZpbGVOYW1lcy5zcGxpdChcInxcIilcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHZpZXdEb2NzKGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuXHJcbiAgICBpZiAodHlwZW9mIGZpbGVOYW1lICE9ICdzdHJpbmcnKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4odmlld2VyRGlhbG9nLCB7XHJcbiAgICAgIG1pbldpZHRoOiAnOTUlJyxcclxuICAgICAgbWF4V2lkdGg6ICc4MHZ3JyxcclxuXHJcbiAgICAgIGRhdGE6IHsgZmlsZU5hbWVzOiB0aGlzLmZpbGVOYW1lcywgZmlsZU5hbWU6IGZpbGVOYW1lLCBwYXRoOiBgJHt0aGlzLnBhdGggPz8gJyd9LyR7dGhpcy5mb2xkZXJOYW1lID8/ICcnfWAgfVxyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlZChpKXtcclxuICAgIHRoaXMucmVtb3ZlLmVtaXQoaSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidGluLWlucHV0LXJvdyBtdC0zXCIgKm5nSWY9XCJ0aXRsZSAhPSAnJ1wiPlxyXG4gIDxtYXQtbGFiZWwgc3R5bGU9XCJmb250LXNpemU6IDIwcHg7IGZvbnQtd2VpZ2h0OiAzMDBcIiA+ICB7e3RpdGxlfX08L21hdC1sYWJlbCA+XHJcbjwvZGl2PlxyXG5cclxuPHNwYS1jaGlwcyBbY2hpcHNdPVwiZmlsZU5hbWVzXCIgW3RpdGxlXT1cInRpdGxlXCIgIFtyZW1vdmFibGVdPVwicmVtb3ZhYmxlXCIgaWNvbj1cImRlc2NyaXB0aW9uXCIgKGNsaWNrKT1cInZpZXdEb2NzKCRldmVudClcIiAocmVtb3ZlKT1cInJlbW92ZWQoJGV2ZW50KVwiPjwvc3BhLWNoaXBzPlxyXG5cclxuXHJcblxyXG48ZGl2ICpuZ0lmPVwiIWZpbGVOYW1lc1wiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgcm93IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwibWF4LWhlaWdodDoyMDBweFwiPlxyXG5cclxuICBObyB7e3RpdGxlLnRvTG93ZXJDYXNlKCl9fVxyXG5cclxuPC9kaXY+XHJcbiJdfQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Rpbi1zcGEvc3JjL2xpYi9jb21wb25lbnRzL3ZpZXdlci92aWV3ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGluLXNwYS9zcmMvbGliL2NvbXBvbmVudHMvdmlld2VyL3ZpZXdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRS9FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQVN4RCxNQUFNLE9BQU8sZUFBZTtJQUUxQixZQUFvQixXQUEyQixFQUFRLE1BQWlCO1FBQXBELGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUFRLFdBQU0sR0FBTixNQUFNLENBQVc7UUFjL0QsU0FBSSxHQUFHLEVBQUUsQ0FBQztRQUNWLGVBQVUsR0FBQyxFQUFFLENBQUM7UUFFZCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdCLFlBQU8sR0FBRyxXQUFXLENBQUM7UUFDdEIsVUFBSyxHQUFHLFdBQVcsQ0FBQztJQXBCK0MsQ0FBQztJQUU3RSxRQUFRO1FBRU4sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFDO1lBQ2xCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNqQjthQUFJO1lBQ0gsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2hCO0lBQ0gsQ0FBQztJQWFELHNCQUFzQjtJQUV0QixRQUFRO1FBRU4sT0FBTyxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQTtRQUM1QixJQUFJLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsR0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDaEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsRUFBQyxHQUFHLEVBQUUsR0FBRyxFQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsV0FBd0IsRUFBRSxFQUFFO1lBQzlFLElBQUksQ0FBQyxTQUFTLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQztZQUNsQyw4QkFBOEI7WUFDOUIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2pCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLE9BQU8sSUFBSSxDQUFDLFNBQVMsSUFBSSxRQUFRLEVBQUU7WUFDckMsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQTtTQUMzQztJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsUUFBZ0I7UUFFdkIsSUFBSSxPQUFPLFFBQVEsSUFBSSxRQUFRLEVBQUU7WUFDL0IsT0FBTztTQUNSO1FBSUQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQy9DLFFBQVEsRUFBRSxLQUFLO1lBQ2YsUUFBUSxFQUFFLE1BQU07WUFFaEIsSUFBSSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRSxFQUFFO1NBQzdHLENBQUMsQ0FBQztJQUVMLENBQUM7SUFFRCxPQUFPLENBQUMsQ0FBQztRQUNQLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3RCLENBQUM7OzRHQTlEVSxlQUFlO2dHQUFmLGVBQWUsbVBDWDVCLHFnQkFhQTsyRkRGYSxlQUFlO2tCQUwzQixTQUFTOytCQUNFLFlBQVk7NkhBbUJiLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNJLE1BQU07c0JBQWYsTUFBTTtnQkFDRSxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IHZpZXdlckRpYWxvZyB9IGZyb20gJy4vdmlld2VyRGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlTGliIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZGF0YWxpYi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWN0aW9uLCBBcGlSZXNwb25zZSB9IGZyb20gJy4uLy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NwYS12aWV3ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92aWV3ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3ZpZXdlci5jb21wb25lbnQuY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFZpZXdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlTGliLHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZykgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIGlmICh0aGlzLmZpbGVBY3Rpb24pe1xyXG4gICAgICB0aGlzLmxvYWREYXRhKCk7XHJcbiAgICB9ZWxzZXtcclxuICAgICAgdGhpcy5jb252ZXJ0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIEBJbnB1dCgpIGZpbGVBY3Rpb24gOiBBY3Rpb247XHJcbiAgQElucHV0KCkgcGF0aCA9IFwiXCI7XHJcbiAgQElucHV0KCkgZm9sZGVyTmFtZT1cIlwiO1xyXG4gIEBJbnB1dCgpIGZpbGVOYW1lczsvLyBuZXcgQXJyYXkoKVxyXG4gIEBJbnB1dCgpIHJlbW92YWJsZSA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSByZW1vdmUgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgZGlzcGxheSA9IFwiRG9jdW1lbnRzXCI7XHJcbiAgQElucHV0KCkgdGl0bGUgPSBcIkRvY3VtZW50c1wiO1xyXG5cclxuICAvLyBmaWxlTGlzdDogc3RyaW5nW107XHJcblxyXG4gIGxvYWREYXRhKCkge1xyXG5cclxuICAgIGNvbnNvbGUubG9nKFwiQ2FsbGluZyBmaWxlc1wiKVxyXG4gICAgbGV0IHVybCA9IHRoaXMuZmlsZUFjdGlvbi51cmwucmVwbGFjZShcIi94XCIsICcvJyt0aGlzLmZvbGRlck5hbWUpXHJcbiAgICB0aGlzLmRhdGFTZXJ2aWNlLkNhbGxBcGkoe3VybDogdXJsfSwgXCJcIikuc3Vic2NyaWJlKChhcGlSZXNwb25zZTogQXBpUmVzcG9uc2UpID0+IHtcclxuICAgICAgdGhpcy5maWxlTmFtZXMgPSBhcGlSZXNwb25zZS5kYXRhO1xyXG4gICAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmZpbGVOYW1lcylcclxuICAgICAgdGhpcy5jb252ZXJ0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGNvbnZlcnQoKXtcclxuICAgIGlmICh0eXBlb2YgdGhpcy5maWxlTmFtZXMgPT0gJ3N0cmluZycpIHtcclxuICAgICAgdGhpcy5maWxlTmFtZXMgPSB0aGlzLmZpbGVOYW1lcy5zcGxpdChcInxcIilcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHZpZXdEb2NzKGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuXHJcbiAgICBpZiAodHlwZW9mIGZpbGVOYW1lICE9ICdzdHJpbmcnKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4odmlld2VyRGlhbG9nLCB7XHJcbiAgICAgIG1pbldpZHRoOiAnOTUlJyxcclxuICAgICAgbWF4V2lkdGg6ICc4MHZ3JyxcclxuXHJcbiAgICAgIGRhdGE6IHsgZmlsZU5hbWVzOiB0aGlzLmZpbGVOYW1lcywgZmlsZU5hbWU6IGZpbGVOYW1lLCBwYXRoOiBgJHt0aGlzLnBhdGggPz8gJyd9LyR7dGhpcy5mb2xkZXJOYW1lID8/ICcnfWAgfVxyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuXHJcbiAgcmVtb3ZlZChpKXtcclxuICAgIHRoaXMucmVtb3ZlLmVtaXQoaSk7XHJcbiAgfVxyXG5cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwidGluLWlucHV0LXJvdyBtdC0zXCIgKm5nSWY9XCJ0aXRsZSAhPSAnJ1wiPlxyXG4gIDxtYXQtbGFiZWwgc3R5bGU9XCJmb250LXNpemU6IDIwcHg7IGZvbnQtd2VpZ2h0OiAzMDBcIiA+ICB7e3RpdGxlfX08L21hdC1sYWJlbCA+XHJcbjwvZGl2PlxyXG5cclxuPHNwYS1jaGlwcyBbY2hpcHNdPVwiZmlsZU5hbWVzXCIgW3RpdGxlXT1cInRpdGxlXCIgIFtyZW1vdmFibGVdPVwicmVtb3ZhYmxlXCIgaWNvbj1cImRlc2NyaXB0aW9uXCIgKGNsaWNrKT1cInZpZXdEb2NzKCRldmVudClcIiAocmVtb3ZlKT1cInJlbW92ZWQoJGV2ZW50KVwiPjwvc3BhLWNoaXBzPlxyXG5cclxuXHJcblxyXG48ZGl2ICpuZ0lmPVwiIWZpbGVOYW1lc1wiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgcm93IGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwibWF4LWhlaWdodDoyMDBweFwiPlxyXG5cclxuICBObyB7e3RpdGxlLnRvTG93ZXJDYXNlKCl9fVxyXG5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -78,7 +78,7 @@ export class WelcomeComponent {
78
78
  }
79
79
  }
80
80
  WelcomeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: WelcomeComponent, deps: [{ token: i1.DataServiceLib }, { token: i2.AuthService }], target: i0.ɵɵFactoryTarget.Component });
81
- WelcomeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: WelcomeComponent, selector: "spa-welcome", ngImport: i0, template: "<label class=\"title\">Welcome, {{username}}</label>\n\n\n\n<!-- terms -->\n<div class=\"mt-3\" *ngIf=\"step=='terms'\">\n\n <label class=\"subtitle text-muted mb-2\" >We care about our users and are dedicated to protecting your data and privacy -\n thats why we want to be clear about what data we collect and how we use it to improve your experience.</label>\n\n <br>\n <spa-check display=\"I agree to the Terms and Privacy Policy\" [(value)]=\"agree\"></spa-check>\n</div>\n\n<!-- owner -->\n<div class=\"mt-3\" *ngIf=\"step=='name' && own\">\n\n <label class=\"subtitle text-muted\" style=\" margin-bottom: 20px;\">The follow steps will guide you to customise your application.</label>\n\n <div style=\"max-width: 400px;\">\n <spa-text display=\"Organisation Name\" [(value)]=\"myTenant.name\" ></spa-text>\n </div>\n\n <label class=\"text-muted\" style=\" font-size: 12px;\">You can change the Organisation's name to your team or company name.</label><br>\n <label class=\"text-muted\" style=\" font-size: 12px;margin-top: 10px;\">The name can be changed later.</label>\n\n</div>\n\n<!-- guest -->\n<div *ngIf=\"step=='hi' && !own\">\n <label class=\"subtitle text-muted\">You are now signed in to {{myTenant.name}}.</label>\n</div>\n\n\n<!-- invitations -->\n<div class=\"mt-3\" *ngIf=\"step=='invitations' && own\">\n\n <label class=\"subtitle text-muted\">You have been requested to join the following organisations. If you accept, you have the option to switch to that org now or stay in you org.</label><br>\n <label class=\"text-muted\" style=\" font-size: 12px;margin-top: 10px;\">You will be able to switch later.</label>\n <spa-invitations-table></spa-invitations-table>\n\n</div>\n\n\n<!-- Actions -->\n<div class=\"mt-3\">\n <button mat-stroked-button color=\"primary\" [disabled]=\"!agree\" (click)=\"next()\">Next <mat-icon>arrow_right_alt</mat-icon></button>\n</div>\n", styles: [".title{margin-top:1em;font-size:28px;font-weight:300}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.TextComponent, selector: "spa-text", inputs: ["readonly", "hint", "display", "placeholder", "value", "format", "type", "rows", "width", "options", "optionValue", "required", "min", "max", "regex"], outputs: ["valueChange", "leave", "enterPress"] }, { kind: "component", type: i7.CheckComponent, selector: "spa-check", inputs: ["readonly", "display", "value"], outputs: ["valueChange", "click", "check", "uncheck"] }, { kind: "component", type: i8.InvitationsTableComponent, selector: "spa-invitations-table" }] });
81
+ WelcomeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: WelcomeComponent, selector: "spa-welcome", ngImport: i0, template: "<label class=\"title\">Welcome, {{username}}</label>\n\n\n\n<!-- terms -->\n<div class=\"mt-3\" *ngIf=\"step=='terms'\">\n\n <label class=\"subtitle text-muted mb-2\" >We care about our users and are dedicated to protecting your data and privacy -\n thats why we want to be clear about what data we collect and how we use it to improve your experience.</label>\n\n <br>\n <spa-check display=\"I agree to the Terms and Privacy Policy\" [(value)]=\"agree\"></spa-check>\n</div>\n\n<!-- owner -->\n<div class=\"mt-3\" *ngIf=\"step=='name' && own\">\n\n <label class=\"subtitle text-muted\" style=\" margin-bottom: 20px;\">The follow steps will guide you to customise your application.</label>\n\n <div style=\"max-width: 400px;\">\n <spa-text display=\"Organisation Name\" [(value)]=\"myTenant.name\" ></spa-text>\n </div>\n\n <label class=\"text-muted\" style=\" font-size: 12px;\">You can change the Organisation's name to your team or company name.</label><br>\n <label class=\"text-muted\" style=\" font-size: 12px;margin-top: 10px;\">The name can be changed later.</label>\n\n</div>\n\n<!-- guest -->\n<div *ngIf=\"step=='hi' && !own\">\n <label class=\"subtitle text-muted\">You are now signed in to {{myTenant.name}}.</label>\n</div>\n\n\n<!-- invitations -->\n<div class=\"mt-3\" *ngIf=\"step=='invitations' && own\">\n\n <label class=\"subtitle text-muted\">You have been requested to join the following organisations. If you accept, you have the option to switch to that org now or stay in you org.</label><br>\n <label class=\"text-muted\" style=\" font-size: 12px;margin-top: 10px;\">You will be able to switch later.</label>\n <spa-invitations-table></spa-invitations-table>\n\n</div>\n\n\n<!-- Actions -->\n<div class=\"mt-3\">\n <button mat-stroked-button color=\"primary\" [disabled]=\"!agree\" (click)=\"next()\">Next <mat-icon>arrow_right_alt</mat-icon></button>\n</div>\n", styles: [".title{margin-top:1em;font-size:28px;font-weight:300}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.TextComponent, selector: "spa-text", inputs: ["readonly", "hint", "display", "placeholder", "value", "format", "type", "rows", "width", "options", "optionValue", "required", "min", "max", "regex", "suffix", "infoMessage"], outputs: ["valueChange", "leave", "enterPress", "infoClick"] }, { kind: "component", type: i7.CheckComponent, selector: "spa-check", inputs: ["readonly", "display", "value"], outputs: ["valueChange", "click", "check", "uncheck"] }, { kind: "component", type: i8.InvitationsTableComponent, selector: "spa-invitations-table" }] });
82
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: WelcomeComponent, decorators: [{
83
83
  type: Component,
84
84
  args: [{ selector: 'spa-welcome', template: "<label class=\"title\">Welcome, {{username}}</label>\n\n\n\n<!-- terms -->\n<div class=\"mt-3\" *ngIf=\"step=='terms'\">\n\n <label class=\"subtitle text-muted mb-2\" >We care about our users and are dedicated to protecting your data and privacy -\n thats why we want to be clear about what data we collect and how we use it to improve your experience.</label>\n\n <br>\n <spa-check display=\"I agree to the Terms and Privacy Policy\" [(value)]=\"agree\"></spa-check>\n</div>\n\n<!-- owner -->\n<div class=\"mt-3\" *ngIf=\"step=='name' && own\">\n\n <label class=\"subtitle text-muted\" style=\" margin-bottom: 20px;\">The follow steps will guide you to customise your application.</label>\n\n <div style=\"max-width: 400px;\">\n <spa-text display=\"Organisation Name\" [(value)]=\"myTenant.name\" ></spa-text>\n </div>\n\n <label class=\"text-muted\" style=\" font-size: 12px;\">You can change the Organisation's name to your team or company name.</label><br>\n <label class=\"text-muted\" style=\" font-size: 12px;margin-top: 10px;\">The name can be changed later.</label>\n\n</div>\n\n<!-- guest -->\n<div *ngIf=\"step=='hi' && !own\">\n <label class=\"subtitle text-muted\">You are now signed in to {{myTenant.name}}.</label>\n</div>\n\n\n<!-- invitations -->\n<div class=\"mt-3\" *ngIf=\"step=='invitations' && own\">\n\n <label class=\"subtitle text-muted\">You have been requested to join the following organisations. If you accept, you have the option to switch to that org now or stay in you org.</label><br>\n <label class=\"text-muted\" style=\" font-size: 12px;margin-top: 10px;\">You will be able to switch later.</label>\n <spa-invitations-table></spa-invitations-table>\n\n</div>\n\n\n<!-- Actions -->\n<div class=\"mt-3\">\n <button mat-stroked-button color=\"primary\" [disabled]=\"!agree\" (click)=\"next()\">Next <mat-icon>arrow_right_alt</mat-icon></button>\n</div>\n", styles: [".title{margin-top:1em;font-size:28px;font-weight:300}\n"] }]
@@ -1,4 +1,6 @@
1
1
  import { Injectable } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ import { DetailsDialogProcessor } from '../classes/TinCore';
2
4
  import * as i0 from "@angular/core";
3
5
  import * as i1 from "@angular/material/dialog";
4
6
  import * as i2 from "@angular/cdk/layout";
@@ -26,6 +28,47 @@ export class DialogService {
26
28
  dialogRef: dialogRef
27
29
  };
28
30
  }
31
+ openConfiguredDetailsDialog(buttonName, row, config, dialogComponent, column) {
32
+ const button = column ? { name: column.name, dialog: true, detailsConfig: column.detailsConfig } : config.buttons?.find(b => b.name === buttonName);
33
+ if (!button || !button.dialog) {
34
+ return new Observable(observer => {
35
+ observer.next({ action: 'doAction', name: buttonName, row: row });
36
+ observer.complete();
37
+ });
38
+ }
39
+ let dialogConfig = {
40
+ formConfig: config.formConfig,
41
+ buttons: config.buttons,
42
+ details: row,
43
+ heroField: config.heroField,
44
+ };
45
+ if (button.detailsConfig) {
46
+ dialogConfig = buttonName === 'create' ? button.detailsConfig : DetailsDialogProcessor.processDetailsConfig(button.detailsConfig, row);
47
+ }
48
+ else {
49
+ dialogConfig = DetailsDialogProcessor.processDetailsConfig(dialogConfig, row);
50
+ }
51
+ if (button.detailsConfig && button.detailsConfig.mode) {
52
+ dialogConfig.formConfig.mode = button.detailsConfig.mode;
53
+ }
54
+ else {
55
+ dialogConfig.formConfig.mode = buttonName === 'create' ? 'create' : (buttonName === 'edit' ? 'edit' : 'view');
56
+ }
57
+ if (buttonName === 'create') {
58
+ dialogConfig.heroField = config.heroField;
59
+ dialogConfig.heroValue = config.heroValue;
60
+ }
61
+ const dialogResult = this.openDetailsDialog(dialogConfig, dialogComponent);
62
+ return new Observable(observer => {
63
+ dialogResult.afterClosed.subscribe(result => {
64
+ observer.next(result);
65
+ observer.complete();
66
+ });
67
+ dialogResult.inputChange.subscribe(change => {
68
+ observer.next({ action: 'inputChange', change: change });
69
+ });
70
+ });
71
+ }
29
72
  }
30
73
  DialogService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DialogService, deps: [{ token: i1.MatDialog }, { token: i2.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Injectable });
31
74
  DialogService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: DialogService, providedIn: 'root' });
@@ -35,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
35
78
  providedIn: 'root'
36
79
  }]
37
80
  }], ctorParameters: function () { return [{ type: i1.MatDialog }, { type: i2.BreakpointObserver }]; } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90aW4tc3BhL3NyYy9saWIvc2VydmljZXMvZGlhbG9nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVUzQyxNQUFNLE9BQU8sYUFBYTtJQUd4QixZQUNVLE1BQWlCLEVBQ2pCLGtCQUFzQztRQUR0QyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQ2pCLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFKeEMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFNMUIsNkJBQTZCO1FBQzdCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBdUIsRUFBRSxFQUFFO1lBQzVGLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxpQkFBaUIsQ0FDZixNQUEyQixFQUMzQixlQUEwQztRQU0xQyxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFFbEQsTUFBTSxhQUFhLEdBQUc7WUFDcEIsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1lBQ2pFLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTTtZQUNsQyxJQUFJLEVBQUUsTUFBTTtTQUNiLENBQUM7UUFFRixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7UUFFbkUsT0FBTztZQUNMLFdBQVcsRUFBRSxTQUFTLENBQUMsV0FBVyxFQUFFO1lBQ3BDLFdBQVcsRUFBRyxTQUFTLENBQUMsaUJBQXlCLENBQUMsV0FBVztZQUM3RCxTQUFTLEVBQUUsU0FBUztTQUNyQixDQUFDO0lBQ0osQ0FBQzs7MEdBcENVLGFBQWE7OEdBQWIsYUFBYSxjQUZaLE1BQU07MkZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBEZXRhaWxzRGlhbG9nQ29uZmlnIH0gZnJvbSAnLi4vY2xhc3Nlcy9DbGFzc2VzJztcclxuLy8gaW1wb3J0IHsgRGV0YWlsc0RpYWxvZyB9IGZyb20gJy4uL2NvbXBvbmVudHMvdGFibGUvZGV0YWlsc0RpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCcmVha3BvaW50T2JzZXJ2ZXIsIEJyZWFrcG9pbnRTdGF0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBzbWFsbFNjcmVlbiA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXHJcbiAgICBwcml2YXRlIGJyZWFrcG9pbnRPYnNlcnZlcjogQnJlYWtwb2ludE9ic2VydmVyXHJcbiAgKSB7XHJcbiAgICAvLyBEZXRlY3Qgc2NyZWVuIHNpemUgY2hhbmdlc1xyXG4gICAgdGhpcy5icmVha3BvaW50T2JzZXJ2ZXIub2JzZXJ2ZShbXCIobWF4LXdpZHRoOiA2MDBweClcIl0pLnN1YnNjcmliZSgocmVzdWx0OiBCcmVha3BvaW50U3RhdGUpID0+IHtcclxuICAgICAgdGhpcy5zbWFsbFNjcmVlbiA9IHJlc3VsdC5tYXRjaGVzO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBvcGVuRGV0YWlsc0RpYWxvZzxUPihcclxuICAgIGNvbmZpZzogRGV0YWlsc0RpYWxvZ0NvbmZpZyxcclxuICAgIGRpYWxvZ0NvbXBvbmVudDogbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVFxyXG4gICk6IHtcclxuICAgIGFmdGVyQ2xvc2VkOiBPYnNlcnZhYmxlPGFueT4sXHJcbiAgICBpbnB1dENoYW5nZTogT2JzZXJ2YWJsZTxhbnk+LFxyXG4gICAgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8VD5cclxuICB9IHtcclxuICAgIGNvbnN0IGhhc1RhYmxlcyA9IGNvbmZpZy50YWJsZUNvbmZpZ3M/Lmxlbmd0aCA+IDA7XHJcblxyXG4gICAgY29uc3QgZGlhbG9nT3B0aW9ucyA9IHtcclxuICAgICAgd2lkdGg6IHRoaXMuc21hbGxTY3JlZW4gPyAnOTAwcHgnIDogKGhhc1RhYmxlcyA/ICc5MCUnIDogJzkwMHB4JyksXHJcbiAgICAgIGhlaWdodDogaGFzVGFibGVzID8gJzkwJScgOiAnYXV0bycsXHJcbiAgICAgIGRhdGE6IGNvbmZpZ1xyXG4gICAgfTtcclxuXHJcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKGRpYWxvZ0NvbXBvbmVudCwgZGlhbG9nT3B0aW9ucyk7XHJcblxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgYWZ0ZXJDbG9zZWQ6IGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLFxyXG4gICAgICBpbnB1dENoYW5nZTogKGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZSBhcyBhbnkpLmlucHV0Q2hhbmdlLFxyXG4gICAgICBkaWFsb2dSZWY6IGRpYWxvZ1JlZlxyXG4gICAgfTtcclxuICB9XHJcbn1cclxuIl19
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90aW4tc3BhL3NyYy9saWIvc2VydmljZXMvZGlhbG9nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBSWxDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7O0FBSzVELE1BQU0sT0FBTyxhQUFhO0lBR3hCLFlBQ1UsTUFBaUIsRUFDakIsa0JBQXNDO1FBRHRDLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDakIsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUp4QyxnQkFBVyxHQUFHLEtBQUssQ0FBQztRQU0xQiw2QkFBNkI7UUFDN0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUF1QixFQUFFLEVBQUU7WUFDNUYsSUFBSSxDQUFDLFdBQVcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1FBQ3BDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFLLE1BQTJCLEVBQUUsZUFBMEM7UUFLM0YsTUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBRWxELE1BQU0sYUFBYSxHQUFHO1lBQ3BCLEtBQUssRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztZQUNqRSxNQUFNLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxD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QyxDQUFDO2dCQUN0QixRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdEIsQ0FBQyxDQUFDLENBQUM7WUFFSCxZQUFZLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDMUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7WUFDM0QsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzBHQXZGVSxhQUFhOzhHQUFiLGFBQWEsY0FGWixNQUFNOzJGQUVQLGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29sdW1uLCBEZXRhaWxzRGlhbG9nQ29uZmlnLCBUYWJsZUNvbmZpZyB9IGZyb20gJy4uL2NsYXNzZXMvQ2xhc3Nlcyc7XHJcbi8vIGltcG9ydCB7IERldGFpbHNEaWFsb2cgfSBmcm9tICcuLi9jb21wb25lbnRzL3RhYmxlL2RldGFpbHNEaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyLCBCcmVha3BvaW50U3RhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvbGF5b3V0JztcclxuaW1wb3J0IHsgRGV0YWlsc0RpYWxvZ1Byb2Nlc3NvciB9IGZyb20gJy4uL2NsYXNzZXMvVGluQ29yZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEaWFsb2dTZXJ2aWNlIHtcclxuICBwcml2YXRlIHNtYWxsU2NyZWVuID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcclxuICAgIHByaXZhdGUgYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXJcclxuICApIHtcclxuICAgIC8vIERldGVjdCBzY3JlZW4gc2l6ZSBjaGFuZ2VzXHJcbiAgICB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlci5vYnNlcnZlKFtcIihtYXgtd2lkdGg6IDYwMHB4KVwiXSkuc3Vic2NyaWJlKChyZXN1bHQ6IEJyZWFrcG9pbnRTdGF0ZSkgPT4ge1xyXG4gICAgICB0aGlzLnNtYWxsU2NyZWVuID0gcmVzdWx0Lm1hdGNoZXM7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9wZW5EZXRhaWxzRGlhbG9nPFQ+KCBjb25maWc6IERldGFpbHNEaWFsb2dDb25maWcsIGRpYWxvZ0NvbXBvbmVudDogbmV3ICguLi5hcmdzOiBhbnlbXSkgPT4gVCAgKToge1xyXG4gICAgYWZ0ZXJDbG9zZWQ6IE9ic2VydmFibGU8YW55PixcclxuICAgIGlucHV0Q2hhbmdlOiBPYnNlcnZhYmxlPGFueT4sXHJcbiAgICBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxUPlxyXG4gIH0ge1xyXG4gICAgY29uc3QgaGFzVGFibGVzID0gY29uZmlnLnRhYmxlQ29uZmlncz8ubGVuZ3RoID4gMDtcclxuXHJcbiAgICBjb25zdCBkaWFsb2dPcHRpb25zID0ge1xyXG4gICAgICB3aWR0aDogdGhpcy5zbWFsbFNjcmVlbiA/ICc5MDBweCcgOiAoaGFzVGFibGVzID8gJzkwJScgOiAnOTAwcHgnKSxcclxuICAgICAgaGVpZ2h0OiBoYXNUYWJsZXMgPyAnOTAlJyA6ICdhdXRvJyxcclxuICAgICAgZGF0YTogY29uZmlnXHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oZGlhbG9nQ29tcG9uZW50LCBkaWFsb2dPcHRpb25zKTtcclxuXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBhZnRlckNsb3NlZDogZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCksXHJcbiAgICAgIGlucHV0Q2hhbmdlOiAoZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlIGFzIGFueSkuaW5wdXRDaGFuZ2UsXHJcbiAgICAgIGRpYWxvZ1JlZjogZGlhbG9nUmVmXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgb3BlbkNvbmZpZ3VyZWREZXRhaWxzRGlhbG9nPFQ+KCBidXR0b25OYW1lOiBzdHJpbmcsIHJvdzogYW55LCBjb25maWc6IFRhYmxlQ29uZmlnIHwgRGV0YWlsc0RpYWxvZ0NvbmZpZywgZGlhbG9nQ29tcG9uZW50OiBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBULCBjb2x1bW4/OiBDb2x1bW4gICk6IE9ic2VydmFibGU8YW55PiB7XHJcblxyXG4gICAgY29uc3QgYnV0dG9uID0gY29sdW1uID8geyBuYW1lOiBjb2x1bW4ubmFtZSwgZGlhbG9nOiB0cnVlLCBkZXRhaWxzQ29uZmlnOiBjb2x1bW4uZGV0YWlsc0NvbmZpZyB9IDogY29uZmlnLmJ1dHRvbnM/LmZpbmQoYiA9PiBiLm5hbWUgPT09IGJ1dHRvbk5hbWUpO1xyXG5cclxuICAgIGlmICghYnV0dG9uIHx8ICFidXR0b24uZGlhbG9nKSB7XHJcbiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZXIubmV4dCh7IGFjdGlvbjogJ2RvQWN0aW9uJywgbmFtZTogYnV0dG9uTmFtZSwgcm93OiByb3cgfSk7XHJcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIGxldCBkaWFsb2dDb25maWc6IERldGFpbHNEaWFsb2dDb25maWcgPSB7XHJcbiAgICAgIGZvcm1Db25maWc6IGNvbmZpZy5mb3JtQ29uZmlnLFxyXG4gICAgICBidXR0b25zOiBjb25maWcuYnV0dG9ucyxcclxuICAgICAgZGV0YWlsczogcm93LFxyXG4gICAgICBoZXJvRmllbGQgOiBjb25maWcuaGVyb0ZpZWxkLFxyXG5cclxuICAgIH07XHJcblxyXG5cclxuICAgIGlmIChidXR0b24uZGV0YWlsc0NvbmZpZykge1xyXG4gICAgICBkaWFsb2dDb25maWcgPSBidXR0b25OYW1lID09PSAnY3JlYXRlJyA/IGJ1dHRvbi5kZXRhaWxzQ29uZmlnIDogRGV0YWlsc0RpYWxvZ1Byb2Nlc3Nvci5wcm9jZXNzRGV0YWlsc0NvbmZpZyhidXR0b24uZGV0YWlsc0NvbmZpZywgcm93KTtcclxuICAgIH1lbHNle1xyXG4gICAgICBkaWFsb2dDb25maWcgPSBEZXRhaWxzRGlhbG9nUHJvY2Vzc29yLnByb2Nlc3NEZXRhaWxzQ29uZmlnKGRpYWxvZ0NvbmZpZywgcm93KTtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIGlmIChidXR0b24uZGV0YWlsc0NvbmZpZyAmJiBidXR0b24uZGV0YWlsc0NvbmZpZy5tb2RlKSB7XHJcbiAgICAgIGRpYWxvZ0NvbmZpZy5mb3JtQ29uZmlnLm1vZGUgPSBidXR0b24uZGV0YWlsc0NvbmZpZy5tb2RlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZGlhbG9nQ29uZmlnLmZvcm1Db25maWcubW9kZSA9IGJ1dHRvbk5hbWUgPT09ICdjcmVhdGUnID8gJ2NyZWF0ZScgOiAoYnV0dG9uTmFtZSA9PT0gJ2VkaXQnID8gJ2VkaXQnIDogJ3ZpZXcnKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoYnV0dG9uTmFtZSA9PT0gJ2NyZWF0ZScpIHtcclxuICAgICAgZGlhbG9nQ29uZmlnLmhlcm9GaWVsZCA9IGNvbmZpZy5oZXJvRmllbGQ7XHJcbiAgICAgIGRpYWxvZ0NvbmZpZy5oZXJvVmFsdWUgPSBjb25maWcuaGVyb1ZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGRpYWxvZ1Jlc3VsdCA9IHRoaXMub3BlbkRldGFpbHNEaWFsb2coZGlhbG9nQ29uZmlnLCBkaWFsb2dDb21wb25lbnQpO1xyXG5cclxuICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZShvYnNlcnZlciA9PiB7XHJcbiAgICAgIGRpYWxvZ1Jlc3VsdC5hZnRlckNsb3NlZC5zdWJzY3JpYmUocmVzdWx0ID0+IHtcclxuICAgICAgICBvYnNlcnZlci5uZXh0KHJlc3VsdCk7XHJcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBkaWFsb2dSZXN1bHQuaW5wdXRDaGFuZ2Uuc3Vic2NyaWJlKGNoYW5nZSA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZXIubmV4dCh7IGFjdGlvbjogJ2lucHV0Q2hhbmdlJywgY2hhbmdlOiBjaGFuZ2UgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==