imm-element-ui 0.2.8 → 0.2.9

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.
@@ -8,7 +8,7 @@ import { I18nService } from '../../service/i18n.service';
8
8
  import { fieldUtils } from '../form-field/field-utils';
9
9
  import { generateUniqueId } from '../../share/utils';
10
10
  import { Router } from '@angular/router';
11
- import { shareReplay } from 'rxjs';
11
+ import { isObservable, shareReplay } from 'rxjs';
12
12
  import * as i0 from "@angular/core";
13
13
  import * as i1 from "@angular/common";
14
14
  export class FormComponent {
@@ -84,7 +84,9 @@ export class FormComponent {
84
84
  field.labelMinWidth = this.labelMinWidth;
85
85
  field.interactiveLabel = this.options().interactiveLabel ?? true;
86
86
  field.form = this;
87
- field.hook && this.uniqueHook(field, field.hook);
87
+ if (isObservable(field.hook)) {
88
+ this.uniqueHook(field, field.hook);
89
+ }
88
90
  this.handleFieldControl(field);
89
91
  });
90
92
  }
@@ -218,4 +220,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
218
220
  type: HostListener,
219
221
  args: ['window:resize', ['$event']]
220
222
  }] } });
221
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL2Zvcm0vZm9ybS9mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvZm9ybS9mb3JtL2Zvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixZQUFZLEVBSVosTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsTUFBTSxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBc0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFhLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQWtCL0MsTUFBTSxPQUFPLGFBQWE7SUF5QnpCLFFBQVE7UUFDUCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDeEIs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XHJcblx0Y29tcHV0ZWQsXHJcblx0Vmlld0NoaWxkcmVuLFxyXG5cdFF1ZXJ5TGlzdCxcclxuXHRFbGVtZW50UmVmLFxyXG5cdENoYW5nZURldGVjdG9yUmVmLFxyXG5cdGluamVjdCxcclxuXHRIb3N0TGlzdGVuZXIsXHJcblx0dW50cmFja2VkLFxyXG5cdHNpZ25hbCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBWYWxpZGF0b3JzLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3JtU3VibWl0dGVkRXZlbnQgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZpZWxkQ29udHJvbCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZmllbGQtY29udHJvbCc7XHJcbmltcG9ydCB7IEZvcm1GaWVsZCwgRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS1maWVsZC9mb3JtLWZpZWxkJztcclxuaW1wb3J0IHsgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvaTE4bi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgZmllbGRVdGlscyB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZmllbGQtdXRpbHMnO1xyXG5pbXBvcnQgeyBVcHNlcnQgfSBmcm9tICcuLi8uLi9hbS9hbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBnZW5lcmF0ZVVuaXF1ZUlkIH0gZnJvbSAnLi4vLi4vc2hhcmUvdXRpbHMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xyXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1PcHRpb25zIHtcclxuXHRmaWVsZHM/OiBGb3JtRmllbGRbXTtcclxuXHRmb3JtPzogRm9ybUdyb3VwO1xyXG5cdG1haW5GaWVsZD86IHN0cmluZztcclxuXHRsYWJlbFdpZHRoPzogc3RyaW5nO1xyXG5cdGludGVyYWN0aXZlTGFiZWw/OiBib29sZWFuO1xyXG5cdGV4dHJhPzogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2N1c3RvbS1mb3JtJyxcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1GaWVsZENvbXBvbmVudF0sXHJcblx0cHJvdmlkZXJzOiBbRGF0ZVBpcGVdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybDogJy4vZm9ybS5jb21wb25lbnQuc2NzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtQ29tcG9uZW50IHtcclxuXHRAVmlld0NoaWxkcmVuKEZvcm1GaWVsZENvbXBvbmVudCkgZmllbGRDb21wb25lbnRzPzogUXVlcnlMaXN0PEZvcm1GaWVsZENvbXBvbmVudD47XHJcblx0cm91dGVyOiBSb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuXHRpc05ldzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdG9wdGlvbnMgPSBpbnB1dDxGb3JtT3B0aW9ucz4oe30pO1xyXG5cdGZpZWxkcyA9IGNvbXB1dGVkKCgpID0+IHtcclxuXHRcdHVudHJhY2tlZCgoKSA9PiB7XHJcblx0XHRcdHRoaXMuaW5pdEZvcm0oKTtcclxuXHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5yZUNhbGNMYWJlbFNpemUoKTtcclxuXHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHRcdHJldHVybiB0aGlzLm9wdGlvbnMoKS5maWVsZHM7XHJcblx0fSk7XHJcblxyXG5cdGkxOG5TZXJ2aWNlID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcclxuXHRtb2RlbCA9IGlucHV0PGFueT4oKTtcclxuXHR1cHNlcnQgPSBpbnB1dDxVcHNlcnQ+KCk7XHJcblx0cmF3TW9kZWw6IGFueSA9IHt9O1xyXG5cdGNoYW5nZWRNb2RlbDogYW55ID0ge307XHJcblx0ZmllbGRMaXN0ITogRm9ybUZpZWxkW107XHJcblx0aG9va09ic2VydmVyczogRnVuY3Rpb25bXSA9IFtdO1xyXG5cdGxhYmVsTWluV2lkdGggPSBzaWduYWw8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuXHRASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuXHRvblJlc2l6ZSgpIHtcclxuXHRcdHRoaXMucmVDYWxjTGFiZWxTaXplKCk7XHJcblx0fVxyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuXHRcdHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlLFxyXG5cdCkge1xyXG5cdFx0dGhpcy5yb3V0ZXIudXJsLnNwbGl0KCcvJykucG9wKCkgPT0gJ25ldycgJiYgKHRoaXMuaXNOZXcgPSB0cnVlKTtcclxuXHRcdGVmZmVjdChcclxuXHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdGlmICghdGhpcy5tb2RlbCgpKSB7XHJcblx0XHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC8vIOm7mOiupOWAvOS7heWcqOihqOWNleaWsOW7uuaXtueUn+aViFxyXG5cdFx0XHRcdGlmICh0aGlzLmlzTmV3KSB7XHJcblx0XHRcdFx0XHR0aGlzLmZpZWxkTGlzdC5mb3JFYWNoKChmaWVsZCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAoIWZpZWxkLmRlZmF1bHQpIHJldHVybjtcclxuXHRcdFx0XHRcdFx0aWYgKHRoaXMubW9kZWwoKVtmaWVsZC5rZXkhXSAhPT0gdW5kZWZpbmVkKSByZXR1cm47XHJcblx0XHRcdFx0XHRcdHVudHJhY2tlZCgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5oYW5kbGVWYWx1ZUNoYW5nZShmaWVsZC5kZWZhdWx0LCBmaWVsZCk7XHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMucmF3TW9kZWwgPSB7IC4uLnRoaXMubW9kZWwoKSB9O1xyXG5cdFx0XHRcdHRoaXMuY2hhbmdlZE1vZGVsID0ge307XHJcblx0XHRcdFx0dW50cmFja2VkKCgpID0+IHRoaXMudHJpZ2dlckhvb2soKSk7XHJcblx0XHRcdH0sXHJcblx0XHRcdHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSxcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5yZUNhbGNMYWJlbFNpemUoKTtcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5pMThuU2VydmljZS5jaGFuZ2Uuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0dGhpcy5yZUNhbGNMYWJlbFNpemUoKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHR0aGlzLmhvb2tPYnNlcnZlcnMuZm9yRWFjaCgodW5zdWJzY3JpYmUpID0+IHVuc3Vic2NyaWJlKCkpO1xyXG5cdH1cclxuXHJcblx0aW5pdEZvcm0oKSB7XHJcblx0XHRpZiAoIXRoaXMub3B0aW9ucygpLmV4dHJhKSB7XHJcblx0XHRcdHRoaXMub3B0aW9ucygpLmV4dHJhID0ge307XHJcblx0XHR9XHJcblx0XHRpZiAoIXRoaXMub3B0aW9ucygpLmZvcm0pIHtcclxuXHRcdFx0dGhpcy5vcHRpb25zKCkuZm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5maWVsZExpc3QgPSBbXTtcclxuXHRcdHRoaXMucGFyc2VGaWVsZHModGhpcy5vcHRpb25zKCkuZmllbGRzIHx8IFtdKTtcclxuXHRcdHRoaXMuZmllbGRMaXN0LmZvckVhY2goKGZpZWxkKSA9PiB7XHJcblx0XHRcdGZpZWxkLnV1aWQgPSBnZW5lcmF0ZVVuaXF1ZUlkKCk7XHJcblx0XHRcdGZpZWxkLmxhYmVsTWluV2lkdGggPSB0aGlzLmxhYmVsTWluV2lkdGg7XHJcblx0XHRcdGZpZWxkLmludGVyYWN0aXZlTGFiZWwgPSB0aGlzLm9wdGlvbnMoKS5pbnRlcmFjdGl2ZUxhYmVsID8/IHRydWU7XHJcblx0XHRcdGZpZWxkLmZvcm0gPSB0aGlzO1xyXG5cdFx0XHRmaWVsZC5ob29rICYmIHRoaXMudW5pcXVlSG9vayhmaWVsZCwgZmllbGQuaG9vayk7XHJcblx0XHRcdHRoaXMuaGFuZGxlRmllbGRDb250cm9sKGZpZWxkKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Z2V0RmllbGQoa2V5OiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmZpZWxkTGlzdC5maW5kKChmaWVsZCkgPT4gZmllbGQua2V5ID09PSBrZXkpO1xyXG5cdH1cclxuXHJcblx0cGFyc2VGaWVsZHMoZmllbGRzOiBGb3JtRmllbGRbXSkge1xyXG5cdFx0ZmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiB7XHJcblx0XHRcdGlmIChmaWVsZC5ncm91cCkge1xyXG5cdFx0XHRcdHRoaXMucGFyc2VGaWVsZHMoZmllbGQuZ3JvdXApO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMuZmllbGRMaXN0LnB1c2goZmllbGQpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGhhbmRsZUZpZWxkQ29udHJvbChmaWVsZDogRm9ybUZpZWxkKSB7XHJcblx0XHRjb25zdCBmaWVsZENvbnRyb2wgPSBmaWVsZFV0aWxzLnByb3BzKGZpZWxkKS5yZXF1aXJlZFxyXG5cdFx0XHQ/IG5ldyBGaWVsZENvbnRyb2wobnVsbCwgZmllbGQudmFsaWRhdG9ycyA/IGZpZWxkLnZhbGlkYXRvcnMgOiBWYWxpZGF0b3JzLnJlcXVpcmVkKVxyXG5cdFx0XHQ6IG5ldyBGaWVsZENvbnRyb2wobnVsbCk7XHJcblx0XHR0aGlzLm9wdGlvbnMoKS5mb3JtPy5hZGRDb250cm9sKGZpZWxkLmtleSB8fCAnJywgZmllbGRDb250cm9sKTtcclxuXHRcdGZpZWxkLmZpZWxkQ29udHJvbCA9IGZpZWxkQ29udHJvbDtcclxuXHRcdGZpZWxkLmZpZWxkQ29udHJvbD8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuXHRcdFx0Y29uc3QgdGFyZ2V0VmFsdWUgPSBmaWVsZFV0aWxzLmZyb21GaWVsZFZhbHVlKGZpZWxkLCB2YWx1ZSwgdGhpcy5kYXRlUGlwZSk7XHJcblx0XHRcdGlmIChmaWVsZFV0aWxzLmlzRmFrZWRDaGFuZ2UodGFyZ2V0VmFsdWUsIHRoaXMubW9kZWwoKVtmaWVsZC5rZXkhXSwgZmllbGQpKSB7XHJcblx0XHRcdFx0cmV0dXJuO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuaGFuZGxlVmFsdWVDaGFuZ2UodGFyZ2V0VmFsdWUsIGZpZWxkKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0aGFuZGxlVmFsdWVDaGFuZ2UodmFsdWU6IGFueSwgZmllbGQ6IEZvcm1GaWVsZCkge1xyXG5cdFx0dGhpcy5tb2RlbCgpW2ZpZWxkLmtleSFdID0gdmFsdWU7XHJcblx0XHR0aGlzLmNoYW5nZWRNb2RlbFtmaWVsZC5rZXkhXSA9IHsgbmFtZTogZmllbGRVdGlscy5sYWJlbChmaWVsZCwgdGhpcy5pMThuU2VydmljZSksIHZhbHVlOiB2YWx1ZSwgdHlwZTogZmllbGQudHlwZSB9O1xyXG5cdFx0dGhpcy5oYW5kbGVVcHNlcnQoZmllbGQua2V5ISwgdmFsdWUpO1xyXG5cdFx0Y29uc29sZS5sb2coJy0tLS0taGFuZGxlVmFsdWVDaGFuZ2UnLCB0aGlzLnVwc2VydCgpKTtcclxuXHRcdHRoaXMuaGFuZGxlSGlkZUV4cHJlc3Npb24oKTtcclxuXHR9XHJcblxyXG5cdGhhbmRsZVVwc2VydChrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuaXNOZXcpIHtcclxuXHRcdFx0dGhpcy51cHNlcnQoKSEuYWRkRGF0YSFba2V5XSA9IHZhbHVlO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy51cHNlcnQoKSEudXBkRGF0YSFba2V5XSA9IHZhbHVlO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy51cHNlcnQoKSEubG9nIS5jb250ZW50ID0gZmllbGRVdGlscy50cmFuc0xvZyhcclxuXHRcdFx0dGhpcy5yYXdNb2RlbCxcclxuXHRcdFx0dGhpcy5jaGFuZ2VkTW9kZWwsXHJcblx0XHRcdHRoaXMubW9kZWwoKVt0aGlzLm9wdGlvbnMoKS5tYWluRmllbGQhXSxcclxuXHRcdFx0dGhpcy5pc05ldyxcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRoYW5kbGVIaWRlRXhwcmVzc2lvbigpIHtcclxuXHRcdHRoaXMuZmllbGRMaXN0LmZvckVhY2goKGZpZWxkKSA9PiB7XHJcblx0XHRcdGlmIChmaWVsZC5oaWRlRXhwcmVzc2lvbikge1xyXG5cdFx0XHRcdGZpZWxkLmhpZGUgPSBmaWVsZC5oaWRlRXhwcmVzc2lvbih0aGlzLm1vZGVsKCksIGZpZWxkKTtcclxuXHRcdFx0XHRpZiAoZmllbGQuaGlkZSkge1xyXG5cdFx0XHRcdFx0dGhpcy5vcHRpb25zKCkuZm9ybT8uY29udHJvbHNbZmllbGQua2V5IV0uZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMub3B0aW9ucygpLmZvcm0/LmNvbnRyb2xzW2ZpZWxkLmtleSFdLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHZhbGlkYXRlKCkge1xyXG5cdFx0Zm9yIChsZXQga2V5IGluIHRoaXMub3B0aW9ucygpLmZvcm0/LmNvbnRyb2xzKSB7XHJcblx0XHRcdCF0aGlzLm9wdGlvbnMoKS5mb3JtPy5jb250cm9sc1trZXldWydkaXNhYmxlZCddICYmIHRoaXMub3B0aW9ucygpLmZvcm0/LmNvbnRyb2xzW2tleV0ubWFya0FzRGlydHkoKTtcclxuXHRcdH1cclxuXHRcdHJldHVybiB0aGlzLm9wdGlvbnMoKS5mb3JtPy52YWxpZDtcclxuXHR9XHJcblxyXG5cdHVuaXF1ZUhvb2soZmllbGQ6IEZvcm1GaWVsZCwgaG9vazogT2JzZXJ2YWJsZTwoZmllbGQ/OiBGb3JtRmllbGQpID0+IHZvaWQ+KSB7XHJcblx0XHRmaWVsZC5ob29rID0gaG9vay5waXBlKHNoYXJlUmVwbGF5KDEpKTtcclxuXHR9XHJcblxyXG5cdHRyaWdnZXJIb29rKCkge1xyXG5cdFx0dGhpcy5maWVsZExpc3QuZm9yRWFjaCgoZmllbGQpID0+IHtcclxuXHRcdFx0ZmllbGRVdGlscy50cmlnZ2VySG9va0FuZFNldFZhbHVlKFxyXG5cdFx0XHRcdGZpZWxkLFxyXG5cdFx0XHRcdHRoaXMubW9kZWwoKT8uW2ZpZWxkLmtleSFdLFxyXG5cdFx0XHRcdFsndXBsb2FkJywgJ2ltYWdlJywgJ2NvZGVtaXJyb3InLCAncmFkaW8nLCAnc2VsZWN0J10uaW5jbHVkZXMoZmllbGQudHlwZSEpLFxyXG5cdFx0XHRcdHRoaXMuaG9va09ic2VydmVycyxcclxuXHRcdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmhhbmRsZUhpZGVFeHByZXNzaW9uKCk7XHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHR0aGlzLmRhdGVQaXBlLFxyXG5cdFx0XHQpO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRyZUNhbGNMYWJlbFNpemUoKSB7XHJcblx0XHRpZiAodGhpcy5vcHRpb25zKCkubGFiZWxXaWR0aCkge1xyXG5cdFx0XHR0aGlzLmxhYmVsTWluV2lkdGguc2V0KHRoaXMub3B0aW9ucygpLmxhYmVsV2lkdGgpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHR0aGlzLmxhYmVsTWluV2lkdGguc2V0KHVuZGVmaW5lZCk7XHJcblx0XHR0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHR0aGlzLmhhbmRsZUZpZWxkTGFiZWxzKCk7XHJcblx0XHR0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0fVxyXG5cclxuXHRoYW5kbGVGaWVsZExhYmVscygpIHtcclxuXHRcdGNvbnN0IGZpZWxkTGFiZWxzOiBFbGVtZW50UmVmW10gPSBbXTtcclxuXHRcdHRoaXMuZ2V0RmllbGRMYWJlbHModGhpcy5maWVsZENvbXBvbmVudHMsIGZpZWxkTGFiZWxzKTtcclxuXHRcdGNvbnN0IG9mZnNldFdpZHRocyA9IGZpZWxkTGFiZWxzLm1hcCgoZmllbGRMYWJlbCkgPT4gZmllbGRMYWJlbC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoKTtcclxuXHRcdHRoaXMubGFiZWxNaW5XaWR0aC5zZXQoTWF0aC5tYXgoLi4ub2Zmc2V0V2lkdGhzKSArIDE4ICsgJ3B4Jyk7XHJcblx0fVxyXG5cclxuXHRnZXRGaWVsZExhYmVscyhmaWVsZENvbXBvbmVudHM6IFF1ZXJ5TGlzdDxGb3JtRmllbGRDb21wb25lbnQ+IHwgdW5kZWZpbmVkLCBmaWVsZExhYmVsczogRWxlbWVudFJlZltdKSB7XHJcblx0XHRpZiAoIWZpZWxkQ29tcG9uZW50cykge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHRmaWVsZENvbXBvbmVudHM/LmZvckVhY2goKGNvbXBvbmVudCkgPT4ge1xyXG5cdFx0XHRjb25zdCBmaWVsZExhYmVsID0gY29tcG9uZW50LmdldEZpZWxkTGFiZWwoKTtcclxuXHRcdFx0aWYgKGZpZWxkTGFiZWwpIHtcclxuXHRcdFx0XHRmaWVsZExhYmVscy5wdXNoKGZpZWxkTGFiZWwpO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuZ2V0RmllbGRMYWJlbHMoY29tcG9uZW50LmdldEZpZWxkQ29tcG9uZW50cygpLCBmaWVsZExhYmVscyk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHRyaWdnZXJNb2RlbEVmZmVjdChtb2RlbDogYW55KSB7XHJcblx0XHRPYmplY3Qua2V5cyhtb2RlbCkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcblx0XHRcdGNvbnN0IGZpZWxkID0gdGhpcy5nZXRGaWVsZChrZXkpITtcclxuXHRcdFx0aWYgKCFmaWVsZCkgcmV0dXJuO1xyXG5cdFx0XHRmaWVsZFV0aWxzLnRyaWdnZXJIb29rQW5kU2V0VmFsdWUoXHJcblx0XHRcdFx0ZmllbGQsXHJcblx0XHRcdFx0bW9kZWxba2V5XSxcclxuXHRcdFx0XHRbJ3VwbG9hZCcsICdpbWFnZScsICdjb2RlbWlycm9yJywgJ3JhZGlvJywgJ3NlbGVjdCddLmluY2x1ZGVzKGZpZWxkLnR5cGUhKSxcclxuXHRcdFx0XHR0aGlzLmhvb2tPYnNlcnZlcnMsXHJcblx0XHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5oYW5kbGVIaWRlRXhwcmVzc2lvbigpO1xyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0dGhpcy5kYXRlUGlwZSxcclxuXHRcdFx0KTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0ZmluYWxpemUoKSB7XHJcblx0XHR0aGlzLmZpZWxkTGlzdC5mb3JFYWNoKChmaWVsZCkgPT4ge1xyXG5cdFx0XHRpZiAoWydpbWFnZScsICd1cGxvYWQnXS5pbmNsdWRlcyhmaWVsZC50eXBlISkpIHtcclxuXHRcdFx0XHRmaWVsZC5maWVsZENvbnRyb2w/LmFmdGVyU3VibWl0KCk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxufVxyXG4iLCJAZm9yIChmaWVsZCBvZiBmaWVsZHMoKTsgdHJhY2sgZmllbGQpIHtcclxuXHQ8Zm9ybS1maWVsZFxyXG5cdFx0Y2xhc3M9XCJ3LWZ1bGxcIlxyXG5cdFx0W2ZpZWxkXT1cImZpZWxkXCI+XHJcblx0PC9mb3JtLWZpZWxkPlxyXG59XHJcbiJdfQ==
223
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL2Zvcm0vZm9ybS9mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvZm9ybS9mb3JtL2Zvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLFNBQVMsRUFDVCxNQUFNLEVBQ04sS0FBSyxFQUNMLFFBQVEsRUFDUixZQUFZLEVBSVosTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsTUFBTSxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBc0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFhLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQWMsV0FBVyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFrQjdELE1BQU0sT0FBTyxhQUFhO0lBeUJ6QixRQUFRO1FBQ1AsSUFBSSxDQUFDLGVBQWUsRUFBRSxD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OlsiaW1wb3J0IHtcclxuXHRDb21wb25lbnQsXHJcblx0ZWZmZWN0LFxyXG5cdGlucHV0LFxyXG5cdGNvbXB1dGVkLFxyXG5cdFZpZXdDaGlsZHJlbixcclxuXHRRdWVyeUxpc3QsXHJcblx0RWxlbWVudFJlZixcclxuXHRDaGFuZ2VEZXRlY3RvclJlZixcclxuXHRpbmplY3QsXHJcblx0SG9zdExpc3RlbmVyLFxyXG5cdHVudHJhY2tlZCxcclxuXHRzaWduYWwsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgVmFsaWRhdG9ycywgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybVN1Ym1pdHRlZEV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBGaWVsZENvbnRyb2wgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2ZpZWxkLWNvbnRyb2wnO1xyXG5pbXBvcnQgeyBGb3JtRmllbGQsIEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0tZmllbGQvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2kxOG4uc2VydmljZSc7XHJcbmltcG9ydCB7IGZpZWxkVXRpbHMgfSBmcm9tICcuLi9mb3JtLWZpZWxkL2ZpZWxkLXV0aWxzJztcclxuaW1wb3J0IHsgVXBzZXJ0IH0gZnJvbSAnLi4vLi4vYW0vYW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgZ2VuZXJhdGVVbmlxdWVJZCB9IGZyb20gJy4uLy4uL3NoYXJlL3V0aWxzJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgaXNPYnNlcnZhYmxlLCBPYnNlcnZhYmxlLCBzaGFyZVJlcGxheSB9IGZyb20gJ3J4anMnO1xyXG5leHBvcnQgaW50ZXJmYWNlIEZvcm1PcHRpb25zIHtcclxuXHRmaWVsZHM/OiBGb3JtRmllbGRbXTtcclxuXHRmb3JtPzogRm9ybUdyb3VwO1xyXG5cdG1haW5GaWVsZD86IHN0cmluZztcclxuXHRsYWJlbFdpZHRoPzogc3RyaW5nO1xyXG5cdGludGVyYWN0aXZlTGFiZWw/OiBib29sZWFuO1xyXG5cdGV4dHJhPzogYW55O1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2N1c3RvbS1mb3JtJyxcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEZvcm1GaWVsZENvbXBvbmVudF0sXHJcblx0cHJvdmlkZXJzOiBbRGF0ZVBpcGVdLFxyXG5cdHRlbXBsYXRlVXJsOiAnLi9mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybDogJy4vZm9ybS5jb21wb25lbnQuc2NzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtQ29tcG9uZW50IHtcclxuXHRAVmlld0NoaWxkcmVuKEZvcm1GaWVsZENvbXBvbmVudCkgZmllbGRDb21wb25lbnRzPzogUXVlcnlMaXN0PEZvcm1GaWVsZENvbXBvbmVudD47XHJcblx0cm91dGVyOiBSb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuXHRpc05ldzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cdG9wdGlvbnMgPSBpbnB1dDxGb3JtT3B0aW9ucz4oe30pO1xyXG5cdGZpZWxkcyA9IGNvbXB1dGVkKCgpID0+IHtcclxuXHRcdHVudHJhY2tlZCgoKSA9PiB7XHJcblx0XHRcdHRoaXMuaW5pdEZvcm0oKTtcclxuXHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XHJcblx0XHRcdFx0dGhpcy5yZUNhbGNMYWJlbFNpemUoKTtcclxuXHRcdFx0fSk7XHJcblx0XHR9KTtcclxuXHRcdHJldHVybiB0aGlzLm9wdGlvbnMoKS5maWVsZHM7XHJcblx0fSk7XHJcblxyXG5cdGkxOG5TZXJ2aWNlID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcclxuXHRtb2RlbCA9IGlucHV0PGFueT4oKTtcclxuXHR1cHNlcnQgPSBpbnB1dDxVcHNlcnQ+KCk7XHJcblx0cmF3TW9kZWw6IGFueSA9IHt9O1xyXG5cdGNoYW5nZWRNb2RlbDogYW55ID0ge307XHJcblx0ZmllbGRMaXN0ITogRm9ybUZpZWxkW107XHJcblx0aG9va09ic2VydmVyczogRnVuY3Rpb25bXSA9IFtdO1xyXG5cdGxhYmVsTWluV2lkdGggPSBzaWduYWw8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xyXG5cclxuXHRASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuXHRvblJlc2l6ZSgpIHtcclxuXHRcdHRoaXMucmVDYWxjTGFiZWxTaXplKCk7XHJcblx0fVxyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuXHRcdHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlLFxyXG5cdCkge1xyXG5cdFx0dGhpcy5yb3V0ZXIudXJsLnNwbGl0KCcvJykucG9wKCkgPT0gJ25ldycgJiYgKHRoaXMuaXNOZXcgPSB0cnVlKTtcclxuXHRcdGVmZmVjdChcclxuXHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdGlmICghdGhpcy5tb2RlbCgpKSB7XHJcblx0XHRcdFx0XHRyZXR1cm47XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC8vIOm7mOiupOWAvOS7heWcqOihqOWNleaWsOW7uuaXtueUn+aViFxyXG5cdFx0XHRcdGlmICh0aGlzLmlzTmV3KSB7XHJcblx0XHRcdFx0XHR0aGlzLmZpZWxkTGlzdC5mb3JFYWNoKChmaWVsZCkgPT4ge1xyXG5cdFx0XHRcdFx0XHRpZiAoIWZpZWxkLmRlZmF1bHQpIHJldHVybjtcclxuXHRcdFx0XHRcdFx0aWYgKHRoaXMubW9kZWwoKVtmaWVsZC5rZXkhXSAhPT0gdW5kZWZpbmVkKSByZXR1cm47XHJcblx0XHRcdFx0XHRcdHVudHJhY2tlZCgoKSA9PiB7XHJcblx0XHRcdFx0XHRcdFx0dGhpcy5oYW5kbGVWYWx1ZUNoYW5nZShmaWVsZC5kZWZhdWx0LCBmaWVsZCk7XHJcblx0XHRcdFx0XHRcdH0pO1xyXG5cdFx0XHRcdFx0fSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMucmF3TW9kZWwgPSB7IC4uLnRoaXMubW9kZWwoKSB9O1xyXG5cdFx0XHRcdHRoaXMuY2hhbmdlZE1vZGVsID0ge307XHJcblx0XHRcdFx0dW50cmFja2VkKCgpID0+IHRoaXMudHJpZ2dlckhvb2soKSk7XHJcblx0XHRcdH0sXHJcblx0XHRcdHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSxcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcblx0XHRzZXRUaW1lb3V0KCgpID0+IHtcclxuXHRcdFx0dGhpcy5yZUNhbGNMYWJlbFNpemUoKTtcclxuXHRcdH0pO1xyXG5cdFx0dGhpcy5pMThuU2VydmljZS5jaGFuZ2Uuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuXHRcdFx0dGhpcy5yZUNhbGNMYWJlbFNpemUoKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHR0aGlzLmhvb2tPYnNlcnZlcnMuZm9yRWFjaCgodW5zdWJzY3JpYmUpID0+IHVuc3Vic2NyaWJlKCkpO1xyXG5cdH1cclxuXHJcblx0aW5pdEZvcm0oKSB7XHJcblx0XHRpZiAoIXRoaXMub3B0aW9ucygpLmV4dHJhKSB7XHJcblx0XHRcdHRoaXMub3B0aW9ucygpLmV4dHJhID0ge307XHJcblx0XHR9XHJcblx0XHRpZiAoIXRoaXMub3B0aW9ucygpLmZvcm0pIHtcclxuXHRcdFx0dGhpcy5vcHRpb25zKCkuZm9ybSA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5maWVsZExpc3QgPSBbXTtcclxuXHRcdHRoaXMucGFyc2VGaWVsZHModGhpcy5vcHRpb25zKCkuZmllbGRzIHx8IFtdKTtcclxuXHRcdHRoaXMuZmllbGRMaXN0LmZvckVhY2goKGZpZWxkKSA9PiB7XHJcblx0XHRcdGZpZWxkLnV1aWQgPSBnZW5lcmF0ZVVuaXF1ZUlkKCk7XHJcblx0XHRcdGZpZWxkLmxhYmVsTWluV2lkdGggPSB0aGlzLmxhYmVsTWluV2lkdGg7XHJcblx0XHRcdGZpZWxkLmludGVyYWN0aXZlTGFiZWwgPSB0aGlzLm9wdGlvbnMoKS5pbnRlcmFjdGl2ZUxhYmVsID8/IHRydWU7XHJcblx0XHRcdGZpZWxkLmZvcm0gPSB0aGlzO1xyXG5cdFx0XHRpZihpc09ic2VydmFibGUoZmllbGQuaG9vaykgKXtcclxuXHRcdFx0XHR0aGlzLnVuaXF1ZUhvb2soZmllbGQsIGZpZWxkLmhvb2spO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuaGFuZGxlRmllbGRDb250cm9sKGZpZWxkKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0Z2V0RmllbGQoa2V5OiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmZpZWxkTGlzdC5maW5kKChmaWVsZCkgPT4gZmllbGQua2V5ID09PSBrZXkpO1xyXG5cdH1cclxuXHJcblx0cGFyc2VGaWVsZHMoZmllbGRzOiBGb3JtRmllbGRbXSkge1xyXG5cdFx0ZmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiB7XHJcblx0XHRcdGlmIChmaWVsZC5ncm91cCkge1xyXG5cdFx0XHRcdHRoaXMucGFyc2VGaWVsZHMoZmllbGQuZ3JvdXApO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHRoaXMuZmllbGRMaXN0LnB1c2goZmllbGQpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdGhhbmRsZUZpZWxkQ29udHJvbChmaWVsZDogRm9ybUZpZWxkKSB7XHJcblx0XHRjb25zdCBmaWVsZENvbnRyb2wgPSBmaWVsZFV0aWxzLnByb3BzKGZpZWxkKS5yZXF1aXJlZFxyXG5cdFx0XHQ/IG5ldyBGaWVsZENvbnRyb2wobnVsbCwgZmllbGQudmFsaWRhdG9ycyA/IGZpZWxkLnZhbGlkYXRvcnMgOiBWYWxpZGF0b3JzLnJlcXVpcmVkKVxyXG5cdFx0XHQ6IG5ldyBGaWVsZENvbnRyb2wobnVsbCk7XHJcblx0XHR0aGlzLm9wdGlvbnMoKS5mb3JtPy5hZGRDb250cm9sKGZpZWxkLmtleSB8fCAnJywgZmllbGRDb250cm9sKTtcclxuXHRcdGZpZWxkLmZpZWxkQ29udHJvbCA9IGZpZWxkQ29udHJvbDtcclxuXHRcdGZpZWxkLmZpZWxkQ29udHJvbD8udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsdWUpID0+IHtcclxuXHRcdFx0Y29uc3QgdGFyZ2V0VmFsdWUgPSBmaWVsZFV0aWxzLmZyb21GaWVsZFZhbHVlKGZpZWxkLCB2YWx1ZSwgdGhpcy5kYXRlUGlwZSk7XHJcblx0XHRcdGlmIChmaWVsZFV0aWxzLmlzRmFrZWRDaGFuZ2UodGFyZ2V0VmFsdWUsIHRoaXMubW9kZWwoKVtmaWVsZC5rZXkhXSwgZmllbGQpKSB7XHJcblx0XHRcdFx0cmV0dXJuO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuaGFuZGxlVmFsdWVDaGFuZ2UodGFyZ2V0VmFsdWUsIGZpZWxkKTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0aGFuZGxlVmFsdWVDaGFuZ2UodmFsdWU6IGFueSwgZmllbGQ6IEZvcm1GaWVsZCkge1xyXG5cdFx0dGhpcy5tb2RlbCgpW2ZpZWxkLmtleSFdID0gdmFsdWU7XHJcblx0XHR0aGlzLmNoYW5nZWRNb2RlbFtmaWVsZC5rZXkhXSA9IHsgbmFtZTogZmllbGRVdGlscy5sYWJlbChmaWVsZCwgdGhpcy5pMThuU2VydmljZSksIHZhbHVlOiB2YWx1ZSwgdHlwZTogZmllbGQudHlwZSB9O1xyXG5cdFx0dGhpcy5oYW5kbGVVcHNlcnQoZmllbGQua2V5ISwgdmFsdWUpO1xyXG5cdFx0Y29uc29sZS5sb2coJy0tLS0taGFuZGxlVmFsdWVDaGFuZ2UnLCB0aGlzLnVwc2VydCgpKTtcclxuXHRcdHRoaXMuaGFuZGxlSGlkZUV4cHJlc3Npb24oKTtcclxuXHR9XHJcblxyXG5cdGhhbmRsZVVwc2VydChrZXk6IHN0cmluZywgdmFsdWU6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuaXNOZXcpIHtcclxuXHRcdFx0dGhpcy51cHNlcnQoKSEuYWRkRGF0YSFba2V5XSA9IHZhbHVlO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0dGhpcy51cHNlcnQoKSEudXBkRGF0YSFba2V5XSA9IHZhbHVlO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy51cHNlcnQoKSEubG9nIS5jb250ZW50ID0gZmllbGRVdGlscy50cmFuc0xvZyhcclxuXHRcdFx0dGhpcy5yYXdNb2RlbCxcclxuXHRcdFx0dGhpcy5jaGFuZ2VkTW9kZWwsXHJcblx0XHRcdHRoaXMubW9kZWwoKVt0aGlzLm9wdGlvbnMoKS5tYWluRmllbGQhXSxcclxuXHRcdFx0dGhpcy5pc05ldyxcclxuXHRcdCk7XHJcblx0fVxyXG5cclxuXHRoYW5kbGVIaWRlRXhwcmVzc2lvbigpIHtcclxuXHRcdHRoaXMuZmllbGRMaXN0LmZvckVhY2goKGZpZWxkKSA9PiB7XHJcblx0XHRcdGlmIChmaWVsZC5oaWRlRXhwcmVzc2lvbikge1xyXG5cdFx0XHRcdGZpZWxkLmhpZGUgPSBmaWVsZC5oaWRlRXhwcmVzc2lvbih0aGlzLm1vZGVsKCksIGZpZWxkKTtcclxuXHRcdFx0XHRpZiAoZmllbGQuaGlkZSkge1xyXG5cdFx0XHRcdFx0dGhpcy5vcHRpb25zKCkuZm9ybT8uY29udHJvbHNbZmllbGQua2V5IV0uZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcblx0XHRcdFx0fSBlbHNlIHtcclxuXHRcdFx0XHRcdHRoaXMub3B0aW9ucygpLmZvcm0/LmNvbnRyb2xzW2ZpZWxkLmtleSFdLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHZhbGlkYXRlKCkge1xyXG5cdFx0Zm9yIChsZXQga2V5IGluIHRoaXMub3B0aW9ucygpLmZvcm0/LmNvbnRyb2xzKSB7XHJcblx0XHRcdCF0aGlzLm9wdGlvbnMoKS5mb3JtPy5jb250cm9sc1trZXldWydkaXNhYmxlZCddICYmIHRoaXMub3B0aW9ucygpLmZvcm0/LmNvbnRyb2xzW2tleV0ubWFya0FzRGlydHkoKTtcclxuXHRcdH1cclxuXHRcdHJldHVybiB0aGlzLm9wdGlvbnMoKS5mb3JtPy52YWxpZDtcclxuXHR9XHJcblxyXG5cdHVuaXF1ZUhvb2soZmllbGQ6IEZvcm1GaWVsZCwgaG9vazogT2JzZXJ2YWJsZTwoZmllbGQ/OiBGb3JtRmllbGQpID0+IHZvaWQ+KSB7XHJcblx0XHRmaWVsZC5ob29rID0gaG9vay5waXBlKHNoYXJlUmVwbGF5KDEpKTtcclxuXHR9XHJcblxyXG5cdHRyaWdnZXJIb29rKCkge1xyXG5cdFx0dGhpcy5maWVsZExpc3QuZm9yRWFjaCgoZmllbGQpID0+IHtcclxuXHRcdFx0ZmllbGRVdGlscy50cmlnZ2VySG9va0FuZFNldFZhbHVlKFxyXG5cdFx0XHRcdGZpZWxkLFxyXG5cdFx0XHRcdHRoaXMubW9kZWwoKT8uW2ZpZWxkLmtleSFdLFxyXG5cdFx0XHRcdFsndXBsb2FkJywgJ2ltYWdlJywgJ2NvZGVtaXJyb3InLCAncmFkaW8nLCAnc2VsZWN0J10uaW5jbHVkZXMoZmllbGQudHlwZSEpLFxyXG5cdFx0XHRcdHRoaXMuaG9va09ic2VydmVycyxcclxuXHRcdFx0XHQoKSA9PiB7XHJcblx0XHRcdFx0XHR0aGlzLmhhbmRsZUhpZGVFeHByZXNzaW9uKCk7XHJcblx0XHRcdFx0fSxcclxuXHRcdFx0XHR0aGlzLmRhdGVQaXBlLFxyXG5cdFx0XHQpO1xyXG5cdFx0fSk7XHJcblx0fVxyXG5cclxuXHRyZUNhbGNMYWJlbFNpemUoKSB7XHJcblx0XHRpZiAodGhpcy5vcHRpb25zKCkubGFiZWxXaWR0aCkge1xyXG5cdFx0XHR0aGlzLmxhYmVsTWluV2lkdGguc2V0KHRoaXMub3B0aW9ucygpLmxhYmVsV2lkdGgpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHR0aGlzLmxhYmVsTWluV2lkdGguc2V0KHVuZGVmaW5lZCk7XHJcblx0XHR0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0XHR0aGlzLmhhbmRsZUZpZWxkTGFiZWxzKCk7XHJcblx0XHR0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcblx0fVxyXG5cclxuXHRoYW5kbGVGaWVsZExhYmVscygpIHtcclxuXHRcdGNvbnN0IGZpZWxkTGFiZWxzOiBFbGVtZW50UmVmW10gPSBbXTtcclxuXHRcdHRoaXMuZ2V0RmllbGRMYWJlbHModGhpcy5maWVsZENvbXBvbmVudHMsIGZpZWxkTGFiZWxzKTtcclxuXHRcdGNvbnN0IG9mZnNldFdpZHRocyA9IGZpZWxkTGFiZWxzLm1hcCgoZmllbGRMYWJlbCkgPT4gZmllbGRMYWJlbC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoKTtcclxuXHRcdHRoaXMubGFiZWxNaW5XaWR0aC5zZXQoTWF0aC5tYXgoLi4ub2Zmc2V0V2lkdGhzKSArIDE4ICsgJ3B4Jyk7XHJcblx0fVxyXG5cclxuXHRnZXRGaWVsZExhYmVscyhmaWVsZENvbXBvbmVudHM6IFF1ZXJ5TGlzdDxGb3JtRmllbGRDb21wb25lbnQ+IHwgdW5kZWZpbmVkLCBmaWVsZExhYmVsczogRWxlbWVudFJlZltdKSB7XHJcblx0XHRpZiAoIWZpZWxkQ29tcG9uZW50cykge1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHRmaWVsZENvbXBvbmVudHM/LmZvckVhY2goKGNvbXBvbmVudCkgPT4ge1xyXG5cdFx0XHRjb25zdCBmaWVsZExhYmVsID0gY29tcG9uZW50LmdldEZpZWxkTGFiZWwoKTtcclxuXHRcdFx0aWYgKGZpZWxkTGFiZWwpIHtcclxuXHRcdFx0XHRmaWVsZExhYmVscy5wdXNoKGZpZWxkTGFiZWwpO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuZ2V0RmllbGRMYWJlbHMoY29tcG9uZW50LmdldEZpZWxkQ29tcG9uZW50cygpLCBmaWVsZExhYmVscyk7XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHRyaWdnZXJNb2RlbEVmZmVjdChtb2RlbDogYW55KSB7XHJcblx0XHRPYmplY3Qua2V5cyhtb2RlbCkuZm9yRWFjaCgoa2V5KSA9PiB7XHJcblx0XHRcdGNvbnN0IGZpZWxkID0gdGhpcy5nZXRGaWVsZChrZXkpITtcclxuXHRcdFx0aWYgKCFmaWVsZCkgcmV0dXJuO1xyXG5cdFx0XHRmaWVsZFV0aWxzLnRyaWdnZXJIb29rQW5kU2V0VmFsdWUoXHJcblx0XHRcdFx0ZmllbGQsXHJcblx0XHRcdFx0bW9kZWxba2V5XSxcclxuXHRcdFx0XHRbJ3VwbG9hZCcsICdpbWFnZScsICdjb2RlbWlycm9yJywgJ3JhZGlvJywgJ3NlbGVjdCddLmluY2x1ZGVzKGZpZWxkLnR5cGUhKSxcclxuXHRcdFx0XHR0aGlzLmhvb2tPYnNlcnZlcnMsXHJcblx0XHRcdFx0KCkgPT4ge1xyXG5cdFx0XHRcdFx0dGhpcy5oYW5kbGVIaWRlRXhwcmVzc2lvbigpO1xyXG5cdFx0XHRcdH0sXHJcblx0XHRcdFx0dGhpcy5kYXRlUGlwZSxcclxuXHRcdFx0KTtcclxuXHRcdH0pO1xyXG5cdH1cclxuXHJcblx0ZmluYWxpemUoKSB7XHJcblx0XHR0aGlzLmZpZWxkTGlzdC5mb3JFYWNoKChmaWVsZCkgPT4ge1xyXG5cdFx0XHRpZiAoWydpbWFnZScsICd1cGxvYWQnXS5pbmNsdWRlcyhmaWVsZC50eXBlISkpIHtcclxuXHRcdFx0XHRmaWVsZC5maWVsZENvbnRyb2w/LmFmdGVyU3VibWl0KCk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cdH1cclxufVxyXG4iLCJAZm9yIChmaWVsZCBvZiBmaWVsZHMoKTsgdHJhY2sgZmllbGQpIHtcclxuXHQ8Zm9ybS1maWVsZFxyXG5cdFx0Y2xhc3M9XCJ3LWZ1bGxcIlxyXG5cdFx0W2ZpZWxkXT1cImZpZWxkXCI+XHJcblx0PC9mb3JtLWZpZWxkPlxyXG59XHJcbiJdfQ==
@@ -55,6 +55,14 @@ export class PageFormComponent extends AmComponent {
55
55
  this.isLog = this.modelLog();
56
56
  console.log('model-----', this.isLog, this.modelLog());
57
57
  }, { allowSignalWrites: true });
58
+ effect(() => {
59
+ if (this.statusSteps().length > 0 && !this.id) {
60
+ this.upsertPrm.addData[this.statusKey()] = this.statusSteps()[0]['value'];
61
+ this.getPrm.data = Object.assign(this.getPrm.data || {}, {
62
+ [this.statusKey()]: this.statusSteps()[0]['value']
63
+ });
64
+ }
65
+ }, { allowSignalWrites: true });
58
66
  }
59
67
  ngOnInit() {
60
68
  this.upCb = this.upCb.bind(this);
@@ -107,10 +115,11 @@ export class PageFormComponent extends AmComponent {
107
115
  });
108
116
  }
109
117
  }
110
- getDetail() {
118
+ getDetail(customSteps) {
111
119
  this.web_get(this.getPrm).subscribe(res => {
112
120
  this.updateTitle(res);
113
121
  this.formDisabled() && this.formDisFunc();
122
+ customSteps && customSteps.refreshSteps();
114
123
  });
115
124
  }
116
125
  updateTitle(res) {
@@ -158,8 +167,7 @@ export class PageFormComponent extends AmComponent {
158
167
  };
159
168
  }
160
169
  this.web_write(param).subscribe(res => {
161
- this.getDetail();
162
- customSteps.refreshSteps();
170
+ this.getDetail(customSteps);
163
171
  });
164
172
  }
165
173
  else {
@@ -208,4 +216,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
208
216
  type: ViewChild,
209
217
  args: ['cForm']
210
218
  }] } });
211
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvcGFnZS1mb3JtL3BhZ2UtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3BhZ2UtZm9ybS9wYWdlLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQWMsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUM3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxjQUFjLEVBQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFlLE1BQU0sNkJBQTZCLENBQUM7QUFDekUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsV0FBVyxHQUFRLE1BQU0sb0JBQW9CLENBQUM7QUFHdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFB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QUFJLENBQUMsRUFBRSxDQUFDO29CQUMxQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsWUFBYSxDQUFDLE9BQU8sQ0FBQyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsQ0FBQyxDQUFBO2dCQUN2RSxDQUFDO3FCQUFNLENBQUM7b0JBQ04sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFlBQWEsQ0FBQyxNQUFNLENBQUMsRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQTtnQkFDeEYsQ0FBQztZQUNILENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDOytHQTdLVSxpQkFBaUI7bUdBQWpCLGlCQUFpQiwrbkRBRmxCLEVBQUUsNE9DbkNkLDJzSUFpSGUsK1FEM0ZYLFlBQVksaWJBQ1osbUJBQW1CLHFiQUNuQixhQUFhLGdHQUNiLFlBQVksK0VBQ1osb0JBQW9CLCtOQUNwQixjQUFjLHlIQUNkLGFBQWEsb09BQ2IsVUFBVSw0WEFDVixvQkFBb0Isa0pBQ3BCLGFBQWE7OzRGQU1KLGlCQUFpQjtrQkFuQjdCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUDt3QkFDUCxZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYixZQUFZO3dCQUNaLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCxhQUFhO3dCQUNiLFVBQVU7d0JBQ1Ysb0JBQW9CO3dCQUNwQixhQUFhO3FCQUNkLGFBR1MsRUFBRTt3REFlYSxVQUFVO3NCQUFsQyxTQUFTO3VCQUFDLFlBQVk7Z0JBQ0gsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXNlckhpc3RvcnlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS91c2VySGlzdG9yeS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QsIE9uSW5pdCwgVmlld0NoaWxkLCBpbnB1dCwgZWZmZWN0LCBjb21wdXRlZCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgRm9ybUNvbXBvbmVudCxGb3JtT3B0aW9ucyB9IGZyb20gJy4uL2Zvcm0vZm9ybS9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJvd1NlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vcm93LXNlbGVjdG9yL3Jvdy1zZWxlY3Rvci5jb21wb25lbnQnXHJcbmltcG9ydCB7IExvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2xvZy9sb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnV0dG9uTW9kdWxlIH0gZnJvbSAncHJpbWVuZy9idXR0b24nO1xyXG5pbXBvcnQgeyBDcnVtYkFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL2NydW1iLWFjdGlvbi9jcnVtYi1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3RlcHNDb21wb25lbnQsU3RlcCB9IGZyb20gJy4uL3N0ZXBzL3N0ZXBzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEdyaWRDb21wb25lbnQsIEdyaWRPcHRpb25zIH0gZnJvbSAnLi4vZ3JpZC9ncmlkL2dyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFic01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFicyc7XHJcbmltcG9ydCB7IEFtQ29tcG9uZW50LCBHZXQsIH0gZnJvbSAnLi4vYW0vYW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2VhcmNoIH0gZnJvbSAnLi4vYW0vYW0uY29tcG9uZW50J1xyXG5pbXBvcnQgeyBIcmVmQnRuTGlzdCxHcmlkTGlzdCB9IGZyb20gJy4vcGFnZS1mb3JtLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcclxuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL2kxOG4uc2VydmljZSc7XHJcbmltcG9ydCB7IFBlcm1pc3Npb25CdG4gfSBmcm9tICcuL3BhZ2UtZm9ybS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBmb3JtVHlwZVRvUHJvcHMgfSBmcm9tICcuL3BhZ2UtZm9ybS5pbnRlcmZhY2UnXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXBhZ2UtZm9ybScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBCdXR0b25Nb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgRm9ybUNvbXBvbmVudCxcclxuICAgIExvZ0NvbXBvbmVudCxcclxuICAgIENydW1iQWN0aW9uQ29tcG9uZW50LFxyXG4gICAgU3RlcHNDb21wb25lbnQsXHJcbiAgICBHcmlkQ29tcG9uZW50LFxyXG4gICAgVGFic01vZHVsZSxcclxuICAgIFJvd1NlbGVjdG9yQ29tcG9uZW50LFxyXG4gICAgVHJhbnNsYXRlUGlwZSxcclxuICBdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdlLWZvcm0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9wYWdlLWZvcm0uY29tcG9uZW50LnNjc3MnLFxyXG4gIHByb3ZpZGVyczpbXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFnZUZvcm1Db21wb25lbnQgZXh0ZW5kcyBBbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuICBhZGRWaXNpYmxlID0gaW5wdXQ8Ym9vbGVhbj4oKVxyXG4gIGdyaWRMaXN0ID0gaW5wdXQ8R3JpZExpc3RbXT4oW10pXHJcbiAgZm9ybSA9IGlucHV0LnJlcXVpcmVkPEZvcm1PcHRpb25zPih7fSlcclxuICBnZXRQcm1JbnB1dCA9IGlucHV0LnJlcXVpcmVkPEdldD4oe30pXHJcbiAgc3RhdHVzU3RlcHMgPSBpbnB1dDxTdGVwW10+KFtdKVxyXG4gIHN0YXR1c0tleSA9IGlucHV0KCdzdGF0dXMnKVxyXG4gIGhyZWZCdG5MaXN0ID0gaW5wdXQ8SHJlZkJ0bkxpc3RbXT4oW10pXHJcbiAgc2V0VGl0bGUgPSBpbnB1dDxzdHJpbmc+KClcclxuICBhY3Rpb25MaXN0ID0gaW5wdXQ8UGVybWlzc2lvbkJ0bltdPihbXSlcclxuICBtb2RlbExvZyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKVxyXG4gIGZvcm1EaXNhYmxlZCA9IGlucHV0PEZ1bmN0aW9uPigpXHJcblxyXG4gIEBWaWV3Q2hpbGQoJ2N1c3RvbUdyaWQnKSBjdXN0b21HcmlkITogR3JpZENvbXBvbmVudDtcclxuICBAVmlld0NoaWxkKCdjRm9ybScpIGNGb3JtITogRm9ybUNvbXBvbmVudFxyXG4gIHVzZXJIaXN0b3J5U2VydmljZSA9ICBpbmplY3QoVXNlckhpc3RvcnlTZXJ2aWNlKVxyXG4gIGluZGV4VmFsdWUgPSAwXHJcbiAgdmlzaWJsZSA9IGZhbHNlXHJcbiAgZGlhbG9nU2VhcmNoUHJtITogU2VhcmNoXHJcbiAgc2VsZWN0T3B0aW9ucyE6R3JpZE9wdGlvbnNcclxuICBzZWxlY3REYXRhIDphbnlbXT0gW11cclxuICBwYWdlVXJsID0gJydcclxuICBuZXdVcmwgPSAnJ1xyXG4gIGkxOG4gPSBpbmplY3QoSTE4blNlcnZpY2UpXHJcbiAgYXV0aExldmVsID0gaW5wdXQ8bnVtYmVyPigtMSlcclxuICBjb25zdHJ1Y3Rvcigpe1xyXG4gICAgc3VwZXIoKVxyXG4gICAgdGhpcy5pZCA9IE51bWJlcih0aGlzLnJvdXRlLnNuYXBzaG90LnBhcmFtTWFwLmdldCgnaWQnKSlcclxuICAgIHRoaXMucGFnZVVybCA9IHRoaXMucm91dGUuc25hcHNob3QudXJsLm1hcChzZWdtZW50ID0+IHNlZ21lbnQucGF0aCkuam9pbignLycpLnJlcGxhY2UoLyhbXlxcL10qKSQvLCBcIlwiKVxyXG4gICAgdGhpcy5uZXdVcmwgPSBgJHt0aGlzLnBhZ2VVcmx9bmV3YFxyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgdGhpcy5tb2RlbE5hbWUgPSB0aGlzLmdldFBybUlucHV0KCkubW9kZWxOYW1lIVxyXG4gICAgICB0aGlzLmdldFBybSA9IHsuLi50aGlzLmdldFBybUlucHV0KCl9XHJcbiAgICAgIHRoaXMuaWQgJiYgKHRoaXMuZ2V0UHJtLmlkID0gdGhpcy5pZClcclxuICAgICAgdGhpcy5pZCAmJiB0aGlzLmdldERldGFpbCgpXHJcbiAgICB9LHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSlcclxuXHJcbiAgICBlZmZlY3QoKCkgPT4ge1xyXG4gICAgICB0aGlzLmZvcm1PcHRpb25zID0gey4uLnRoaXMuZm9ybSgpfVxyXG4gICAgfSlcclxuICAgIGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuaXNMb2cgPSB0aGlzLm1vZGVsTG9nKClcclxuICAgICAgY29uc29sZS5sb2coJ21vZGVsLS0tLS0nLHRoaXMuaXNMb2csdGhpcy5tb2RlbExvZygpKVxyXG4gICAgfSx7YWxsb3dTaWduYWxXcml0ZXM6dHJ1ZX0pXHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy51cENiID0gdGhpcy51cENiLmJpbmQodGhpcylcclxuICB9XHJcblxyXG4gIHN1Ym1pdEZvcm0oKSA6YW55e1xyXG4gICAgaWYodGhpcy5jRm9ybS52YWxpZGF0ZSgpKXtcclxuICAgICAgbGV0IGNiOmFueSA9IHRoaXMuaWQgPT09IDAgPyBudWxsIDogdGhpcy51cENiXHJcbiAgICAgIHRoaXMudXBzZXJ0KG51bGwsY2IpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkZWxSb3dzKGU6YW55KSB7XHJcbiAgICBjb25zdCBncmlkVGFiID0gdGhpcy5ncmlkTGlzdCgpW3RoaXMuaW5kZXhWYWx1ZV1cclxuICAgIGNvbnN0IGRlbGV0ZUZ1bmMgPSBncmlkVGFiLmRlbGV0ZUZ1bmNcclxuICAgIGNvbnN0IHN1YlRhYmxlID0gZ3JpZFRhYi5ncmlkT3B0aW9ucy5tb2RlbE5hbWU7XHJcblxyXG4gICAgbGV0IHBybSA9IHsgXHJcbiAgICAgIG1vZGVsTmFtZTogc3ViVGFibGUsIFxyXG4gICAgICBpZHM6ZSBcclxuICAgIH07XHJcbiAgICBpZighZGVsZXRlRnVuYyl7XHJcbiAgICAgIHRoaXMud2ViX3JlbW92ZShwcm0pLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgdGhpcy5nZXQoKTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBkZWxldGVGdW5jKCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmdldCgpXHJcbiAgICAgIH0pXHJcbiAgICB9XHJcbiAgICBcclxuICB9XHJcbiAgdXBDYihyZXM/OmFueSl7XHJcbiAgICBpZihyZXMuaWQgPT0gMCl7XHJcbiAgICAgIHRoaXMuZ2V0RGV0YWlsKClcclxuICAgIH1lbHNlIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgbGV0IGVkaXRVcmwgPSBgJHt0aGlzLnBhZ2VVcmx9JHtyZXMuaWR9YFxyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtlZGl0VXJsXSlcclxuICAgICAgfSwgMTUwMClcclxuICAgIH1cclxuICAgIHRoaXMuY0Zvcm0uZmluYWxpemUoKVxyXG4gIH1cclxuICAvLyBUT0RPIOaYr+WQpumcgOimgeaVsOaNrui9rOaNouWbnuiwg+WHveaVsFxyXG4gIG9uT2soZTphbnkpe1xyXG4gICAgdGhpcy5ncmlkTGlzdCgpW3RoaXMuaW5kZXhWYWx1ZV0uc2VsZWN0RGF0YSA9IFtdXHJcbiAgICBpZihlLmxlbmd0aCA+IDApe1xyXG4gICAgICBsZXQgeyBzZWxlY3REYXRhQ2IgfSA9IHRoaXMuZ3JpZExpc3QoKVt0aGlzLmluZGV4VmFsdWVdXHJcbiAgICAgIGUuZm9yRWFjaCgoaXRlbTphbnkpID0+IHtcclxuICAgICAgICBsZXQgb2JqID0gc2VsZWN0RGF0YUNiID8gc2VsZWN0RGF0YUNiKGl0ZW0pOiB7Li4uaXRlbX1cclxuICAgICAgICB0aGlzLmdyaWRMaXN0KClbdGhpcy5pbmRleFZhbHVlXS5zZWxlY3REYXRhIS5wdXNoKG9iailcclxuICAgICAgfSlcclxuICAgIH0gXHJcbiAgfVxyXG4gIGdldERldGFpbCgpe1xyXG4gICAgdGhpcy53ZWJfZ2V0KHRoaXMuZ2V0UHJtKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgdGhpcy51cGRhdGVUaXRsZShyZXMpXHJcbiAgICAgIHRoaXMuZm9ybURpc2FibGVkKCkgJiYgdGhpcy5mb3JtRGlzRnVuYygpXHJcbiAgICB9KVxyXG4gIH1cclxuICB1cGRhdGVUaXRsZShyZXM6YW55KXtcclxuICAgIC8vIGxldCB0aXRsZSA9IHRoaXMuc2V0VGl0bGUoKSA/IHRoaXMuc2V0VGl0bGUoKSA6ICcnXHJcbiAgICAvLyB0aXRsZSAhPT0gJycgJiYgdGhpcy51c2VySGlzdG9yeVNlcnZpY2Uuc2V0TGFzdFRpdGxlKHRpdGxlKVxyXG4gICAgbGV0IG1haW5GaWVsZCA9IHRoaXMuZm9ybSgpLm1haW5GaWVsZFxyXG4gICAgbGV0IHRpdGxlID0gcmVzW21haW5GaWVsZCFdXHJcbiAgICB0aGlzLnVzZXJIaXN0b3J5U2VydmljZS5zZXRMYXN0VGl0bGUodGl0bGUpXHJcbiAgfVxyXG4gIGRhdGFTb3VyY2VTaG93KCl7XHJcbiAgICB0aGlzLmRpYWxvZ1NlYXJjaFBybSA9IHsuLi50aGlzLmdyaWRMaXN0KClbdGhpcy5pbmRleFZhbHVlXVsnc2VhcmNoUHJtJ10hfVxyXG4gICAgdGhpcy5zZWxlY3RPcHRpb25zID0gdGhpcy5ncmlkTGlzdCgpW3RoaXMuaW5kZXhWYWx1ZV1bJ3NlbGVjdE9wdGlvbnMnXSFcclxuICAgIGNvbnNvbGUubG9nKCdzZWxldGMtLS0tLScsdGhpcy5zZWxlY3RPcHRpb25zKVxyXG4gICAgdGhpcy5kaWFsb2dTZWFyY2hQcm0ubW9kZWxOYW1lID0gdGhpcy5zZWxlY3RPcHRpb25zLm1vZGVsTmFtZVxyXG4gICAgdGhpcy52aXNpYmxlID0gdHJ1ZVxyXG4gIH1cclxuXHJcbiAgZ29SdW4oZGF0YTphbnkpe1xyXG4gICAgaWYoZGF0YS5pZEtleSl7XHJcbiAgICAgIGxldCBpZCA9IHRoaXMuZ2V0UHJtLmRhdGFbZGF0YS5pZEtleV1cclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake2RhdGEudXJsfS8ke2lkfWBdKVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2RhdGEudXJsXSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGF1dGhDbGljayhidG46YW55KXtcclxuICAgIGNvbnNvbGUubG9nKCdhdXRoQ2xpY2snLGJ0bilcclxuICAgIGlmKGJ0bi5oYXNPd25Qcm9wZXJ0eSgnb25DbGljaycpKXtcclxuICAgICAgYnRuLm9uQ2xpY2sodGhpcy5nZXRQcm0uZGF0YSlcclxuICAgIH1cclxuICB9XHJcbiAgc3RhdHVzQ2hhbmdlKHZhbHVlOmFueSwgY3VzdG9tU3RlcHM6IFN0ZXBzQ29tcG9uZW50KXtcclxuICAgIGlmKHRoaXMuYXV0aExldmVsKCkgPCA0KSByZXR1cm47XHJcbiAgICBpZih0aGlzLmlkKXtcclxuICAgICAgbGV0IHBhcmFtIDphbnk9IHtcclxuICAgICAgICBtb2RlbE5hbWU6IHRoaXMubW9kZWxOYW1lLFxyXG4gICAgICAgIGRhdGE6e2lkOiB0aGlzLmlkLCBbdGhpcy5zdGF0dXNLZXkoKV06IHZhbHVlfVxyXG4gICAgICB9XHJcbiAgICAgIGlmKHRoaXMuaXNMb2cpe1xyXG4gICAgICAgIHBhcmFtLmxvZ01vZGVsID0gYCR7dGhpcy5tb2RlbE5hbWV9TG9nYFxyXG4gICAgICAgIHBhcmFtLmxvZyA9IHtcclxuICAgICAgICAgIHBpZDp0aGlzLmlkLFxyXG4gICAgICAgICAgY29udGVudDpgW+eKtuaAgV0gJHt0aGlzLmdldFBybS5kYXRhIVt0aGlzLnN0YXR1c0tleSgpXX0gLT4gJHt2YWx1ZX1gXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHRoaXMud2ViX3dyaXRlKHBhcmFtKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgICB0aGlzLmdldERldGFpbCgpXHJcbiAgICAgICAgY3VzdG9tU3RlcHMucmVmcmVzaFN0ZXBzKClcclxuICAgICAgfSlcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZ2V0UHJtLmRhdGEgPSBPYmplY3QuYXNzaWduKHRoaXMuZ2V0UHJtLmRhdGF8fHt9LHtcclxuICAgICAgICBbdGhpcy5zdGF0dXNLZXkoKV06dmFsdWVcclxuICAgICAgfSlcclxuICAgICAgdGhpcy51cHNlcnRQcm0uYWRkRGF0YSFbdGhpcy5zdGF0dXNLZXkoKV0gPSB2YWx1ZVxyXG4gICAgICB0aGlzLmNGb3JtLnRyaWdnZXJNb2RlbEVmZmVjdCh7W3RoaXMuc3RhdHVzS2V5KCldOnZhbHVlfSlcclxuICAgICAgY3VzdG9tU3RlcHMucmVmcmVzaFN0ZXBzKClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvcm1EaXNGdW5jKCl7XHJcbiAgICB0aGlzLmZvcm1PcHRpb25zLmZpZWxkcz8uZm9yRWFjaCgodikgPT4ge1xyXG4gICAgICB2Lmdyb3VwPy5mb3JFYWNoKChnOmFueSkgPT4ge1xyXG4gICAgICAgIGxldCBmaWVsZERpc2FibGVkID0gZ1tmb3JtVHlwZVRvUHJvcHNbZy50eXBlXV0uZGlzYWJsZWQgfHwgZmFsc2VcclxuICAgICAgICBpZih0aGlzLmZvcm1EaXNhYmxlZCgpISh0aGlzLmdldFBybS5kYXRhKSApe1xyXG4gICAgICAgICAgdGhpcy5jRm9ybS5nZXRGaWVsZChnLmtleSk/LmZpZWxkQ29udHJvbCEuZGlzYWJsZSh7ZW1pdEV2ZW50OiBmYWxzZX0pIFxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAhZmllbGREaXNhYmxlZCAmJiB0aGlzLmNGb3JtLmdldEZpZWxkKGcua2V5KT8uZmllbGRDb250cm9sIS5lbmFibGUoe2VtaXRFdmVudDogZmFsc2V9KSBcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICB9KVxyXG4gIH1cclxufSIsIjxkaXYgY2xhc3M9XCJvdmVyZmxvdy1oaWRkZW5cIj5cclxuICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1iZXR3ZWVuIHB5LTEgcHgtMSBib3JkZXItYi1bMXB4XSBib3JkZXItWyNkYmRiZGJdIGJnLXdoaXRlXCI+XHJcbiAgICA8YXBwLWNydW1iLWFjdGlvblxyXG4gICAgICBbYWRkVmlzaWJsZV09XCJhZGRWaXNpYmxlKClcIlxyXG4gICAgICBbbmV3VXJsXT1cIm5ld1VybFwiXHJcbiAgICAgIFtpc1Nob3dDb2ddPVwidHJ1ZVwiXHJcbiAgICAgIFtvdXRsaW5lZF09XCJ0cnVlXCJcclxuICAgICAgW2F1dGhMZXZlbF09XCJhdXRoTGV2ZWwoKVwiXHJcbiAgICAgIFthY3Rpb25MaXN0XT1cImFjdGlvbkxpc3QoKVwiXHJcbiAgICAgIChhY3Rpb25FdmVudCk9XCJhdXRoQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgIChzYXZlRXZlbnQpPVwic3VibWl0Rm9ybSgpXCI+XHJcbiAgICA8L2FwcC1jcnVtYi1hY3Rpb24+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaHJlZkJ0bkxpc3RcIj5cclxuICAgICAgQGlmKGlkKXtcclxuICAgICAgICBAZm9yKGJ0biBvZiBocmVmQnRuTGlzdCgpO3RyYWNrIGJ0bil7XHJcbiAgICAgICAgICA8cC1idXR0b24gXHJcbiAgICAgICAgICAgIFt2YXJpYW50XT1cImJ0bj8udmFyaWFudFwiIFxyXG4gICAgICAgICAgICBbc2V2ZXJpdHldPVwiYnRuPy5zZXZlcml0eVwiIFxyXG4gICAgICAgICAgICBjbGFzcz1cIm1yLVs2cHhdXCJcclxuICAgICAgICAgICAgW2ljb25dPVwiYnRuPy5pY29uXCJcclxuICAgICAgICAgICAgbGFiZWw9XCJ7e2J0bi5pMThuS2V5PyBpMThuLmZhbnlpKGJ0bi5pMThuS2V5KSA6IGJ0bi5sYWJlbH19XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImdvUnVuKGJ0bilcIlxyXG4gICAgICAgICAgPlxyXG4gICAgICAgIDwvcC1idXR0b24+XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2PjwvZGl2PlxyXG4gICAgXHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBjbGFzcz1cImZsZXhcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJweC0yIGZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBtZDpiYXNpcy0yLzMgYmFzaXMtZnVsbFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiaGlkZGVuIG1kOmJhc2lzLTEvMyBweS0xIGJhc2lzLWZ1bGwgbWQ6ZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTIgZmxleC1yb3cgb3JkZXItMVwiPlxyXG4gICAgICAgIEBmb3IgKGJ0biBvZiBhY3Rpb25MaXN0KCk7bGV0IGkgPSAkaW5kZXg7IHRyYWNrIGJ0bikge1xyXG4gICAgICAgICAgPHAtYnV0dG9uXHJcbiAgICAgICAgICAgIFt2YXJpYW50XT1cImJ0bj8udmFyaWFudFwiXHJcbiAgICAgICAgICAgIFtzZXZlcml0eV09XCJidG4/LnNldmVyaXR5XCJcclxuICAgICAgICAgICAgY2xhc3M9XCJtci1bNHB4XVwiXHJcbiAgICAgICAgICAgIHNpemU9XCJzbWFsbFwiXHJcbiAgICAgICAgICAgIFtpY29uXT1cImJ0bj8uaWNvblwiXHJcbiAgICAgICAgICAgIGxhYmVsPVwie3sgYnRuLmkxOG5LZXkgPyAoYnRuLmkxOG5LZXkgfCB0cmFuc2xhdGUpIDogYnRuLmxhYmVsIH19XCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cImF1dGhDbGljayhidG4pXCJcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImJ0bi5idG5EaXNhYmxlZCA/IGJ0bi5idG5EaXNhYmxlZChnZXRQcm0uZGF0YSkgOiBmYWxzZVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgIDwvcC1idXR0b24+XHJcbiAgICAgICAgfVxyXG4gICAgICA8L2Rpdj5cclxuICBcclxuICAgICAgPGRpdiBjbGFzcz1cIm1kOmJhc2lzLTIvMyBiYXNpcy1mdWxsIGZsZXggbWQ6ZmxleC1yb3ctcmV2ZXJzZSBmbGV4LXJvdyBtZDpvcmRlci0yIG9yZGVyLWZpcnN0IHctZnVsbFwiPlxyXG4gICAgICAgIDxjdXN0b20tc3RlcHNcclxuICAgICAgICAgICNjdXN0b21TdGVwc1xyXG4gICAgICAgICAgY2xhc3M9XCJ3LWZ1bGxcIlxyXG4gICAgICAgICAgW3N0ZXBzXT1cInN0YXR1c1N0ZXBzKClcIlxyXG4gICAgICAgICAgW2N1cnJlbnRdPVwiZ2V0UHJtLmRhdGEgJiYgZ2V0UHJtLmRhdGFbc3RhdHVzS2V5KCldICE9PSB1bmRlZmluZWQgPyBnZXRQcm0uZGF0YVtzdGF0dXNLZXkoKV0gOiAwXCJcclxuICAgICAgICAgIFthdXRoTGV2ZWxdPVwiYXV0aExldmVsKClcIlxyXG4gICAgICAgICAgKGNoYW5nZSk9XCJzdGF0dXNDaGFuZ2UoJGV2ZW50LCBjdXN0b21TdGVwcylcIj5cclxuICAgICAgICA8L2N1c3RvbS1zdGVwcz5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwibWFpbiBmbGV4IGZsZXgtd3JhcCBvdmVyZmxvdy15LWhpZGRlblwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIm1kOmJhc2lzLTIvMyBiYXNpcy1mdWxsIGgtZnVsbCBvdmVyZmxvdy15LWF1dG9cIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImJnLXdoaXRlIG14LTIgZm9ybS1wYW5lbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwLTIgZmxleC0xXCI+XHJcbiAgICAgICAgICA8Zm9ybVxyXG4gICAgICAgICAgICBbZm9ybUdyb3VwXT1cImZvcm0oKS5mb3JtIVwiPlxyXG4gICAgICAgICAgICA8Y3VzdG9tLWZvcm1cclxuICAgICAgICAgICAgICAjY0Zvcm1cclxuICAgICAgICAgICAgICBbb3B0aW9uc109XCJmb3JtT3B0aW9uc1wiXHJcbiAgICAgICAgICAgICAgW3Vwc2VydF09XCJ1cHNlcnRQcm1cIlxyXG4gICAgICAgICAgICAgIFttb2RlbF09XCJnZXRQcm0uZGF0YT8/e31cIj48L2N1c3RvbS1mb3JtPlxyXG4gICAgICAgICAgPC9mb3JtPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIEBpZihncmlkTGlzdCgpICYmIGdyaWRMaXN0KCkubGVuZ3RoID4gMSl7XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmUgbWItMlwiPlxyXG4gICAgICAgICAgICA8cC10YWJzIFsodmFsdWUpXT1cImluZGV4VmFsdWVcIj5cclxuICAgICAgICAgICAgICA8cC10YWJsaXN0PlxyXG4gICAgICAgICAgICAgICAgQGZvciAoZmNoaWxkIG9mIGdyaWRMaXN0KCk7bGV0IGkgPSAkaW5kZXg7IHRyYWNrIGZjaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgICA8cC10YWIgW3ZhbHVlXT1cImlcIj5cclxuICAgICAgICAgICAgICAgICAgICB7e2ZjaGlsZC5pMThuS2V5ID8gaTE4bi5mYW55aShmY2hpbGQuaTE4bktleSkgOiBmY2hpbGQudGl0bGV9fVxyXG4gICAgICAgICAgICAgICAgICA8L3AtdGFiPlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIDwvcC10YWJsaXN0PlxyXG4gICAgICAgICAgICA8L3AtdGFicz5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIH1cclxuICAgICAgICBAZm9yIChncmlkIG9mIGdyaWRMaXN0KCk7IGxldCBpID0gJGluZGV4O3RyYWNrIGdyaWQpIHtcclxuICAgICAgICAgIDxjdXN0b20tZ3JpZFxyXG4gICAgICAgICAgICAjY3VzdG9tR3JpZFxyXG4gICAgICAgICAgICBbaGlkZGVuXT1cImluZGV4VmFsdWUgIT1pIFwiXHJcbiAgICAgICAgICAgIFtyb3dEYXRhXT1cImdldFBybS5kYXRhPy5bZ3JpZC5zdWJEYXRhS2V5IV18fCBbXVwiXHJcbiAgICAgICAgICAgIFt1cHNlcnRdPVwidXBzZXJ0UHJtXCJcclxuICAgICAgICAgICAgKGRlbGV0ZUVtaXQpPVwiZGVsUm93cygkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2FkZFR5cGVdPVwiZ3JpZC5zdWJUYWJsZVNvdXJjZVwiXHJcbiAgICAgICAgICAgIChhZGRFbWl0KT1cImRhdGFTb3VyY2VTaG93KClcIlxyXG4gICAgICAgICAgICBbZ3JpZE9wdGlvbnNdPVwiZ3JpZC5ncmlkT3B0aW9uc1wiXHJcbiAgICAgICAgICAgIFthdXRoTGV2ZWxdPVwiYXV0aExldmVsKClcIlxyXG4gICAgICAgICAgICBbc2VsZWN0RGF0YV09XCJncmlkLnNlbGVjdERhdGFcIj5cclxuICAgICAgICAgIDwvY3VzdG9tLWdyaWQ+XHJcbiAgICAgICAgfSAgICAgICBcclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJtZDpiYXNpcy0xLzMgYmFzaXMtZnVsbCBoLWZ1bGwgb3ZlcmZsb3cteS1hdXRvXCI+XHJcbiAgICAgIDxjdXN0b20tbG9nIFtsb2dzXT1cImdldFBybS5kYXRhPy5sb2c/P1tdXCI+PC9jdXN0b20tbG9nPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG48cm93LXNlbGVjdG9yXHJcblx0Wyh2aXNpYmxlKV09XCJ2aXNpYmxlXCJcclxuXHRbc2VhcmNoUHJtXT1cImRpYWxvZ1NlYXJjaFBybVwiXHJcblx0W2dyaWRPcHRpb25zXT1cInNlbGVjdE9wdGlvbnNcIlxyXG5cdChvbk9rKT1cIm9uT2soJGV2ZW50KVwiPlxyXG48L3Jvdy1zZWxlY3Rvcj4iXX0=
219
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvcGFnZS1mb3JtL3BhZ2UtZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3BhZ2UtZm9ybS9wYWdlLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQW1CLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQWMsTUFBTSw2QkFBNkIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQTtBQUM3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxjQUFjLEVBQU8sTUFBTSwwQkFBMEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsYUFBYSxFQUFlLE1BQU0sNkJBQTZCLENBQUM7QUFDekUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsV0FBVyxHQUFRLE1BQU0sb0JBQW9CLENBQUM7QUFHdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFB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QUFqQixpQkFBaUIsK25EQUZsQixFQUFFLDRPQ25DZCwyc0lBaUhlLCtRRDNGWCxZQUFZLGliQUNaLG1CQUFtQixxYkFDbkIsYUFBYSxnR0FDYixZQUFZLCtFQUNaLG9CQUFvQiwrTkFDcEIsY0FBYyx5SEFDZCxhQUFhLG9PQUNiLFVBQVUsNFhBQ1Ysb0JBQW9CLGtKQUNwQixhQUFhOzs0RkFNSixpQkFBaUI7a0JBbkI3QixTQUFTOytCQUNFLGVBQWUsY0FDYixJQUFJLFdBQ1A7d0JBQ1AsWUFBWTt3QkFDWixtQkFBbUI7d0JBQ25CLGFBQWE7d0JBQ2IsWUFBWTt3QkFDWixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixVQUFVO3dCQUNWLG9CQUFvQjt3QkFDcEIsYUFBYTtxQkFDZCxhQUdTLEVBQUU7d0RBZWEsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNILEtBQUs7c0JBQXhCLFNBQVM7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVzZXJIaXN0b3J5U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UvdXNlckhpc3Rvcnkuc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQsIFZpZXdDaGlsZCwgaW5wdXQsIGVmZmVjdCwgY29tcHV0ZWQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEZvcm1Db21wb25lbnQsRm9ybU9wdGlvbnMgfSBmcm9tICcuLi9mb3JtL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSb3dTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4uL3Jvdy1zZWxlY3Rvci9yb3ctc2VsZWN0b3IuY29tcG9uZW50J1xyXG5pbXBvcnQgeyBMb2dDb21wb25lbnQgfSBmcm9tICcuLi9sb2cvbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvYnV0dG9uJztcclxuaW1wb3J0IHsgQ3J1bWJBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi9jcnVtYi1hY3Rpb24vY3J1bWItYWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN0ZXBzQ29tcG9uZW50LFN0ZXAgfSBmcm9tICcuLi9zdGVwcy9zdGVwcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHcmlkQ29tcG9uZW50LCBHcmlkT3B0aW9ucyB9IGZyb20gJy4uL2dyaWQvZ3JpZC9ncmlkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYnNNb2R1bGUgfSBmcm9tICdwcmltZW5nL3RhYnMnO1xyXG5pbXBvcnQgeyBBbUNvbXBvbmVudCwgR2V0LCB9IGZyb20gJy4uL2FtL2FtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNlYXJjaCB9IGZyb20gJy4uL2FtL2FtLmNvbXBvbmVudCdcclxuaW1wb3J0IHsgSHJlZkJ0bkxpc3QsR3JpZExpc3QgfSBmcm9tICcuL3BhZ2UtZm9ybS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XHJcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS9pMThuLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQZXJtaXNzaW9uQnRuIH0gZnJvbSAnLi9wYWdlLWZvcm0uaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgZm9ybVR5cGVUb1Byb3BzIH0gZnJvbSAnLi9wYWdlLWZvcm0uaW50ZXJmYWNlJ1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1wYWdlLWZvcm0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW1xyXG4gICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEZvcm1Db21wb25lbnQsXHJcbiAgICBMb2dDb21wb25lbnQsXHJcbiAgICBDcnVtYkFjdGlvbkNvbXBvbmVudCxcclxuICAgIFN0ZXBzQ29tcG9uZW50LFxyXG4gICAgR3JpZENvbXBvbmVudCxcclxuICAgIFRhYnNNb2R1bGUsXHJcbiAgICBSb3dTZWxlY3RvckNvbXBvbmVudCxcclxuICAgIFRyYW5zbGF0ZVBpcGUsXHJcbiAgXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGFnZS1mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vcGFnZS1mb3JtLmNvbXBvbmVudC5zY3NzJyxcclxuICBwcm92aWRlcnM6W11cclxufSlcclxuZXhwb3J0IGNsYXNzIFBhZ2VGb3JtQ29tcG9uZW50IGV4dGVuZHMgQW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcbiAgYWRkVmlzaWJsZSA9IGlucHV0PGJvb2xlYW4+KClcclxuICBncmlkTGlzdCA9IGlucHV0PEdyaWRMaXN0W10+KFtdKVxyXG4gIGZvcm0gPSBpbnB1dC5yZXF1aXJlZDxGb3JtT3B0aW9ucz4oe30pXHJcbiAgZ2V0UHJtSW5wdXQgPSBpbnB1dC5yZXF1aXJlZDxHZXQ+KHt9KVxyXG4gIHN0YXR1c1N0ZXBzID0gaW5wdXQ8U3RlcFtdPihbXSlcclxuICBzdGF0dXNLZXkgPSBpbnB1dCgnc3RhdHVzJylcclxuICBocmVmQnRuTGlzdCA9IGlucHV0PEhyZWZCdG5MaXN0W10+KFtdKVxyXG4gIHNldFRpdGxlID0gaW5wdXQ8c3RyaW5nPigpXHJcbiAgYWN0aW9uTGlzdCA9IGlucHV0PFBlcm1pc3Npb25CdG5bXT4oW10pXHJcbiAgbW9kZWxMb2cgPSBpbnB1dDxib29sZWFuPihmYWxzZSlcclxuICBmb3JtRGlzYWJsZWQgPSBpbnB1dDxGdW5jdGlvbj4oKVxyXG5cclxuICBAVmlld0NoaWxkKCdjdXN0b21HcmlkJykgY3VzdG9tR3JpZCE6IEdyaWRDb21wb25lbnQ7XHJcbiAgQFZpZXdDaGlsZCgnY0Zvcm0nKSBjRm9ybSE6IEZvcm1Db21wb25lbnRcclxuICB1c2VySGlzdG9yeVNlcnZpY2UgPSAgaW5qZWN0KFVzZXJIaXN0b3J5U2VydmljZSlcclxuICBpbmRleFZhbHVlID0gMFxyXG4gIHZpc2libGUgPSBmYWxzZVxyXG4gIGRpYWxvZ1NlYXJjaFBybSE6IFNlYXJjaFxyXG4gIHNlbGVjdE9wdGlvbnMhOkdyaWRPcHRpb25zXHJcbiAgc2VsZWN0RGF0YSA6YW55W109IFtdXHJcbiAgcGFnZVVybCA9ICcnXHJcbiAgbmV3VXJsID0gJydcclxuICBpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKVxyXG4gIGF1dGhMZXZlbCA9IGlucHV0PG51bWJlcj4oLTEpXHJcbiAgY29uc3RydWN0b3IoKXtcclxuICAgIHN1cGVyKClcclxuICAgIHRoaXMuaWQgPSBOdW1iZXIodGhpcy5yb3V0ZS5zbmFwc2hvdC5wYXJhbU1hcC5nZXQoJ2lkJykpXHJcbiAgICB0aGlzLnBhZ2VVcmwgPSB0aGlzLnJvdXRlLnNuYXBzaG90LnVybC5tYXAoc2VnbWVudCA9PiBzZWdtZW50LnBhdGgpLmpvaW4oJy8nKS5yZXBsYWNlKC8oW15cXC9dKikkLywgXCJcIilcclxuICAgIHRoaXMubmV3VXJsID0gYCR7dGhpcy5wYWdlVXJsfW5ld2BcclxuICAgIGVmZmVjdCgoKSA9PiB7XHJcbiAgICAgIHRoaXMubW9kZWxOYW1lID0gdGhpcy5nZXRQcm1JbnB1dCgpLm1vZGVsTmFtZSFcclxuICAgICAgdGhpcy5nZXRQcm0gPSB7Li4udGhpcy5nZXRQcm1JbnB1dCgpfVxyXG4gICAgICB0aGlzLmlkICYmICh0aGlzLmdldFBybS5pZCA9IHRoaXMuaWQpXHJcbiAgICAgIHRoaXMuaWQgJiYgdGhpcy5nZXREZXRhaWwoKVxyXG4gICAgfSx7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0pXHJcblxyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgdGhpcy5mb3JtT3B0aW9ucyA9IHsuLi50aGlzLmZvcm0oKX1cclxuICAgIH0pXHJcbiAgICBlZmZlY3QoKCkgPT4ge1xyXG4gICAgICB0aGlzLmlzTG9nID0gdGhpcy5tb2RlbExvZygpXHJcbiAgICAgIGNvbnNvbGUubG9nKCdtb2RlbC0tLS0tJyx0aGlzLmlzTG9nLHRoaXMubW9kZWxMb2coKSlcclxuICAgIH0se2FsbG93U2lnbmFsV3JpdGVzOnRydWV9KVxyXG4gICAgZWZmZWN0KCgpID0+IHtcclxuICAgICAgaWYodGhpcy5zdGF0dXNTdGVwcygpLmxlbmd0aCA+IDAgJiYgIXRoaXMuaWQpe1xyXG4gICAgICAgIHRoaXMudXBzZXJ0UHJtLmFkZERhdGEhW3RoaXMuc3RhdHVzS2V5KCldID0gdGhpcy5zdGF0dXNTdGVwcygpWzBdWyd2YWx1ZSddXHJcbiAgICAgICAgdGhpcy5nZXRQcm0uZGF0YSA9IE9iamVjdC5hc3NpZ24odGhpcy5nZXRQcm0uZGF0YXx8e30se1xyXG4gICAgICAgICAgW3RoaXMuc3RhdHVzS2V5KCldOnRoaXMuc3RhdHVzU3RlcHMoKVswXVsndmFsdWUnXVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH0se2FsbG93U2lnbmFsV3JpdGVzOnRydWV9KVxyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMudXBDYiA9IHRoaXMudXBDYi5iaW5kKHRoaXMpXHJcbiAgfVxyXG5cclxuICBzdWJtaXRGb3JtKCkgOmFueXtcclxuICAgIGlmKHRoaXMuY0Zvcm0udmFsaWRhdGUoKSl7XHJcbiAgICAgIGxldCBjYjphbnkgPSB0aGlzLmlkID09PSAwID8gbnVsbCA6IHRoaXMudXBDYlxyXG4gICAgICB0aGlzLnVwc2VydChudWxsLGNiKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZGVsUm93cyhlOmFueSkge1xyXG4gICAgY29uc3QgZ3JpZFRhYiA9IHRoaXMuZ3JpZExpc3QoKVt0aGlzLmluZGV4VmFsdWVdXHJcbiAgICBjb25zdCBkZWxldGVGdW5jID0gZ3JpZFRhYi5kZWxldGVGdW5jXHJcbiAgICBjb25zdCBzdWJUYWJsZSA9IGdyaWRUYWIuZ3JpZE9wdGlvbnMubW9kZWxOYW1lO1xyXG5cclxuICAgIGxldCBwcm0gPSB7IFxyXG4gICAgICBtb2RlbE5hbWU6IHN1YlRhYmxlLCBcclxuICAgICAgaWRzOmUgXHJcbiAgICB9O1xyXG4gICAgaWYoIWRlbGV0ZUZ1bmMpe1xyXG4gICAgICB0aGlzLndlYl9yZW1vdmUocHJtKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0KCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZGVsZXRlRnVuYygpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5nZXQoKVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG4gIHVwQ2IocmVzPzphbnkpe1xyXG4gICAgaWYocmVzLmlkID09IDApe1xyXG4gICAgICB0aGlzLmdldERldGFpbCgpXHJcbiAgICB9ZWxzZSB7XHJcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgIGxldCBlZGl0VXJsID0gYCR7dGhpcy5wYWdlVXJsfSR7cmVzLmlkfWBcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZWRpdFVybF0pXHJcbiAgICAgIH0sIDE1MDApXHJcbiAgICB9XHJcbiAgICB0aGlzLmNGb3JtLmZpbmFsaXplKClcclxuICB9XHJcbiAgLy8gVE9ETyDmmK/lkKbpnIDopoHmlbDmja7ovazmjaLlm57osIPlh73mlbBcclxuICBvbk9rKGU6YW55KXtcclxuICAgIHRoaXMuZ3JpZExpc3QoKVt0aGlzLmluZGV4VmFsdWVdLnNlbGVjdERhdGEgPSBbXVxyXG4gICAgaWYoZS5sZW5ndGggPiAwKXtcclxuICAgICAgbGV0IHsgc2VsZWN0RGF0YUNiIH0gPSB0aGlzLmdyaWRMaXN0KClbdGhpcy5pbmRleFZhbHVlXVxyXG4gICAgICBlLmZvckVhY2goKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgICAgbGV0IG9iaiA9IHNlbGVjdERhdGFDYiA/IHNlbGVjdERhdGFDYihpdGVtKTogey4uLml0ZW19XHJcbiAgICAgICAgdGhpcy5ncmlkTGlzdCgpW3RoaXMuaW5kZXhWYWx1ZV0uc2VsZWN0RGF0YSEucHVzaChvYmopXHJcbiAgICAgIH0pXHJcbiAgICB9IFxyXG4gIH1cclxuICBnZXREZXRhaWwoY3VzdG9tU3RlcHM/OiBTdGVwc0NvbXBvbmVudCl7XHJcbiAgICB0aGlzLndlYl9nZXQodGhpcy5nZXRQcm0pLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICB0aGlzLnVwZGF0ZVRpdGxlKHJlcylcclxuICAgICAgdGhpcy5mb3JtRGlzYWJsZWQoKSAmJiB0aGlzLmZvcm1EaXNGdW5jKClcclxuICAgICAgY3VzdG9tU3RlcHMgJiYgY3VzdG9tU3RlcHMucmVmcmVzaFN0ZXBzKClcclxuICAgIH0pXHJcbiAgfVxyXG4gIHVwZGF0ZVRpdGxlKHJlczphbnkpe1xyXG4gICAgLy8gbGV0IHRpdGxlID0gdGhpcy5zZXRUaXRsZSgpID8gdGhpcy5zZXRUaXRsZSgpIDogJydcclxuICAgIC8vIHRpdGxlICE9PSAnJyAmJiB0aGlzLnVzZXJIaXN0b3J5U2VydmljZS5zZXRMYXN0VGl0bGUodGl0bGUpXHJcbiAgICBsZXQgbWFpbkZpZWxkID0gdGhpcy5mb3JtKCkubWFpbkZpZWxkXHJcbiAgICBsZXQgdGl0bGUgPSByZXNbbWFpbkZpZWxkIV1cclxuICAgIHRoaXMudXNlckhpc3RvcnlTZXJ2aWNlLnNldExhc3RUaXRsZSh0aXRsZSlcclxuICB9XHJcbiAgZGF0YVNvdXJjZVNob3coKXtcclxuICAgIHRoaXMuZGlhbG9nU2VhcmNoUHJtID0gey4uLnRoaXMuZ3JpZExpc3QoKVt0aGlzLmluZGV4VmFsdWVdWydzZWFyY2hQcm0nXSF9XHJcbiAgICB0aGlzLnNlbGVjdE9wdGlvbnMgPSB0aGlzLmdyaWRMaXN0KClbdGhpcy5pbmRleFZhbHVlXVsnc2VsZWN0T3B0aW9ucyddIVxyXG4gICAgY29uc29sZS5sb2coJ3NlbGV0Yy0tLS0tJyx0aGlzLnNlbGVjdE9wdGlvbnMpXHJcbiAgICB0aGlzLmRpYWxvZ1NlYXJjaFBybS5tb2RlbE5hbWUgPSB0aGlzLnNlbGVjdE9wdGlvbnMubW9kZWxOYW1lXHJcbiAgICB0aGlzLnZpc2libGUgPSB0cnVlXHJcbiAgfVxyXG5cclxuICBnb1J1bihkYXRhOmFueSl7XHJcbiAgICBpZihkYXRhLmlkS2V5KXtcclxuICAgICAgbGV0IGlkID0gdGhpcy5nZXRQcm0uZGF0YVtkYXRhLmlkS2V5XVxyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYCR7ZGF0YS51cmx9LyR7aWR9YF0pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZGF0YS51cmxdKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXV0aENsaWNrKGJ0bjphbnkpe1xyXG4gICAgY29uc29sZS5sb2coJ2F1dGhDbGljaycsYnRuKVxyXG4gICAgaWYoYnRuLmhhc093blByb3BlcnR5KCdvbkNsaWNrJykpe1xyXG4gICAgICBidG4ub25DbGljayh0aGlzLmdldFBybS5kYXRhKVxyXG4gICAgfVxyXG4gIH1cclxuICBzdGF0dXNDaGFuZ2UodmFsdWU6YW55LCBjdXN0b21TdGVwczogU3RlcHNDb21wb25lbnQpe1xyXG4gICAgaWYodGhpcy5hdXRoTGV2ZWwoKSA8IDQpIHJldHVybjtcclxuICAgIGlmKHRoaXMuaWQpe1xyXG4gICAgICBsZXQgcGFyYW0gOmFueT0ge1xyXG4gICAgICAgIG1vZGVsTmFtZTogdGhpcy5tb2RlbE5hbWUsXHJcbiAgICAgICAgZGF0YTp7aWQ6IHRoaXMuaWQsIFt0aGlzLnN0YXR1c0tleSgpXTogdmFsdWV9XHJcbiAgICAgIH1cclxuICAgICAgaWYodGhpcy5pc0xvZyl7XHJcbiAgICAgICAgcGFyYW0ubG9nTW9kZWwgPSBgJHt0aGlzLm1vZGVsTmFtZX1Mb2dgXHJcbiAgICAgICAgcGFyYW0ubG9nID0ge1xyXG4gICAgICAgICAgcGlkOnRoaXMuaWQsXHJcbiAgICAgICAgICBjb250ZW50OmBb54q25oCBXSAke3RoaXMuZ2V0UHJtLmRhdGEhW3RoaXMuc3RhdHVzS2V5KCldfSAtPiAke3ZhbHVlfWBcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy53ZWJfd3JpdGUocGFyYW0pLnN1YnNjcmliZShyZXMgPT4ge1xyXG4gICAgICAgIHRoaXMuZ2V0RGV0YWlsKGN1c3RvbVN0ZXBzKVxyXG4gICAgICB9KVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5nZXRQcm0uZGF0YSA9IE9iamVjdC5hc3NpZ24odGhpcy5nZXRQcm0uZGF0YXx8e30se1xyXG4gICAgICAgIFt0aGlzLnN0YXR1c0tleSgpXTp2YWx1ZVxyXG4gICAgICB9KVxyXG4gICAgICB0aGlzLnVwc2VydFBybS5hZGREYXRhIVt0aGlzLnN0YXR1c0tleSgpXSA9IHZhbHVlXHJcbiAgICAgIHRoaXMuY0Zvcm0udHJpZ2dlck1vZGVsRWZmZWN0KHtbdGhpcy5zdGF0dXNLZXkoKV06dmFsdWV9KVxyXG4gICAgICBjdXN0b21TdGVwcy5yZWZyZXNoU3RlcHMoKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZm9ybURpc0Z1bmMoKXtcclxuICAgIHRoaXMuZm9ybU9wdGlvbnMuZmllbGRzPy5mb3JFYWNoKCh2KSA9PiB7XHJcbiAgICAgIHYuZ3JvdXA/LmZvckVhY2goKGc6YW55KSA9PiB7XHJcbiAgICAgICAgbGV0IGZpZWxkRGlzYWJsZWQgPSBnW2Zvcm1UeXBlVG9Qcm9wc1tnLnR5cGVdXS5kaXNhYmxlZCB8fCBmYWxzZVxyXG4gICAgICAgIGlmKHRoaXMuZm9ybURpc2FibGVkKCkhKHRoaXMuZ2V0UHJtLmRhdGEpICl7XHJcbiAgICAgICAgICB0aGlzLmNGb3JtLmdldEZpZWxkKGcua2V5KT8uZmllbGRDb250cm9sIS5kaXNhYmxlKHtlbWl0RXZlbnQ6IGZhbHNlfSkgXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICFmaWVsZERpc2FibGVkICYmIHRoaXMuY0Zvcm0uZ2V0RmllbGQoZy5rZXkpPy5maWVsZENvbnRyb2whLmVuYWJsZSh7ZW1pdEV2ZW50OiBmYWxzZX0pIFxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgIH0pXHJcbiAgfVxyXG59IiwiPGRpdiBjbGFzcz1cIm92ZXJmbG93LWhpZGRlblwiPlxyXG4gIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4gcHktMSBweC0xIGJvcmRlci1iLVsxcHhdIGJvcmRlci1bI2RiZGJkYl0gYmctd2hpdGVcIj5cclxuICAgIDxhcHAtY3J1bWItYWN0aW9uXHJcbiAgICAgIFthZGRWaXNpYmxlXT1cImFkZFZpc2libGUoKVwiXHJcbiAgICAgIFtuZXdVcmxdPVwibmV3VXJsXCJcclxuICAgICAgW2lzU2hvd0NvZ109XCJ0cnVlXCJcclxuICAgICAgW291dGxpbmVkXT1cInRydWVcIlxyXG4gICAgICBbYXV0aExldmVsXT1cImF1dGhMZXZlbCgpXCJcclxuICAgICAgW2FjdGlvbkxpc3RdPVwiYWN0aW9uTGlzdCgpXCJcclxuICAgICAgKGFjdGlvbkV2ZW50KT1cImF1dGhDbGljaygkZXZlbnQpXCJcclxuICAgICAgKHNhdmVFdmVudCk9XCJzdWJtaXRGb3JtKClcIj5cclxuICAgIDwvYXBwLWNydW1iLWFjdGlvbj5cclxuICAgIDxkaXYgY2xhc3M9XCJocmVmQnRuTGlzdFwiPlxyXG4gICAgICBAaWYoaWQpe1xyXG4gICAgICAgIEBmb3IoYnRuIG9mIGhyZWZCdG5MaXN0KCk7dHJhY2sgYnRuKXtcclxuICAgICAgICAgIDxwLWJ1dHRvbiBcclxuICAgICAgICAgICAgW3ZhcmlhbnRdPVwiYnRuPy52YXJpYW50XCIgXHJcbiAgICAgICAgICAgIFtzZXZlcml0eV09XCJidG4/LnNldmVyaXR5XCIgXHJcbiAgICAgICAgICAgIGNsYXNzPVwibXItWzZweF1cIlxyXG4gICAgICAgICAgICBbaWNvbl09XCJidG4/Lmljb25cIlxyXG4gICAgICAgICAgICBsYWJlbD1cInt7YnRuLmkxOG5LZXk/IGkxOG4uZmFueWkoYnRuLmkxOG5LZXkpIDogYnRuLmxhYmVsfX1cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiZ29SdW4oYnRuKVwiXHJcbiAgICAgICAgICA+XHJcbiAgICAgICAgPC9wLWJ1dHRvbj5cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgXHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXY+PC9kaXY+XHJcbiAgICBcclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiZmxleFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInB4LTIgZmxleCBmbGV4LXdyYXAgaXRlbXMtY2VudGVyIG1kOmJhc2lzLTIvMyBiYXNpcy1mdWxsXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJoaWRkZW4gbWQ6YmFzaXMtMS8zIHB5LTEgYmFzaXMtZnVsbCBtZDpmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiBmbGV4LXJvdyBvcmRlci0xXCI+XHJcbiAgICAgICAgQGZvciAoYnRuIG9mIGFjdGlvbkxpc3QoKTtsZXQgaSA9ICRpbmRleDsgdHJhY2sgYnRuKSB7XHJcbiAgICAgICAgICA8cC1idXR0b25cclxuICAgICAgICAgICAgW3ZhcmlhbnRdPVwiYnRuPy52YXJpYW50XCJcclxuICAgICAgICAgICAgW3NldmVyaXR5XT1cImJ0bj8uc2V2ZXJpdHlcIlxyXG4gICAgICAgICAgICBjbGFzcz1cIm1yLVs0cHhdXCJcclxuICAgICAgICAgICAgc2l6ZT1cInNtYWxsXCJcclxuICAgICAgICAgICAgW2ljb25dPVwiYnRuPy5pY29uXCJcclxuICAgICAgICAgICAgbGFiZWw9XCJ7eyBidG4uaTE4bktleSA/IChidG4uaTE4bktleSB8IHRyYW5zbGF0ZSkgOiBidG4ubGFiZWwgfX1cIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiYXV0aENsaWNrKGJ0bilcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiYnRuLmJ0bkRpc2FibGVkID8gYnRuLmJ0bkRpc2FibGVkKGdldFBybS5kYXRhKSA6IGZhbHNlXCJcclxuICAgICAgICAgICAgPlxyXG4gICAgICAgICAgPC9wLWJ1dHRvbj5cclxuICAgICAgICB9XHJcbiAgICAgIDwvZGl2PlxyXG4gIFxyXG4gICAgICA8ZGl2IGNsYXNzPVwibWQ6YmFzaXMtMi8zIGJhc2lzLWZ1bGwgZmxleCBtZDpmbGV4LXJvdy1yZXZlcnNlIGZsZXgtcm93IG1kOm9yZGVyLTIgb3JkZXItZmlyc3Qgdy1mdWxsXCI+XHJcbiAgICAgICAgPGN1c3RvbS1zdGVwc1xyXG4gICAgICAgICAgI2N1c3RvbVN0ZXBzXHJcbiAgICAgICAgICBjbGFzcz1cInctZnVsbFwiXHJcbiAgICAgICAgICBbc3RlcHNdPVwic3RhdHVzU3RlcHMoKVwiXHJcbiAgICAgICAgICBbY3VycmVudF09XCJnZXRQcm0uZGF0YSAmJiBnZXRQcm0uZGF0YVtzdGF0dXNLZXkoKV0gIT09IHVuZGVmaW5lZCA/IGdldFBybS5kYXRhW3N0YXR1c0tleSgpXSA6IDBcIlxyXG4gICAgICAgICAgW2F1dGhMZXZlbF09XCJhdXRoTGV2ZWwoKVwiXHJcbiAgICAgICAgICAoY2hhbmdlKT1cInN0YXR1c0NoYW5nZSgkZXZlbnQsIGN1c3RvbVN0ZXBzKVwiPlxyXG4gICAgICAgIDwvY3VzdG9tLXN0ZXBzPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJtYWluIGZsZXggZmxleC13cmFwIG92ZXJmbG93LXktaGlkZGVuXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibWQ6YmFzaXMtMi8zIGJhc2lzLWZ1bGwgaC1mdWxsIG92ZXJmbG93LXktYXV0b1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwiYmctd2hpdGUgbXgtMiBmb3JtLXBhbmVsXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInAtMiBmbGV4LTFcIj5cclxuICAgICAgICAgIDxmb3JtXHJcbiAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybSgpLmZvcm0hXCI+XHJcbiAgICAgICAgICAgIDxjdXN0b20tZm9ybVxyXG4gICAgICAgICAgICAgICNjRm9ybVxyXG4gICAgICAgICAgICAgIFtvcHRpb25zXT1cImZvcm1PcHRpb25zXCJcclxuICAgICAgICAgICAgICBbdXBzZXJ0XT1cInVwc2VydFBybVwiXHJcbiAgICAgICAgICAgICAgW21vZGVsXT1cImdldFBybS5kYXRhPz97fVwiPjwvY3VzdG9tLWZvcm0+XHJcbiAgICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgQGlmKGdyaWRMaXN0KCkgJiYgZ3JpZExpc3QoKS5sZW5ndGggPiAxKXtcclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyZWxhdGl2ZSBtYi0yXCI+XHJcbiAgICAgICAgICAgIDxwLXRhYnMgWyh2YWx1ZSldPVwiaW5kZXhWYWx1ZVwiPlxyXG4gICAgICAgICAgICAgIDxwLXRhYmxpc3Q+XHJcbiAgICAgICAgICAgICAgICBAZm9yIChmY2hpbGQgb2YgZ3JpZExpc3QoKTtsZXQgaSA9ICRpbmRleDsgdHJhY2sgZmNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICAgIDxwLXRhYiBbdmFsdWVdPVwiaVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7ZmNoaWxkLmkxOG5LZXkgPyBpMThuLmZhbnlpKGZjaGlsZC5pMThuS2V5KSA6IGZjaGlsZC50aXRsZX19XHJcbiAgICAgICAgICAgICAgICAgIDwvcC10YWI+XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgPC9wLXRhYmxpc3Q+XHJcbiAgICAgICAgICAgIDwvcC10YWJzPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBmb3IgKGdyaWQgb2YgZ3JpZExpc3QoKTsgbGV0IGkgPSAkaW5kZXg7dHJhY2sgZ3JpZCkge1xyXG4gICAgICAgICAgPGN1c3RvbS1ncmlkXHJcbiAgICAgICAgICAgICNjdXN0b21HcmlkXHJcbiAgICAgICAgICAgIFtoaWRkZW5dPVwiaW5kZXhWYWx1ZSAhPWkgXCJcclxuICAgICAgICAgICAgW3Jvd0RhdGFdPVwiZ2V0UHJtLmRhdGE/LltncmlkLnN1YkRhdGFLZXkhXXx8IFtdXCJcclxuICAgICAgICAgICAgW3Vwc2VydF09XCJ1cHNlcnRQcm1cIlxyXG4gICAgICAgICAgICAoZGVsZXRlRW1pdCk9XCJkZWxSb3dzKCRldmVudClcIlxyXG4gICAgICAgICAgICBbYWRkVHlwZV09XCJncmlkLnN1YlRhYmxlU291cmNlXCJcclxuICAgICAgICAgICAgKGFkZEVtaXQpPVwiZGF0YVNvdXJjZVNob3coKVwiXHJcbiAgICAgICAgICAgIFtncmlkT3B0aW9uc109XCJncmlkLmdyaWRPcHRpb25zXCJcclxuICAgICAgICAgICAgW2F1dGhMZXZlbF09XCJhdXRoTGV2ZWwoKVwiXHJcbiAgICAgICAgICAgIFtzZWxlY3REYXRhXT1cImdyaWQuc2VsZWN0RGF0YVwiPlxyXG4gICAgICAgICAgPC9jdXN0b20tZ3JpZD5cclxuICAgICAgICB9ICAgICAgIFxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1kOmJhc2lzLTEvMyBiYXNpcy1mdWxsIGgtZnVsbCBvdmVyZmxvdy15LWF1dG9cIj5cclxuICAgICAgPGN1c3RvbS1sb2cgW2xvZ3NdPVwiZ2V0UHJtLmRhdGE/LmxvZz8/W11cIj48L2N1c3RvbS1sb2c+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxyb3ctc2VsZWN0b3JcclxuXHRbKHZpc2libGUpXT1cInZpc2libGVcIlxyXG5cdFtzZWFyY2hQcm1dPVwiZGlhbG9nU2VhcmNoUHJtXCJcclxuXHRbZ3JpZE9wdGlvbnNdPVwic2VsZWN0T3B0aW9uc1wiXHJcblx0KG9uT2spPVwib25PaygkZXZlbnQpXCI+XHJcbjwvcm93LXNlbGVjdG9yPiJdfQ==
@@ -28,6 +28,7 @@ export class StepsComponent {
28
28
  this.widthList = [];
29
29
  this.START_BUTTON_WIDTH = 32;
30
30
  this.END_BUTTON_WIDTH = 47;
31
+ this.STEP_ITEM_MARGIN = 2;
31
32
  this.startIndex = 0;
32
33
  this.endIndex = 0;
33
34
  this.startSteps = [];
@@ -52,7 +53,7 @@ export class StepsComponent {
52
53
  if (children[i].classList.contains('end-item')) {
53
54
  continue;
54
55
  }
55
- this.widthList.push(children[i].offsetWidth || 0);
56
+ this.widthList.push((children[i].offsetWidth || 0) + this.STEP_ITEM_MARGIN);
56
57
  }
57
58
  }
58
59
  calcMaxWidth() {
@@ -168,7 +169,7 @@ export class StepsComponent {
168
169
  setTimeout(() => {
169
170
  this.alternateWidthList();
170
171
  this.handleSteps();
171
- });
172
+ }, 300);
172
173
  }
173
174
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepsComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
174
175
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: StepsComponent, isStandalone: true, selector: "custom-steps", inputs: { steps: { classPropertyName: "steps", publicName: "steps", isSignal: true, isRequired: false, transformFunction: null }, current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true }, { propertyName: "endBtn", first: true, predicate: ["endBtn"], descendants: true }], ngImport: i0, template: "<div\r\n\t#container\r\n\tclass=\"flex my-1 w-full justify-end\">\r\n\t@for (st of displaySteps(); track st; let i = $index) {\r\n\t\t@if (st.value === 'start') {\r\n\t\t\t<div\r\n\t\t\t\t#startItem\r\n\t\t\t\t[class]=\"getClass(i, ['start-item'])\"\r\n\t\t\t\t(click)=\"showStartSteps($event, startOp)\">\r\n\t\t\t\t<span>...</span>\r\n\t\t\t</div>\r\n\t\t\t<p-popover\r\n\t\t\t\t#startOp\r\n\t\t\t\t[styleClass]=\"'pop-steps start-steps'\"\r\n\t\t\t\t[appendTo]=\"startItem\">\r\n\t\t\t\t<p-listbox\r\n\t\t\t\t\t[options]=\"startSteps\"\r\n\t\t\t\t\t(onChange)=\"onStartStepsChange($event)\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\tclass=\"w-full md:w-56\" />\r\n\t\t\t</p-popover>\r\n\t\t} @else if (st.value === 'end') {\r\n\t\t\t<div\r\n\t\t\t\t#endItem\r\n\t\t\t\t[class]=\"getClass(i, ['end-item'])\"\r\n\t\t\t\t(click)=\"showEndSteps($event, endOp)\">\r\n\t\t\t\t<span>...</span>\r\n\t\t\t</div>\r\n\t\t\t<p-popover\r\n\t\t\t\t#endOp\r\n\t\t\t\t[styleClass]=\"'pop-steps end-steps'\"\r\n\t\t\t\t[appendTo]=\"endItem\">\r\n\t\t\t\t<p-listbox\r\n\t\t\t\t\t[options]=\"endSteps\"\r\n\t\t\t\t\t(onChange)=\"onEndStepsChange($event)\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\tclass=\"w-full md:w-56\" />\r\n\t\t\t</p-popover>\r\n\t\t} @else {\r\n\t\t\t<div\r\n\t\t\t\t[class]=\"getClass(i, [])\"\r\n\t\t\t\t(click)=\"changeStatus(st)\">\r\n\t\t\t\t<span>{{ st.i18nKey ? i18n.fanyi(st.i18nKey) : st.label }}</span>\r\n\t\t\t</div>\r\n\t\t}\r\n\t}\r\n</div>\r\n", styles: ["::ng-deep .pop-steps.p-popover.p-popover-flipped:before{display:none}::ng-deep .pop-steps.p-popover.p-popover-flipped:after{display:none}::ng-deep .pop-steps.p-popover:before{display:none}::ng-deep .pop-steps.p-popover:after{display:none}::ng-deep .pop-steps.p-popover-flipped{margin-top:-5px}::ng-deep .pop-steps .p-popover-content{padding:0}::ng-deep .end-steps.p-popover{margin-top:2.5px;z-index:999;position:absolute!important;left:auto!important;right:0!important;top:100%!important;min-width:125px}::ng-deep .start-steps.p-popover{margin-top:2.5px;z-index:999;position:absolute!important;left:0!important;right:auto!important;top:100%!important;min-width:125px}.step-item{position:relative;height:32px;padding:0 5px;background-color:#e7e9ed}.step-item span{color:#334155c2;white-space:nowrap}.step-item.step-first{padding-left:15px}.step-item.step-last{padding-right:15px}.step-item:not(.step-first){border-left:15px solid transparent;margin-left:2px}.step-item:not(.step-first):before{content:\"\";position:absolute;top:0;left:-15px;width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:12px solid white}.step-item:not(.step-last):after{content:\"\";position:absolute;top:0;right:-12px;width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:12px solid #e7e9ed;z-index:2}.step-item.step-active{background-color:var(--p-primary-200)}.step-item.step-active span{color:#334155}.step-item.step-active:after{border-left:12px solid var(--p-primary-200)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ListboxModule }, { kind: "component", type: i1.Listbox, selector: "p-listbox, p-listBox, p-list-box", inputs: ["id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "ariaLabel", "selectOnFocus", "searchLocale", "focusOnHover", "filterMessage", "filterFields", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "scrollHeight", "tabindex", "multiple", "style", "styleClass", "listStyle", "listStyleClass", "readonly", "disabled", "checkbox", "filter", "filterBy", "filterMatchMode", "filterLocale", "metaKeySelection", "dataKey", "showToggleAll", "optionLabel", "optionValue", "optionGroupChildren", "optionGroupLabel", "optionDisabled", "ariaFilterLabel", "filterPlaceHolder", "emptyFilterMessage", "emptyMessage", "group", "options", "filterValue", "selectAll", "striped", "highlightOnSelect", "checkmark"], outputs: ["onChange", "onClick", "onDblClick", "onFilter", "onFocus", "onBlur", "onSelectAllChange", "onLazyLoad"] }, { kind: "component", type: Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }] }); }
@@ -186,4 +187,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
186
187
  type: HostListener,
187
188
  args: ['window:resize', ['$event']]
188
189
  }] } });
189
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9zdGVwcy9zdGVwcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3N0ZXBzL3N0ZXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFzQixZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQWMxQyxNQUFNLE9BQU8sY0FBYztJQTJCMUIsUUFBUTtRQUNQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUE5QnZDLFVBQUssR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDMUIsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVCLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNoQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNoRCxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUMzQyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMzRSxDQUFDLENBQUMsQ0FBQztRQUNILGtCQUFhLEdBQUcsTUFBTSxDQUErQixFQUFFLENBQUMsQ0FBQztRQUN6RCxZQUFPLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzNCLFNBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0IsV0FBTSxHQUFHLE1BQU0sRUFBVSxDQUFDO1FBQzFCLGNBQVMsR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU5QixjQUFTLEdBQWEsRUFBRSxDQUFDO1FBQ3pCLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUN4QixxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFFdEIsZUFBVSxHQUFHLENBQUMsQ0FBQztRQUNmLGFBQVEsR0FBRyxDQUFDLENBQUM7UUFDYixlQUFVLEdBQVcsRUFBRSxDQUFDO1FBQ3hCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsYUFBUSxHQUFHLENBQUMsQ0FBQztJQVM2QixDQUFDO0lBRTNDLGVBQWU7UUFDZCxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsYUFBYTtRQUNaLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQztRQUNoRyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQzFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO2dCQUNsRCxTQUFTO1lBQ1YsQ0FBQztZQUNELElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztnQkFDbEQsU0FBUztZQUNWLENBQUM7WUFDRCxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7Z0JBQ2hELFNBQVM7WUFDVixDQUFDO1lBQ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNuRCxDQUFDO0lBQ0YsQ0FBQztJQUVELFlBQVk7UUFDWCxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDL0YsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFVLEVBQUUsT0FBWTtRQUN0QyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDO1lBQUUsT0FBTztRQUNqQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBVSxFQUFFLEtBQVU7UUFDbEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQztZQUFFLE9BQU87UUFDakMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUSxDQUFDLENBQVMsRUFBRSxPQUFpQjtRQUNwQyxJQUFJLE1BQU0sR0FBRyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDckUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDMUIsTUFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ25DLENBQUM7YUFBTSxDQUFDO1lBQ1AsTUFBTSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFDRCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ1osTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzQixDQUFDO2FBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNqRCxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLENBQUM7UUFDRCxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBUztRQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQVU7UUFDNUIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQVU7UUFDMUIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtRQUNqQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLEtBQUssR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBRXRCLElBQUksU0FBUyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDMUIsSUFBSSxVQUFVLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUMzQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUM7UUFDbkIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV2QyxPQUFPLFNBQVMsSUFBSSxDQUFDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0QsSUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUM1RCxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDekMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztvQkFDdkMsTUFBTTtnQkFDUCxDQUFDO2dCQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO2dCQUMzQixVQUFVLEVBQUUsQ0FBQztnQkFDYixJQUFJLEdBQUcsTUFBTSxDQUFDO1lBQ2YsQ0FBQztpQkFBTSxJQUFJLElBQUksS0FBSyxNQUFNLElBQUksU0FBUyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUM5QyxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztvQkFDdkMsTUFBTTtnQkFDUCxDQUFDO2dCQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO2dCQUM1QixTQUFTLEVBQUUsQ0FBQztnQkFDWixJQUFJLEdBQUcsT0FBTyxDQUFDO1lBQ2hCLENBQUM7aUJBQU0sQ0FBQztnQkFDUCxJQUFJLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUM5RCxDQUFDO1FBQ0YsQ0FBQztJQUNGLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFrQjtRQUNsQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBQ2xFLFVBQVUsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDdEYsT0FBTyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVztRQUNWLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixNQUFNLGFBQWEsR0FBVSxFQUFFLENBQUM7UUFDaEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3pCLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFDRCxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3ZCLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BDLENBQUM7UUFDRixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25ELENBQUM7YUFBTSxDQUFDO1lBQ1AsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEQsQ0FBQzthQUFNLENBQUM7WUFDUCxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsWUFBWTtRQUNYLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDOytHQWpMVyxjQUFjO21HQUFkLGNBQWMseXVCQ2xCM0IsdThDQStDQSxta0REakNXLFdBQVcsOEJBQUUsYUFBYSxxK0JBQUUsT0FBTzs7NEZBSWpDLGNBQWM7a0JBUDFCLFNBQVM7K0JBQ0MsY0FBYyxjQUNaLElBQUksV0FDUCxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDOzhFQUtILFlBQVk7c0JBQXRELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDRCxNQUFNO3NCQUE3QyxTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBeUJ0QyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgZWZmZWN0LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIGluamVjdCwgaW5wdXQsIG91dHB1dCwgUmVuZGVyZXIyLCBzaWduYWwsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2UvaTE4bi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IExpc3Rib3hNb2R1bGUgfSBmcm9tICdwcmltZW5nL2xpc3Rib3gnO1xyXG5pbXBvcnQgeyBQb3BvdmVyIH0gZnJvbSAncHJpbWVuZy9wb3BvdmVyJztcclxuZXhwb3J0IGludGVyZmFjZSBTdGVwIHtcclxuXHRsYWJlbDogc3RyaW5nO1xyXG5cdGkxOG5LZXk/OiBzdHJpbmc7XHJcblx0dmFsdWU6IG51bWJlciB8ICdzdGFydCcgfCAnZW5kJztcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdjdXN0b20tc3RlcHMnLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW0Zvcm1zTW9kdWxlLCBMaXN0Ym94TW9kdWxlLCBQb3BvdmVyXSxcclxuXHR0ZW1wbGF0ZVVybDogJy4vc3RlcHMuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9zdGVwcy5jb21wb25lbnQuc2NzcycsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdGVwc0NvbXBvbmVudCB7XHJcblx0QFZpZXdDaGlsZCgnY29udGFpbmVyJywgeyBzdGF0aWM6IGZhbHNlIH0pIGNvbnRhaW5lclJlZiE6IEVsZW1lbnRSZWY7XHJcblx0QFZpZXdDaGlsZCgnZW5kQnRuJywgeyBzdGF0aWM6IGZhbHNlIH0pIGVuZEJ0biE6IEVsZW1lbnRSZWY7XHJcblx0c3RlcHMgPSBpbnB1dDxTdGVwW10+KFtdKTtcclxuXHRkaXNwbGF5U3RlcHMgPSBjb21wdXRlZCgoKSA9PiB7XHJcblx0XHRjb25zdCBzdGVwcyA9IFsuLi50aGlzLnN0ZXBzKCldO1xyXG5cdFx0c3RlcHMudW5zaGlmdCh7IHZhbHVlOiAnc3RhcnQnLCBsYWJlbDogJy4uLicgfSk7XHJcblx0XHRzdGVwcy5wdXNoKHsgdmFsdWU6ICdlbmQnLCBsYWJlbDogJy4uLicgfSk7XHJcblx0XHRyZXR1cm4gc3RlcHMuZmlsdGVyKChzdGVwKSA9PiAhdGhpcy5leGNsdWRlVmFsdWVzKCkuaW5jbHVkZXMoc3RlcC52YWx1ZSkpO1xyXG5cdH0pO1xyXG5cdGV4Y2x1ZGVWYWx1ZXMgPSBzaWduYWw8KG51bWJlciB8ICdzdGFydCcgfCAnZW5kJylbXT4oW10pO1xyXG5cdGN1cnJlbnQgPSBpbnB1dDxudW1iZXI+KDIpO1xyXG5cdGkxOG4gPSBpbmplY3QoSTE4blNlcnZpY2UpO1xyXG5cdGNoYW5nZSA9IG91dHB1dDxudW1iZXI+KCk7XHJcblx0YXV0aExldmVsID0gaW5wdXQ8bnVtYmVyPigtMSk7XHJcblxyXG5cdHdpZHRoTGlzdDogbnVtYmVyW10gPSBbXTtcclxuXHRTVEFSVF9CVVRUT05fV0lEVEggPSAzMjtcclxuXHRFTkRfQlVUVE9OX1dJRFRIID0gNDc7XHJcblxyXG5cdHN0YXJ0SW5kZXggPSAwO1xyXG5cdGVuZEluZGV4ID0gMDtcclxuXHRzdGFydFN0ZXBzOiBTdGVwW10gPSBbXTtcclxuXHRlbmRTdGVwczogU3RlcFtdID0gW107XHJcblx0bWF4V2lkdGggPSAwO1xyXG5cclxuXHRASG9zdExpc3RlbmVyKCd3aW5kb3c6cmVzaXplJywgWyckZXZlbnQnXSlcclxuXHRvblJlc2l6ZSgpIHtcclxuXHRcdHRoaXMuY2FsY01heFdpZHRoKCk7XHJcblx0XHR0aGlzLmFsdGVybmF0ZVdpZHRoTGlzdCgpO1xyXG5cdFx0dGhpcy5oYW5kbGVTdGVwcygpO1xyXG5cdH1cclxuXHJcblx0Y29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyKSB7fVxyXG5cclxuXHRuZ0FmdGVyVmlld0luaXQoKSB7XHJcblx0XHR0aGlzLmNhbGNNYXhXaWR0aCgpO1xyXG5cdFx0dGhpcy5pbml0V2lkdGhMaXN0KCk7XHJcblx0XHR0aGlzLmFsdGVybmF0ZVdpZHRoTGlzdCgpO1xyXG5cdFx0dGhpcy5oYW5kbGVTdGVwcygpO1xyXG5cdH1cclxuXHJcblx0aW5pdFdpZHRoTGlzdCgpIHtcclxuXHRcdGNvbnN0IGNoaWxkcmVuID0gdGhpcy5yZW5kZXJlci5wYXJlbnROb2RlKHRoaXMuY29udGFpbmVyUmVmLm5hdGl2ZUVsZW1lbnQpLmNoaWxkcmVuWzBdLmNoaWxkcmVuO1xyXG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xyXG5cdFx0XHRpZiAoIWNoaWxkcmVuW2ldLmNsYXNzTGlzdC5jb250YWlucygnc3RlcC1pdGVtJykpIHtcclxuXHRcdFx0XHRjb250aW51ZTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpZiAoY2hpbGRyZW5baV0uY2xhc3NMaXN0LmNvbnRhaW5zKCdzdGFydC1pdGVtJykpIHtcclxuXHRcdFx0XHRjb250aW51ZTtcclxuXHRcdFx0fVxyXG5cdFx0XHRpZiAoY2hpbGRyZW5baV0uY2xhc3NMaXN0LmNvbnRhaW5zKCdlbmQtaXRlbScpKSB7XHJcblx0XHRcdFx0Y29udGludWU7XHJcblx0XHRcdH1cclxuXHRcdFx0dGhpcy53aWR0aExpc3QucHVzaChjaGlsZHJlbltpXS5vZmZzZXRXaWR0aCB8fCAwKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGNhbGNNYXhXaWR0aCgpIHtcclxuXHRcdHRoaXMubWF4V2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDc2OCA/IHdpbmRvdy5pbm5lcldpZHRoICogMC45NiA6IHdpbmRvdy5pbm5lcldpZHRoICogMC40MjtcclxuXHR9XHJcblxyXG5cdHNob3dTdGFydFN0ZXBzKGV2ZW50OiBhbnksIHN0YXJ0T3A6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuYXV0aExldmVsKCkgPCA0KSByZXR1cm47XHJcblx0XHRzdGFydE9wLnRvZ2dsZShldmVudCk7XHJcblx0fVxyXG5cclxuXHRzaG93RW5kU3RlcHMoZXZlbnQ6IGFueSwgZW5kT3A6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuYXV0aExldmVsKCkgPCA0KSByZXR1cm47XHJcblx0XHRlbmRPcC50b2dnbGUoZXZlbnQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q2xhc3MoaTogbnVtYmVyLCBjbGFzc2VzOiBzdHJpbmdbXSkge1xyXG5cdFx0bGV0IHJlc3VsdCA9IFsnc3RlcC1pdGVtJywgJ2ZsZXgnLCAnaXRlbXMtY2VudGVyJywgJ2p1c3RpZnktY2VudGVyJ107XHJcblx0XHRyZXN1bHQgPSByZXN1bHQuY29uY2F0KGNsYXNzZXMpO1xyXG5cdFx0aWYgKHRoaXMuYXV0aExldmVsKCkgPCA0KSB7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdjdXJzb3Itbm90LWFsbG93ZWQnKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdjdXJzb3ItcG9pbnRlciBhbGxvdy1ob3ZlcicpO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5kaXNwbGF5U3RlcHMoKSFbaV07XHJcblx0XHRpZiAoaSA9PSAwKSB7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdzdGVwLWZpcnN0Jyk7XHJcblx0XHR9IGVsc2UgaWYgKGkgKyAxID09IHRoaXMuZGlzcGxheVN0ZXBzKCk/Lmxlbmd0aCkge1xyXG5cdFx0XHRyZXN1bHQucHVzaCgnc3RlcC1sYXN0Jyk7XHJcblx0XHR9XHJcblx0XHRpZiAodmFsdWUgPT0gdGhpcy5jdXJyZW50KCkpIHtcclxuXHRcdFx0cmVzdWx0LnB1c2goJ3N0ZXAtYWN0aXZlJyk7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdtZDpmbGV4LW5vbmUgZmxleC0xJyk7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gcmVzdWx0LmpvaW4oJyAnKTtcclxuXHR9XHJcblxyXG5cdGNoYW5nZVN0YXR1cyhzdGVwOiBhbnkpIHtcclxuXHRcdHRoaXMuY2hhbmdlLmVtaXQoc3RlcC52YWx1ZSk7XHJcblx0fVxyXG5cclxuXHRvblN0YXJ0U3RlcHNDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG5cdFx0Y29uc3Qgc3RlcCA9IGV2ZW50LnZhbHVlO1xyXG5cdFx0dGhpcy5jaGFuZ2UuZW1pdChzdGVwLnZhbHVlKTtcclxuXHR9XHJcblxyXG5cdG9uRW5kU3RlcHNDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG5cdFx0Y29uc3Qgc3RlcCA9IGV2ZW50LnZhbHVlO1xyXG5cdFx0dGhpcy5jaGFuZ2UuZW1pdChzdGVwLnZhbHVlKTtcclxuXHR9XHJcblxyXG5cdGFsdGVybmF0ZVdpZHRoTGlzdCgpIHtcclxuXHRcdGxldCBpbmRleCA9IHRoaXMuc3RlcHMoKS5maW5kSW5kZXgoKHMpID0+IHMudmFsdWUgPT09IHRoaXMuY3VycmVudCgpKTtcclxuXHRcdGluZGV4ID0gaW5kZXggPT09IC0xID8gMCA6IGluZGV4O1xyXG5cdFx0dGhpcy5zdGFydEluZGV4ID0gaW5kZXg7XHJcblx0XHR0aGlzLmVuZEluZGV4ID0gaW5kZXg7XHJcblxyXG5cdFx0bGV0IGxlZnRJbmRleCA9IGluZGV4IC0gMTtcclxuXHRcdGxldCByaWdodEluZGV4ID0gaW5kZXggKyAxO1xyXG5cdFx0bGV0IHR1cm4gPSAncmlnaHQnO1xyXG5cdFx0bGV0IHRvdGFsV2lkdGggPSB0aGlzLndpZHRoTGlzdFtpbmRleF07XHJcblxyXG5cdFx0d2hpbGUgKGxlZnRJbmRleCA+PSAwIHx8IHJpZ2h0SW5kZXggPCB0aGlzLndpZHRoTGlzdC5sZW5ndGgpIHtcclxuXHRcdFx0aWYgKHR1cm4gPT09ICdyaWdodCcgJiYgcmlnaHRJbmRleCA8IHRoaXMud2lkdGhMaXN0Lmxlbmd0aCkge1xyXG5cdFx0XHRcdHRvdGFsV2lkdGggKz0gdGhpcy53aWR0aExpc3RbcmlnaHRJbmRleF07XHJcblx0XHRcdFx0aWYgKHRoaXMuaXNFeGNlZWRNYXhXaWR0aCh0b3RhbFdpZHRoKSkge1xyXG5cdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMuZW5kSW5kZXggPSByaWdodEluZGV4O1xyXG5cdFx0XHRcdHJpZ2h0SW5kZXgrKztcclxuXHRcdFx0XHR0dXJuID0gJ2xlZnQnO1xyXG5cdFx0XHR9IGVsc2UgaWYgKHR1cm4gPT09ICdsZWZ0JyAmJiBsZWZ0SW5kZXggPj0gMCkge1xyXG5cdFx0XHRcdHRvdGFsV2lkdGggKz0gdGhpcy53aWR0aExpc3RbbGVmdEluZGV4XTtcclxuXHRcdFx0XHRpZiAodGhpcy5pc0V4Y2VlZE1heFdpZHRoKHRvdGFsV2lkdGgpKSB7XHJcblx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dGhpcy5zdGFydEluZGV4ID0gbGVmdEluZGV4O1xyXG5cdFx0XHRcdGxlZnRJbmRleC0tO1xyXG5cdFx0XHRcdHR1cm4gPSAncmlnaHQnO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHR1cm4gPSByaWdodEluZGV4IDwgdGhpcy53aWR0aExpc3QubGVuZ3RoID8gJ3JpZ2h0JyA6ICdsZWZ0JztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aXNFeGNlZWRNYXhXaWR0aCh0b3RhbFdpZHRoOiBudW1iZXIpIHtcclxuXHRcdHRvdGFsV2lkdGggKz0gdGhpcy5zdGFydEluZGV4ID09PSAwID8gMCA6IHRoaXMuU1RBUlRfQlVUVE9OX1dJRFRIO1xyXG5cdFx0dG90YWxXaWR0aCArPSB0aGlzLmVuZEluZGV4ID09PSB0aGlzLndpZHRoTGlzdC5sZW5ndGggLSAxID8gMCA6IHRoaXMuRU5EX0JVVFRPTl9XSURUSDtcclxuXHRcdHJldHVybiB0b3RhbFdpZHRoID49IHRoaXMubWF4V2lkdGg7XHJcblx0fVxyXG5cclxuXHRoYW5kbGVTdGVwcygpIHtcclxuXHRcdGNvbnN0IHN0ZXBzID0gdGhpcy5zdGVwcygpO1xyXG5cdFx0Y29uc3QgZXhjbHVkZVZhbHVlczogYW55W10gPSBbXTtcclxuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgc3RlcHMubGVuZ3RoOyBpKyspIHtcclxuXHRcdFx0aWYgKGkgPCB0aGlzLnN0YXJ0SW5kZXgpIHtcclxuXHRcdFx0XHRleGNsdWRlVmFsdWVzLnB1c2goc3RlcHNbaV0udmFsdWUpO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlmIChpID4gdGhpcy5lbmRJbmRleCkge1xyXG5cdFx0XHRcdGV4Y2x1ZGVWYWx1ZXMucHVzaChzdGVwc1tpXS52YWx1ZSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRpZiAodGhpcy5zdGFydEluZGV4ID4gMCkge1xyXG5cdFx0XHR0aGlzLnN0YXJ0U3RlcHMgPSBzdGVwcy5zbGljZSgwLCB0aGlzLnN0YXJ0SW5kZXgpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0ZXhjbHVkZVZhbHVlcy5wdXNoKCdzdGFydCcpO1xyXG5cdFx0fVxyXG5cdFx0aWYgKHRoaXMuZW5kSW5kZXggPCBzdGVwcy5sZW5ndGggLSAxKSB7XHJcblx0XHRcdHRoaXMuZW5kU3RlcHMgPSBzdGVwcy5zbGljZSh0aGlzLmVuZEluZGV4ICsgMSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRleGNsdWRlVmFsdWVzLnB1c2goJ2VuZCcpO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5leGNsdWRlVmFsdWVzLnNldChleGNsdWRlVmFsdWVzKTtcclxuXHR9XHJcblxyXG5cdHJlZnJlc2hTdGVwcygpIHtcclxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLmFsdGVybmF0ZVdpZHRoTGlzdCgpO1xyXG5cdFx0XHR0aGlzLmhhbmRsZVN0ZXBzKCk7XHJcblx0XHR9KTtcclxuXHR9XHJcbn1cclxuIiwiPGRpdlxyXG5cdCNjb250YWluZXJcclxuXHRjbGFzcz1cImZsZXggbXktMSB3LWZ1bGwganVzdGlmeS1lbmRcIj5cclxuXHRAZm9yIChzdCBvZiBkaXNwbGF5U3RlcHMoKTsgdHJhY2sgc3Q7IGxldCBpID0gJGluZGV4KSB7XHJcblx0XHRAaWYgKHN0LnZhbHVlID09PSAnc3RhcnQnKSB7XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHQjc3RhcnRJdGVtXHJcblx0XHRcdFx0W2NsYXNzXT1cImdldENsYXNzKGksIFsnc3RhcnQtaXRlbSddKVwiXHJcblx0XHRcdFx0KGNsaWNrKT1cInNob3dTdGFydFN0ZXBzKCRldmVudCwgc3RhcnRPcClcIj5cclxuXHRcdFx0XHQ8c3Bhbj4uLi48L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8cC1wb3BvdmVyXHJcblx0XHRcdFx0I3N0YXJ0T3BcclxuXHRcdFx0XHRbc3R5bGVDbGFzc109XCIncG9wLXN0ZXBzIHN0YXJ0LXN0ZXBzJ1wiXHJcblx0XHRcdFx0W2FwcGVuZFRvXT1cInN0YXJ0SXRlbVwiPlxyXG5cdFx0XHRcdDxwLWxpc3Rib3hcclxuXHRcdFx0XHRcdFtvcHRpb25zXT1cInN0YXJ0U3RlcHNcIlxyXG5cdFx0XHRcdFx0KG9uQ2hhbmdlKT1cIm9uU3RhcnRTdGVwc0NoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdG9wdGlvbkxhYmVsPVwibGFiZWxcIlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJ3LWZ1bGwgbWQ6dy01NlwiIC8+XHJcblx0XHRcdDwvcC1wb3BvdmVyPlxyXG5cdFx0fSBAZWxzZSBpZiAoc3QudmFsdWUgPT09ICdlbmQnKSB7XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHQjZW5kSXRlbVxyXG5cdFx0XHRcdFtjbGFzc109XCJnZXRDbGFzcyhpLCBbJ2VuZC1pdGVtJ10pXCJcclxuXHRcdFx0XHQoY2xpY2spPVwic2hvd0VuZFN0ZXBzKCRldmVudCwgZW5kT3ApXCI+XHJcblx0XHRcdFx0PHNwYW4+Li4uPC9zcGFuPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PHAtcG9wb3ZlclxyXG5cdFx0XHRcdCNlbmRPcFxyXG5cdFx0XHRcdFtzdHlsZUNsYXNzXT1cIidwb3Atc3RlcHMgZW5kLXN0ZXBzJ1wiXHJcblx0XHRcdFx0W2FwcGVuZFRvXT1cImVuZEl0ZW1cIj5cclxuXHRcdFx0XHQ8cC1saXN0Ym94XHJcblx0XHRcdFx0XHRbb3B0aW9uc109XCJlbmRTdGVwc1wiXHJcblx0XHRcdFx0XHQob25DaGFuZ2UpPVwib25FbmRTdGVwc0NoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdG9wdGlvbkxhYmVsPVwibGFiZWxcIlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJ3LWZ1bGwgbWQ6dy01NlwiIC8+XHJcblx0XHRcdDwvcC1wb3BvdmVyPlxyXG5cdFx0fSBAZWxzZSB7XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHRbY2xhc3NdPVwiZ2V0Q2xhc3MoaSwgW10pXCJcclxuXHRcdFx0XHQoY2xpY2spPVwiY2hhbmdlU3RhdHVzKHN0KVwiPlxyXG5cdFx0XHRcdDxzcGFuPnt7IHN0LmkxOG5LZXkgPyBpMThuLmZhbnlpKHN0LmkxOG5LZXkpIDogc3QubGFiZWwgfX08L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0fVxyXG5cdH1cclxuPC9kaXY+XHJcbiJdfQ==
190
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9zdGVwcy9zdGVwcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3N0ZXBzL3N0ZXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFzQixZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQWMxQyxNQUFNLE9BQU8sY0FBYztJQTRCMUIsUUFBUTtRQUNQLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUEvQnZDLFVBQUssR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDMUIsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVCLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNoQyxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUNoRCxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUMzQyxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMzRSxDQUFDLENBQUMsQ0FBQztRQUNILGtCQUFhLEdBQUcsTUFBTSxDQUErQixFQUFFLENBQUMsQ0FBQztRQUN6RCxZQUFPLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQzNCLFNBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDM0IsV0FBTSxHQUFHLE1BQU0sRUFBVSxDQUFDO1FBQzFCLGNBQVMsR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUU5QixjQUFTLEdBQWEsRUFBRSxDQUFDO1FBQ3pCLHVCQUFrQixHQUFHLEVBQUUsQ0FBQztRQUN4QixxQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDdEIscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBRXJCLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDZixhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ2IsZUFBVSxHQUFXLEVBQUUsQ0FBQztRQUN4QixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGFBQVEsR0FBRyxDQUFDLENBQUM7SUFTNkIsQ0FBQztJQUUzQyxlQUFlO1FBQ2QsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGFBQWE7UUFDWixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7UUFDaEcsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztnQkFDbEQsU0FBUztZQUNWLENBQUM7WUFDRCxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7Z0JBQ2xELFNBQVM7WUFDVixDQUFDO1lBQ0QsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUNoRCxTQUFTO1lBQ1YsQ0FBQztZQUNELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM3RSxDQUFDO0lBQ0YsQ0FBQztJQUVELFlBQVk7UUFDWCxJQUFJLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDL0YsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFVLEVBQUUsT0FBWTtRQUN0QyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDO1lBQUUsT0FBTztRQUNqQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBVSxFQUFFLEtBQVU7UUFDbEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQztZQUFFLE9BQU87UUFDakMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsUUFBUSxDQUFDLENBQVMsRUFBRSxPQUFpQjtRQUNwQyxJQUFJLE1BQU0sR0FBRyxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDckUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDMUIsTUFBTSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ25DLENBQUM7YUFBTSxDQUFDO1lBQ1AsTUFBTSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFDRCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ1osTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUMzQixDQUFDO2FBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNqRCxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLENBQUM7UUFDRCxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQztZQUM3QixNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzNCLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBQ0QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBUztRQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQVU7UUFDNUIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQVU7UUFDMUIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGtCQUFrQjtRQUNqQixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLEtBQUssR0FBRyxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBRXRCLElBQUksU0FBUyxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDMUIsSUFBSSxVQUFVLEdBQUcsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUMzQixJQUFJLElBQUksR0FBRyxPQUFPLENBQUM7UUFDbkIsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV2QyxPQUFPLFNBQVMsSUFBSSxDQUFDLElBQUksVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0QsSUFBSSxJQUFJLEtBQUssT0FBTyxJQUFJLFVBQVUsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUM1RCxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDekMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztvQkFDdkMsTUFBTTtnQkFDUCxDQUFDO2dCQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO2dCQUMzQixVQUFVLEVBQUUsQ0FBQztnQkFDYixJQUFJLEdBQUcsTUFBTSxDQUFDO1lBQ2YsQ0FBQztpQkFBTSxJQUFJLElBQUksS0FBSyxNQUFNLElBQUksU0FBUyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUM5QyxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDeEMsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztvQkFDdkMsTUFBTTtnQkFDUCxDQUFDO2dCQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO2dCQUM1QixTQUFTLEVBQUUsQ0FBQztnQkFDWixJQUFJLEdBQUcsT0FBTyxDQUFDO1lBQ2hCLENBQUM7aUJBQU0sQ0FBQztnQkFDUCxJQUFJLEdBQUcsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztZQUM5RCxDQUFDO1FBQ0YsQ0FBQztJQUNGLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxVQUFrQjtRQUNsQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBQ2xFLFVBQVUsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7UUFDdEYsT0FBTyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRUQsV0FBVztRQUNWLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMzQixNQUFNLGFBQWEsR0FBVSxFQUFFLENBQUM7UUFDaEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3pCLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BDLENBQUM7WUFDRCxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ3ZCLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3BDLENBQUM7UUFDRixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ25ELENBQUM7YUFBTSxDQUFDO1lBQ1AsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDaEQsQ0FBQzthQUFNLENBQUM7WUFDUCxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsWUFBWTtRQUNYLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsQ0FBQyxFQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ1IsQ0FBQzsrR0FsTFcsY0FBYzttR0FBZCxjQUFjLHl1QkNsQjNCLHU4Q0ErQ0EsbWtERGpDVyxXQUFXLDhCQUFFLGFBQWEscStCQUFFLE9BQU87OzRGQUlqQyxjQUFjO2tCQVAxQixTQUFTOytCQUNDLGNBQWMsY0FDWixJQUFJLFdBQ1AsQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQzs4RUFLSCxZQUFZO3NCQUF0RCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ0QsTUFBTTtzQkFBN0MsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFO2dCQTBCdEMsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBpbmplY3QsIGlucHV0LCBvdXRwdXQsIFJlbmRlcmVyMiwgc2lnbmFsLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL2kxOG4uc2VydmljZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBMaXN0Ym94TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9saXN0Ym94JztcclxuaW1wb3J0IHsgUG9wb3ZlciB9IGZyb20gJ3ByaW1lbmcvcG9wb3Zlcic7XHJcbmV4cG9ydCBpbnRlcmZhY2UgU3RlcCB7XHJcblx0bGFiZWw6IHN0cmluZztcclxuXHRpMThuS2V5Pzogc3RyaW5nO1xyXG5cdHZhbHVlOiBudW1iZXIgfCAnc3RhcnQnIHwgJ2VuZCc7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnY3VzdG9tLXN0ZXBzJyxcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdGltcG9ydHM6IFtGb3Jtc01vZHVsZSwgTGlzdGJveE1vZHVsZSwgUG9wb3Zlcl0sXHJcblx0dGVtcGxhdGVVcmw6ICcuL3N0ZXBzLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybDogJy4vc3RlcHMuY29tcG9uZW50LnNjc3MnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3RlcHNDb21wb25lbnQge1xyXG5cdEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250YWluZXJSZWYhOiBFbGVtZW50UmVmO1xyXG5cdEBWaWV3Q2hpbGQoJ2VuZEJ0bicsIHsgc3RhdGljOiBmYWxzZSB9KSBlbmRCdG4hOiBFbGVtZW50UmVmO1xyXG5cdHN0ZXBzID0gaW5wdXQ8U3RlcFtdPihbXSk7XHJcblx0ZGlzcGxheVN0ZXBzID0gY29tcHV0ZWQoKCkgPT4ge1xyXG5cdFx0Y29uc3Qgc3RlcHMgPSBbLi4udGhpcy5zdGVwcygpXTtcclxuXHRcdHN0ZXBzLnVuc2hpZnQoeyB2YWx1ZTogJ3N0YXJ0JywgbGFiZWw6ICcuLi4nIH0pO1xyXG5cdFx0c3RlcHMucHVzaCh7IHZhbHVlOiAnZW5kJywgbGFiZWw6ICcuLi4nIH0pO1xyXG5cdFx0cmV0dXJuIHN0ZXBzLmZpbHRlcigoc3RlcCkgPT4gIXRoaXMuZXhjbHVkZVZhbHVlcygpLmluY2x1ZGVzKHN0ZXAudmFsdWUpKTtcclxuXHR9KTtcclxuXHRleGNsdWRlVmFsdWVzID0gc2lnbmFsPChudW1iZXIgfCAnc3RhcnQnIHwgJ2VuZCcpW10+KFtdKTtcclxuXHRjdXJyZW50ID0gaW5wdXQ8bnVtYmVyPigyKTtcclxuXHRpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcclxuXHRjaGFuZ2UgPSBvdXRwdXQ8bnVtYmVyPigpO1xyXG5cdGF1dGhMZXZlbCA9IGlucHV0PG51bWJlcj4oLTEpO1xyXG5cclxuXHR3aWR0aExpc3Q6IG51bWJlcltdID0gW107XHJcblx0U1RBUlRfQlVUVE9OX1dJRFRIID0gMzI7XHJcblx0RU5EX0JVVFRPTl9XSURUSCA9IDQ3O1xyXG5cdFNURVBfSVRFTV9NQVJHSU4gPSAyO1xyXG5cclxuXHRzdGFydEluZGV4ID0gMDtcclxuXHRlbmRJbmRleCA9IDA7XHJcblx0c3RhcnRTdGVwczogU3RlcFtdID0gW107XHJcblx0ZW5kU3RlcHM6IFN0ZXBbXSA9IFtdO1xyXG5cdG1heFdpZHRoID0gMDtcclxuXHJcblx0QEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcblx0b25SZXNpemUoKSB7XHJcblx0XHR0aGlzLmNhbGNNYXhXaWR0aCgpO1xyXG5cdFx0dGhpcy5hbHRlcm5hdGVXaWR0aExpc3QoKTtcclxuXHRcdHRoaXMuaGFuZGxlU3RlcHMoKTtcclxuXHR9XHJcblxyXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge31cclxuXHJcblx0bmdBZnRlclZpZXdJbml0KCkge1xyXG5cdFx0dGhpcy5jYWxjTWF4V2lkdGgoKTtcclxuXHRcdHRoaXMuaW5pdFdpZHRoTGlzdCgpO1xyXG5cdFx0dGhpcy5hbHRlcm5hdGVXaWR0aExpc3QoKTtcclxuXHRcdHRoaXMuaGFuZGxlU3RlcHMoKTtcclxuXHR9XHJcblxyXG5cdGluaXRXaWR0aExpc3QoKSB7XHJcblx0XHRjb25zdCBjaGlsZHJlbiA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZSh0aGlzLmNvbnRhaW5lclJlZi5uYXRpdmVFbGVtZW50KS5jaGlsZHJlblswXS5jaGlsZHJlbjtcclxuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcclxuXHRcdFx0aWYgKCFjaGlsZHJlbltpXS5jbGFzc0xpc3QuY29udGFpbnMoJ3N0ZXAtaXRlbScpKSB7XHJcblx0XHRcdFx0Y29udGludWU7XHJcblx0XHRcdH1cclxuXHRcdFx0aWYgKGNoaWxkcmVuW2ldLmNsYXNzTGlzdC5jb250YWlucygnc3RhcnQtaXRlbScpKSB7XHJcblx0XHRcdFx0Y29udGludWU7XHJcblx0XHRcdH1cclxuXHRcdFx0aWYgKGNoaWxkcmVuW2ldLmNsYXNzTGlzdC5jb250YWlucygnZW5kLWl0ZW0nKSkge1xyXG5cdFx0XHRcdGNvbnRpbnVlO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMud2lkdGhMaXN0LnB1c2goKGNoaWxkcmVuW2ldLm9mZnNldFdpZHRoIHx8IDApICsgdGhpcy5TVEVQX0lURU1fTUFSR0lOKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGNhbGNNYXhXaWR0aCgpIHtcclxuXHRcdHRoaXMubWF4V2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDc2OCA/IHdpbmRvdy5pbm5lcldpZHRoICogMC45NiA6IHdpbmRvdy5pbm5lcldpZHRoICogMC40MjtcclxuXHR9XHJcblxyXG5cdHNob3dTdGFydFN0ZXBzKGV2ZW50OiBhbnksIHN0YXJ0T3A6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuYXV0aExldmVsKCkgPCA0KSByZXR1cm47XHJcblx0XHRzdGFydE9wLnRvZ2dsZShldmVudCk7XHJcblx0fVxyXG5cclxuXHRzaG93RW5kU3RlcHMoZXZlbnQ6IGFueSwgZW5kT3A6IGFueSkge1xyXG5cdFx0aWYgKHRoaXMuYXV0aExldmVsKCkgPCA0KSByZXR1cm47XHJcblx0XHRlbmRPcC50b2dnbGUoZXZlbnQpO1xyXG5cdH1cclxuXHJcblx0Z2V0Q2xhc3MoaTogbnVtYmVyLCBjbGFzc2VzOiBzdHJpbmdbXSkge1xyXG5cdFx0bGV0IHJlc3VsdCA9IFsnc3RlcC1pdGVtJywgJ2ZsZXgnLCAnaXRlbXMtY2VudGVyJywgJ2p1c3RpZnktY2VudGVyJ107XHJcblx0XHRyZXN1bHQgPSByZXN1bHQuY29uY2F0KGNsYXNzZXMpO1xyXG5cdFx0aWYgKHRoaXMuYXV0aExldmVsKCkgPCA0KSB7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdjdXJzb3Itbm90LWFsbG93ZWQnKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdjdXJzb3ItcG9pbnRlciBhbGxvdy1ob3ZlcicpO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgeyB2YWx1ZSB9ID0gdGhpcy5kaXNwbGF5U3RlcHMoKSFbaV07XHJcblx0XHRpZiAoaSA9PSAwKSB7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdzdGVwLWZpcnN0Jyk7XHJcblx0XHR9IGVsc2UgaWYgKGkgKyAxID09IHRoaXMuZGlzcGxheVN0ZXBzKCk/Lmxlbmd0aCkge1xyXG5cdFx0XHRyZXN1bHQucHVzaCgnc3RlcC1sYXN0Jyk7XHJcblx0XHR9XHJcblx0XHRpZiAodmFsdWUgPT0gdGhpcy5jdXJyZW50KCkpIHtcclxuXHRcdFx0cmVzdWx0LnB1c2goJ3N0ZXAtYWN0aXZlJyk7XHJcblx0XHRcdHJlc3VsdC5wdXNoKCdtZDpmbGV4LW5vbmUgZmxleC0xJyk7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gcmVzdWx0LmpvaW4oJyAnKTtcclxuXHR9XHJcblxyXG5cdGNoYW5nZVN0YXR1cyhzdGVwOiBhbnkpIHtcclxuXHRcdHRoaXMuY2hhbmdlLmVtaXQoc3RlcC52YWx1ZSk7XHJcblx0fVxyXG5cclxuXHRvblN0YXJ0U3RlcHNDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG5cdFx0Y29uc3Qgc3RlcCA9IGV2ZW50LnZhbHVlO1xyXG5cdFx0dGhpcy5jaGFuZ2UuZW1pdChzdGVwLnZhbHVlKTtcclxuXHR9XHJcblxyXG5cdG9uRW5kU3RlcHNDaGFuZ2UoZXZlbnQ6IGFueSkge1xyXG5cdFx0Y29uc3Qgc3RlcCA9IGV2ZW50LnZhbHVlO1xyXG5cdFx0dGhpcy5jaGFuZ2UuZW1pdChzdGVwLnZhbHVlKTtcclxuXHR9XHJcblxyXG5cdGFsdGVybmF0ZVdpZHRoTGlzdCgpIHtcclxuXHRcdGxldCBpbmRleCA9IHRoaXMuc3RlcHMoKS5maW5kSW5kZXgoKHMpID0+IHMudmFsdWUgPT09IHRoaXMuY3VycmVudCgpKTtcclxuXHRcdGluZGV4ID0gaW5kZXggPT09IC0xID8gMCA6IGluZGV4O1xyXG5cdFx0dGhpcy5zdGFydEluZGV4ID0gaW5kZXg7XHJcblx0XHR0aGlzLmVuZEluZGV4ID0gaW5kZXg7XHJcblxyXG5cdFx0bGV0IGxlZnRJbmRleCA9IGluZGV4IC0gMTtcclxuXHRcdGxldCByaWdodEluZGV4ID0gaW5kZXggKyAxO1xyXG5cdFx0bGV0IHR1cm4gPSAncmlnaHQnO1xyXG5cdFx0bGV0IHRvdGFsV2lkdGggPSB0aGlzLndpZHRoTGlzdFtpbmRleF07XHJcblxyXG5cdFx0d2hpbGUgKGxlZnRJbmRleCA+PSAwIHx8IHJpZ2h0SW5kZXggPCB0aGlzLndpZHRoTGlzdC5sZW5ndGgpIHtcclxuXHRcdFx0aWYgKHR1cm4gPT09ICdyaWdodCcgJiYgcmlnaHRJbmRleCA8IHRoaXMud2lkdGhMaXN0Lmxlbmd0aCkge1xyXG5cdFx0XHRcdHRvdGFsV2lkdGggKz0gdGhpcy53aWR0aExpc3RbcmlnaHRJbmRleF07XHJcblx0XHRcdFx0aWYgKHRoaXMuaXNFeGNlZWRNYXhXaWR0aCh0b3RhbFdpZHRoKSkge1xyXG5cdFx0XHRcdFx0YnJlYWs7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdHRoaXMuZW5kSW5kZXggPSByaWdodEluZGV4O1xyXG5cdFx0XHRcdHJpZ2h0SW5kZXgrKztcclxuXHRcdFx0XHR0dXJuID0gJ2xlZnQnO1xyXG5cdFx0XHR9IGVsc2UgaWYgKHR1cm4gPT09ICdsZWZ0JyAmJiBsZWZ0SW5kZXggPj0gMCkge1xyXG5cdFx0XHRcdHRvdGFsV2lkdGggKz0gdGhpcy53aWR0aExpc3RbbGVmdEluZGV4XTtcclxuXHRcdFx0XHRpZiAodGhpcy5pc0V4Y2VlZE1heFdpZHRoKHRvdGFsV2lkdGgpKSB7XHJcblx0XHRcdFx0XHRicmVhaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0dGhpcy5zdGFydEluZGV4ID0gbGVmdEluZGV4O1xyXG5cdFx0XHRcdGxlZnRJbmRleC0tO1xyXG5cdFx0XHRcdHR1cm4gPSAncmlnaHQnO1xyXG5cdFx0XHR9IGVsc2Uge1xyXG5cdFx0XHRcdHR1cm4gPSByaWdodEluZGV4IDwgdGhpcy53aWR0aExpc3QubGVuZ3RoID8gJ3JpZ2h0JyA6ICdsZWZ0JztcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aXNFeGNlZWRNYXhXaWR0aCh0b3RhbFdpZHRoOiBudW1iZXIpIHtcclxuXHRcdHRvdGFsV2lkdGggKz0gdGhpcy5zdGFydEluZGV4ID09PSAwID8gMCA6IHRoaXMuU1RBUlRfQlVUVE9OX1dJRFRIO1xyXG5cdFx0dG90YWxXaWR0aCArPSB0aGlzLmVuZEluZGV4ID09PSB0aGlzLndpZHRoTGlzdC5sZW5ndGggLSAxID8gMCA6IHRoaXMuRU5EX0JVVFRPTl9XSURUSDtcclxuXHRcdHJldHVybiB0b3RhbFdpZHRoID49IHRoaXMubWF4V2lkdGg7XHJcblx0fVxyXG5cclxuXHRoYW5kbGVTdGVwcygpIHtcclxuXHRcdGNvbnN0IHN0ZXBzID0gdGhpcy5zdGVwcygpO1xyXG5cdFx0Y29uc3QgZXhjbHVkZVZhbHVlczogYW55W10gPSBbXTtcclxuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgc3RlcHMubGVuZ3RoOyBpKyspIHtcclxuXHRcdFx0aWYgKGkgPCB0aGlzLnN0YXJ0SW5kZXgpIHtcclxuXHRcdFx0XHRleGNsdWRlVmFsdWVzLnB1c2goc3RlcHNbaV0udmFsdWUpO1xyXG5cdFx0XHR9XHJcblx0XHRcdGlmIChpID4gdGhpcy5lbmRJbmRleCkge1xyXG5cdFx0XHRcdGV4Y2x1ZGVWYWx1ZXMucHVzaChzdGVwc1tpXS52YWx1ZSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRpZiAodGhpcy5zdGFydEluZGV4ID4gMCkge1xyXG5cdFx0XHR0aGlzLnN0YXJ0U3RlcHMgPSBzdGVwcy5zbGljZSgwLCB0aGlzLnN0YXJ0SW5kZXgpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0ZXhjbHVkZVZhbHVlcy5wdXNoKCdzdGFydCcpO1xyXG5cdFx0fVxyXG5cdFx0aWYgKHRoaXMuZW5kSW5kZXggPCBzdGVwcy5sZW5ndGggLSAxKSB7XHJcblx0XHRcdHRoaXMuZW5kU3RlcHMgPSBzdGVwcy5zbGljZSh0aGlzLmVuZEluZGV4ICsgMSk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRleGNsdWRlVmFsdWVzLnB1c2goJ2VuZCcpO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5leGNsdWRlVmFsdWVzLnNldChleGNsdWRlVmFsdWVzKTtcclxuXHR9XHJcblxyXG5cdHJlZnJlc2hTdGVwcygpIHtcclxuXHRcdHNldFRpbWVvdXQoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLmFsdGVybmF0ZVdpZHRoTGlzdCgpO1xyXG5cdFx0XHR0aGlzLmhhbmRsZVN0ZXBzKCk7XHJcblx0XHR9LDMwMCk7XHJcblx0fVxyXG59XHJcbiIsIjxkaXZcclxuXHQjY29udGFpbmVyXHJcblx0Y2xhc3M9XCJmbGV4IG15LTEgdy1mdWxsIGp1c3RpZnktZW5kXCI+XHJcblx0QGZvciAoc3Qgb2YgZGlzcGxheVN0ZXBzKCk7IHRyYWNrIHN0OyBsZXQgaSA9ICRpbmRleCkge1xyXG5cdFx0QGlmIChzdC52YWx1ZSA9PT0gJ3N0YXJ0Jykge1xyXG5cdFx0XHQ8ZGl2XHJcblx0XHRcdFx0I3N0YXJ0SXRlbVxyXG5cdFx0XHRcdFtjbGFzc109XCJnZXRDbGFzcyhpLCBbJ3N0YXJ0LWl0ZW0nXSlcIlxyXG5cdFx0XHRcdChjbGljayk9XCJzaG93U3RhcnRTdGVwcygkZXZlbnQsIHN0YXJ0T3ApXCI+XHJcblx0XHRcdFx0PHNwYW4+Li4uPC9zcGFuPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PHAtcG9wb3ZlclxyXG5cdFx0XHRcdCNzdGFydE9wXHJcblx0XHRcdFx0W3N0eWxlQ2xhc3NdPVwiJ3BvcC1zdGVwcyBzdGFydC1zdGVwcydcIlxyXG5cdFx0XHRcdFthcHBlbmRUb109XCJzdGFydEl0ZW1cIj5cclxuXHRcdFx0XHQ8cC1saXN0Ym94XHJcblx0XHRcdFx0XHRbb3B0aW9uc109XCJzdGFydFN0ZXBzXCJcclxuXHRcdFx0XHRcdChvbkNoYW5nZSk9XCJvblN0YXJ0U3RlcHNDaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0XHRvcHRpb25MYWJlbD1cImxhYmVsXCJcclxuXHRcdFx0XHRcdGNsYXNzPVwidy1mdWxsIG1kOnctNTZcIiAvPlxyXG5cdFx0XHQ8L3AtcG9wb3Zlcj5cclxuXHRcdH0gQGVsc2UgaWYgKHN0LnZhbHVlID09PSAnZW5kJykge1xyXG5cdFx0XHQ8ZGl2XHJcblx0XHRcdFx0I2VuZEl0ZW1cclxuXHRcdFx0XHRbY2xhc3NdPVwiZ2V0Q2xhc3MoaSwgWydlbmQtaXRlbSddKVwiXHJcblx0XHRcdFx0KGNsaWNrKT1cInNob3dFbmRTdGVwcygkZXZlbnQsIGVuZE9wKVwiPlxyXG5cdFx0XHRcdDxzcGFuPi4uLjwvc3Bhbj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHRcdDxwLXBvcG92ZXJcclxuXHRcdFx0XHQjZW5kT3BcclxuXHRcdFx0XHRbc3R5bGVDbGFzc109XCIncG9wLXN0ZXBzIGVuZC1zdGVwcydcIlxyXG5cdFx0XHRcdFthcHBlbmRUb109XCJlbmRJdGVtXCI+XHJcblx0XHRcdFx0PHAtbGlzdGJveFxyXG5cdFx0XHRcdFx0W29wdGlvbnNdPVwiZW5kU3RlcHNcIlxyXG5cdFx0XHRcdFx0KG9uQ2hhbmdlKT1cIm9uRW5kU3RlcHNDaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0XHRvcHRpb25MYWJlbD1cImxhYmVsXCJcclxuXHRcdFx0XHRcdGNsYXNzPVwidy1mdWxsIG1kOnctNTZcIiAvPlxyXG5cdFx0XHQ8L3AtcG9wb3Zlcj5cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQ8ZGl2XHJcblx0XHRcdFx0W2NsYXNzXT1cImdldENsYXNzKGksIFtdKVwiXHJcblx0XHRcdFx0KGNsaWNrKT1cImNoYW5nZVN0YXR1cyhzdClcIj5cclxuXHRcdFx0XHQ8c3Bhbj57eyBzdC5pMThuS2V5ID8gaTE4bi5mYW55aShzdC5pMThuS2V5KSA6IHN0LmxhYmVsIH19PC9zcGFuPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHR9XHJcbjwvZGl2PlxyXG4iXX0=
@@ -11,7 +11,7 @@ import * as i1$3 from '@angular/common';
11
11
  import { DatePipe, CommonModule, DOCUMENT, isPlatformBrowser, AsyncPipe } from '@angular/common';
12
12
  import * as i2$1 from '@angular/forms';
13
13
  import { FormControl, ReactiveFormsModule, FormGroup, Validators, FormsModule } from '@angular/forms';
14
- import { BehaviorSubject, tap, fromEvent, forkJoin, filter, Observable, of, shareReplay, pipe, lastValueFrom, map as map$1 } from 'rxjs';
14
+ import { BehaviorSubject, tap, fromEvent, forkJoin, filter, Observable, of, shareReplay, pipe, isObservable, lastValueFrom, map as map$1 } from 'rxjs';
15
15
  import * as i1$2 from '@ngx-translate/core';
16
16
  import { TranslatePipe } from '@ngx-translate/core';
17
17
  import * as i2 from 'primeng/inputtext';
@@ -3537,7 +3537,9 @@ class FormComponent {
3537
3537
  field.labelMinWidth = this.labelMinWidth;
3538
3538
  field.interactiveLabel = this.options().interactiveLabel ?? true;
3539
3539
  field.form = this;
3540
- field.hook && this.uniqueHook(field, field.hook);
3540
+ if (isObservable(field.hook)) {
3541
+ this.uniqueHook(field, field.hook);
3542
+ }
3541
3543
  this.handleFieldControl(field);
3542
3544
  });
3543
3545
  }
@@ -6237,6 +6239,7 @@ class StepsComponent {
6237
6239
  this.widthList = [];
6238
6240
  this.START_BUTTON_WIDTH = 32;
6239
6241
  this.END_BUTTON_WIDTH = 47;
6242
+ this.STEP_ITEM_MARGIN = 2;
6240
6243
  this.startIndex = 0;
6241
6244
  this.endIndex = 0;
6242
6245
  this.startSteps = [];
@@ -6261,7 +6264,7 @@ class StepsComponent {
6261
6264
  if (children[i].classList.contains('end-item')) {
6262
6265
  continue;
6263
6266
  }
6264
- this.widthList.push(children[i].offsetWidth || 0);
6267
+ this.widthList.push((children[i].offsetWidth || 0) + this.STEP_ITEM_MARGIN);
6265
6268
  }
6266
6269
  }
6267
6270
  calcMaxWidth() {
@@ -6377,7 +6380,7 @@ class StepsComponent {
6377
6380
  setTimeout(() => {
6378
6381
  this.alternateWidthList();
6379
6382
  this.handleSteps();
6380
- });
6383
+ }, 300);
6381
6384
  }
6382
6385
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepsComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
6383
6386
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: StepsComponent, isStandalone: true, selector: "custom-steps", inputs: { steps: { classPropertyName: "steps", publicName: "steps", isSignal: true, isRequired: false, transformFunction: null }, current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change" }, host: { listeners: { "window:resize": "onResize($event)" } }, viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true }, { propertyName: "endBtn", first: true, predicate: ["endBtn"], descendants: true }], ngImport: i0, template: "<div\r\n\t#container\r\n\tclass=\"flex my-1 w-full justify-end\">\r\n\t@for (st of displaySteps(); track st; let i = $index) {\r\n\t\t@if (st.value === 'start') {\r\n\t\t\t<div\r\n\t\t\t\t#startItem\r\n\t\t\t\t[class]=\"getClass(i, ['start-item'])\"\r\n\t\t\t\t(click)=\"showStartSteps($event, startOp)\">\r\n\t\t\t\t<span>...</span>\r\n\t\t\t</div>\r\n\t\t\t<p-popover\r\n\t\t\t\t#startOp\r\n\t\t\t\t[styleClass]=\"'pop-steps start-steps'\"\r\n\t\t\t\t[appendTo]=\"startItem\">\r\n\t\t\t\t<p-listbox\r\n\t\t\t\t\t[options]=\"startSteps\"\r\n\t\t\t\t\t(onChange)=\"onStartStepsChange($event)\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\tclass=\"w-full md:w-56\" />\r\n\t\t\t</p-popover>\r\n\t\t} @else if (st.value === 'end') {\r\n\t\t\t<div\r\n\t\t\t\t#endItem\r\n\t\t\t\t[class]=\"getClass(i, ['end-item'])\"\r\n\t\t\t\t(click)=\"showEndSteps($event, endOp)\">\r\n\t\t\t\t<span>...</span>\r\n\t\t\t</div>\r\n\t\t\t<p-popover\r\n\t\t\t\t#endOp\r\n\t\t\t\t[styleClass]=\"'pop-steps end-steps'\"\r\n\t\t\t\t[appendTo]=\"endItem\">\r\n\t\t\t\t<p-listbox\r\n\t\t\t\t\t[options]=\"endSteps\"\r\n\t\t\t\t\t(onChange)=\"onEndStepsChange($event)\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\tclass=\"w-full md:w-56\" />\r\n\t\t\t</p-popover>\r\n\t\t} @else {\r\n\t\t\t<div\r\n\t\t\t\t[class]=\"getClass(i, [])\"\r\n\t\t\t\t(click)=\"changeStatus(st)\">\r\n\t\t\t\t<span>{{ st.i18nKey ? i18n.fanyi(st.i18nKey) : st.label }}</span>\r\n\t\t\t</div>\r\n\t\t}\r\n\t}\r\n</div>\r\n", styles: ["::ng-deep .pop-steps.p-popover.p-popover-flipped:before{display:none}::ng-deep .pop-steps.p-popover.p-popover-flipped:after{display:none}::ng-deep .pop-steps.p-popover:before{display:none}::ng-deep .pop-steps.p-popover:after{display:none}::ng-deep .pop-steps.p-popover-flipped{margin-top:-5px}::ng-deep .pop-steps .p-popover-content{padding:0}::ng-deep .end-steps.p-popover{margin-top:2.5px;z-index:999;position:absolute!important;left:auto!important;right:0!important;top:100%!important;min-width:125px}::ng-deep .start-steps.p-popover{margin-top:2.5px;z-index:999;position:absolute!important;left:0!important;right:auto!important;top:100%!important;min-width:125px}.step-item{position:relative;height:32px;padding:0 5px;background-color:#e7e9ed}.step-item span{color:#334155c2;white-space:nowrap}.step-item.step-first{padding-left:15px}.step-item.step-last{padding-right:15px}.step-item:not(.step-first){border-left:15px solid transparent;margin-left:2px}.step-item:not(.step-first):before{content:\"\";position:absolute;top:0;left:-15px;width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:12px solid white}.step-item:not(.step-last):after{content:\"\";position:absolute;top:0;right:-12px;width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:12px solid #e7e9ed;z-index:2}.step-item.step-active{background-color:var(--p-primary-200)}.step-item.step-active span{color:#334155}.step-item.step-active:after{border-left:12px solid var(--p-primary-200)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ListboxModule }, { kind: "component", type: i1$6.Listbox, selector: "p-listbox, p-listBox, p-list-box", inputs: ["id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "ariaLabel", "selectOnFocus", "searchLocale", "focusOnHover", "filterMessage", "filterFields", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "scrollHeight", "tabindex", "multiple", "style", "styleClass", "listStyle", "listStyleClass", "readonly", "disabled", "checkbox", "filter", "filterBy", "filterMatchMode", "filterLocale", "metaKeySelection", "dataKey", "showToggleAll", "optionLabel", "optionValue", "optionGroupChildren", "optionGroupLabel", "optionDisabled", "ariaFilterLabel", "filterPlaceHolder", "emptyFilterMessage", "emptyMessage", "group", "options", "filterValue", "selectAll", "striped", "highlightOnSelect", "checkmark"], outputs: ["onChange", "onClick", "onDblClick", "onFilter", "onFocus", "onBlur", "onSelectAllChange", "onLazyLoad"] }, { kind: "component", type: Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }] }); }
@@ -6434,6 +6437,14 @@ class PageFormComponent extends AmComponent {
6434
6437
  this.isLog = this.modelLog();
6435
6438
  console.log('model-----', this.isLog, this.modelLog());
6436
6439
  }, { allowSignalWrites: true });
6440
+ effect(() => {
6441
+ if (this.statusSteps().length > 0 && !this.id) {
6442
+ this.upsertPrm.addData[this.statusKey()] = this.statusSteps()[0]['value'];
6443
+ this.getPrm.data = Object.assign(this.getPrm.data || {}, {
6444
+ [this.statusKey()]: this.statusSteps()[0]['value']
6445
+ });
6446
+ }
6447
+ }, { allowSignalWrites: true });
6437
6448
  }
6438
6449
  ngOnInit() {
6439
6450
  this.upCb = this.upCb.bind(this);
@@ -6486,10 +6497,11 @@ class PageFormComponent extends AmComponent {
6486
6497
  });
6487
6498
  }
6488
6499
  }
6489
- getDetail() {
6500
+ getDetail(customSteps) {
6490
6501
  this.web_get(this.getPrm).subscribe(res => {
6491
6502
  this.updateTitle(res);
6492
6503
  this.formDisabled() && this.formDisFunc();
6504
+ customSteps && customSteps.refreshSteps();
6493
6505
  });
6494
6506
  }
6495
6507
  updateTitle(res) {
@@ -6537,8 +6549,7 @@ class PageFormComponent extends AmComponent {
6537
6549
  };
6538
6550
  }
6539
6551
  this.web_write(param).subscribe(res => {
6540
- this.getDetail();
6541
- customSteps.refreshSteps();
6552
+ this.getDetail(customSteps);
6542
6553
  });
6543
6554
  }
6544
6555
  else {