@recursyve/nice-data-filter-kit 14.5.0 → 14.5.2

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.
@@ -32,10 +32,17 @@ export class NiceAdvancedFiltersComponent {
32
32
  this.rules$ = this.rulesFormArray.valueChanges.pipe(startWith(this.rulesFormArray.value));
33
33
  }
34
34
  ngOnInit() {
35
- const { filterParameters } = this.query.getValue();
35
+ const { filterParameters, subStates } = this.query.getValue();
36
36
  if (filterParameters.rules?.length) {
37
37
  this.formGroup.patchValue(new AdvancedFiltersForm(filterParameters.rules[0]));
38
38
  }
39
+ if (subStates.selectedFilter) {
40
+ this.onClickAddRule(subStates.selectedFilter);
41
+ return;
42
+ }
43
+ }
44
+ ngOnDestroy() {
45
+ this.removeEmptyRules({ reload: false });
39
46
  }
40
47
  onClickAddRule(filterConfigurationModel) {
41
48
  this.rulesFormArray.push(new FilterForm(AdvancedFiltersUtils.createRule(filterConfigurationModel)));
@@ -50,6 +57,7 @@ export class NiceAdvancedFiltersComponent {
50
57
  }
51
58
  }
52
59
  onClose() {
60
+ this.removeEmptyRules();
53
61
  this.service.updateSubState("showAdvancedFilters", false);
54
62
  }
55
63
  onRefresh() {
@@ -57,6 +65,31 @@ export class NiceAdvancedFiltersComponent {
57
65
  this.service.resetResult(true);
58
66
  this.service.filter();
59
67
  }
68
+ removeEmptyRules({ reload } = { reload: true }) {
69
+ if (this.rulesFormArray.length !== 1) {
70
+ return;
71
+ }
72
+ const values = this.rulesFormArray.get([0, "values"]).getRawValue();
73
+ if (values.length !== 1) {
74
+ return;
75
+ }
76
+ const value = values[0];
77
+ if (value.value || value.value === false || value.secondValue || value.secondValue === true) {
78
+ return;
79
+ }
80
+ this.rulesFormArray.removeAt(0);
81
+ const { filterParameters } = this.query.getValue();
82
+ if (!filterParameters.rules.length || !filterParameters.rules[0].rules.length) {
83
+ return;
84
+ }
85
+ this.service.setRules([]);
86
+ if (!reload) {
87
+ return;
88
+ }
89
+ if (filterParameters.rules[0].rules[0].value) {
90
+ this.service.filter();
91
+ }
92
+ }
60
93
  }
61
94
  NiceAdvancedFiltersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersComponent, deps: [{ token: ADVANCED_FILTER_ICONS, optional: true }, { token: i1.GeneratedFormGroup }, { token: i2.NiceFilterViewQuery }, { token: i3.NiceFilterViewService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
62
95
  NiceAdvancedFiltersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedFiltersComponent, selector: "nice-advanced-filters", providers: [
@@ -83,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImpor
83
116
  type: Inject,
84
117
  args: [ADVANCED_FILTER_ICONS]
85
118
  }] }, { type: i1.GeneratedFormGroup }, { type: i2.NiceFilterViewQuery }, { type: i3.NiceFilterViewService }, { type: i0.ChangeDetectorRef }]; } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmlsdGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYWR2YW5jZWQtZmlsdGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYWR2YW5jZWQtZmlsdGVycy50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuSSxPQUFPLEVBQXNCLGtCQUFrQixFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakgsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUUsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU3QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFMUUsT0FBTyxFQUFFLHFDQUFxQyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDN0YsT0FBTyxFQUFFLG9CQUFv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LE9BQU8sRUFBRSw2QkFBNkI7NEJBQ3RDLFFBQVEsRUFBRSxxQ0FBcUM7NEJBQy9DLEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNOzswQkFTMUMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQsIE9wdGlvbmFsLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBHZW5lcmF0ZWRGb3JtQXJyYXksIEdlbmVyYXRlZEZvcm1Hcm91cCwgTmd4Rm9ybUdlbmVyYXRvclByb3ZpZGVyIH0gZnJvbSBcIkByZWN1cnN5dmUvbmd4LWZvcm0tZ2VuZXJhdG9yXCI7XG5pbXBvcnQgeyBOSUNFX0FTWU5DX1RZUEVBSEVBRF9QUk9WSURFUiB9IGZyb20gXCJAcmVjdXJzeXZlL25pY2UtdWkta2l0LnYyXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBzdGFydFdpdGggfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJWaWV3UXVlcnkgfSBmcm9tIFwiLi4vLi4vc3RvcmUvbmljZS1maWx0ZXItdmlldy5xdWVyeVwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3N0b3JlL25pY2UtZmlsdGVyLXZpZXcuc2VydmljZVwiO1xuaW1wb3J0IHsgQURWQU5DRURfRklMVEVSX0lDT05TIH0gZnJvbSBcIi4vYWR2YW5jZWQtZmlsdGVycy5jb25zdGFudFwiO1xuaW1wb3J0IHsgQWR2YW5jZWRGaWx0ZXJzRm9ybSwgRmlsdGVyRm9ybSB9IGZyb20gXCIuL2FkdmFuY2VkLWZpbHRlcnMuZm9ybVwiO1xuaW1wb3J0IHsgTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnMgfSBmcm9tIFwiLi9tb2RlbHMvaWNvbnMubW9kZWxcIjtcbmltcG9ydCB7IEFkdmFuY2VkRmlsdGVyc0FzeW5jVHlwZWFoZWFkUHJvdmlkZXIgfSBmcm9tIFwiLi9wcm92aWRlcnMvYXN5bmMtdHlwZWFoZWFkLnByb3ZpZGVyXCI7XG5pbXBvcnQgeyBBZHZhbmNlZEZpbHRlcnNVdGlscyB9IGZyb20gXCIuL3V0aWxzL2FkdmFuY2VkLWZpbHRlcnMudXRpbHNcIjtcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6IFwibmljZS1hZHZhbmNlZC1maWx0ZXJzXCIsXG4gICAgdGVtcGxhdGVVcmw6IFwiYWR2YW5jZWQtZmlsdGVycy50ZW1wbGF0ZS5odG1sXCIsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgTmd4Rm9ybUdlbmVyYXRvclByb3ZpZGVyLmZvckZlYXR1cmUoW0FkdmFuY2VkRmlsdGVyc0Zvcm1dKSxcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTklDRV9BU1lOQ19UWVBFQUhFQURfUFJPVklERVIsXG4gICAgICAgICAgICB1c2VDbGFzczogQWR2YW5jZWRGaWx0ZXJzQXN5bmNUeXBlYWhlYWRQcm92aWRlcixcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIE5pY2VBZHZhbmNlZEZpbHRlcnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHB1YmxpYyBjb25maWckID0gdGhpcy5xdWVyeS5zZWxlY3RGaWx0ZXJDb25maWcoKTtcblxuICAgIHB1YmxpYyBydWxlcyQ6IE9ic2VydmFibGU8RmlsdGVyRm9ybVtdPjtcbiAgICBwdWJsaWMgcnVsZXNGb3JtQXJyYXk6IEdlbmVyYXRlZEZvcm1BcnJheTxGaWx0ZXJGb3JtPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFEVkFOQ0VEX0ZJTFRFUl9JQ09OUylcbiAgICAgICAgcHVibGljIGljb25zOiBOaWNlQWR2YW5jZWRGaWx0ZXJJY29uT3B0aW9ucyxcbiAgICAgICAgcHVibGljIGZvcm1Hcm91cDogR2VuZXJhdGVkRm9ybUdyb3VwPEFkdmFuY2VkRmlsdGVyc0Zvcm0+LFxuICAgICAgICBwcml2YXRlIHF1ZXJ5OiBOaWNlRmlsdGVyVmlld1F1ZXJ5LFxuICAgICAgICBwcml2YXRlIHNlcnZpY2U6IE5pY2VGaWx0ZXJWaWV3U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgdGhpcy5ydWxlc0Zvcm1BcnJheSA9IHRoaXMuZm9ybUdyb3VwLmdldChcInJ1bGVzXCIpIGFzIEdlbmVyYXRlZEZvcm1BcnJheTxGaWx0ZXJGb3JtPjtcbiAgICAgICAgdGhpcy5ydWxlcyQgPSB0aGlzLnJ1bGVzRm9ybUFycmF5LnZhbHVlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLnJ1bGVzRm9ybUFycmF5LnZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGZpbHRlclBhcmFtZXRlcnMgfSA9IHRoaXMucXVlcnkuZ2V0VmFsdWUoKTtcbiAgICAgICAgaWYgKGZpbHRlclBhcmFtZXRlcnMucnVsZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAucGF0Y2hWYWx1ZShuZXcgQWR2YW5jZWRGaWx0ZXJzRm9ybShmaWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzWzBdKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25DbGlja0FkZFJ1bGUoZmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsOiBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ydWxlc0Zvcm1BcnJheS5wdXNoKG5ldyBGaWx0ZXJGb3JtKEFkdmFuY2VkRmlsdGVyc1V0aWxzLmNyZWF0ZVJ1bGUoZmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsKSkpO1xuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrRGVsZXRlUnVsZShpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVsZXNGb3JtQXJyYXkucmVtb3ZlQXQoaW5kZXgpO1xuICAgICAgICBpZiAoIXRoaXMucnVsZXNGb3JtQXJyYXkubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2Uuc2V0UnVsZXMoW10pO1xuICAgICAgICAgICAgdGhpcy5zZXJ2aWNlLmZpbHRlcigpO1xuICAgICAgICAgICAgdGhpcy5vbkNsb3NlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgb25DbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVN1YlN0YXRlKFwic2hvd0FkdmFuY2VkRmlsdGVyc1wiLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uUmVmcmVzaCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnNldFJ1bGVzKHRoaXMuZm9ybUdyb3VwLmdldFJhd1ZhbHVlKCkudHJhbnNmb3JtKCkpO1xuICAgICAgICB0aGlzLnNlcnZpY2UucmVzZXRSZXN1bHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuc2VydmljZS5maWx0ZXIoKTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNFwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgPGRpdiBjbGFzcz1cImFkdmFuY2VkLWZpbHRlci10aXRsZVwiPnt7IFwiY29tcG9uZW50cy5uaWNlX2FkdmFuY2VkX2ZpbHRlcnMudGl0bGVcIiB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZHZhbmNlZC1maWx0ZXItY29uZGl0aW9uXCI+e3sgXCJjb21wb25lbnRzLm5pY2VfYWR2YW5jZWRfZmlsdGVycy5jb25kaXRpb25zLnNob3VsZF9tYXRjaFwiIHwgdHJhbnNsYXRlIH19PC9kaXY+XG5cbiAgICAgICAgPG1hdC1yYWRpby1ncm91cCBmb3JtQ29udHJvbE5hbWU9XCJjb25kaXRpb25cIj5cbiAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIHZhbHVlPVwiYW5kXCI+PHNwYW4gY2xhc3M9XCJtbC00IG1yLThcIj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLmNvbmRpdGlvbnMuZXZlcnlcIiB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj48L21hdC1yYWRpby1idXR0b24+XG4gICAgICAgICAgICA8bWF0LXJhZGlvLWJ1dHRvbiB2YWx1ZT1cIm9yXCI+PHNwYW4gY2xhc3M9XCJtbC00IG1yLThcIj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLmNvbmRpdGlvbnMuc29tZVwiIHwgdHJhbnNsYXRlIH19PC9zcGFuPjwvbWF0LXJhZGlvLWJ1dHRvbj5cbiAgICAgICAgPC9tYXQtcmFkaW8tZ3JvdXA+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNFwiIGZvcm1BcnJheU5hbWU9XCJydWxlc1wiICpuZ0Zvcj1cImxldCBfIG9mIHJ1bGVzRm9ybUFycmF5LmNvbnRyb2xzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxuaWNlLWFkdmFuY2VkLXJ1bGUgW2ZpbHRlckNvbmZpZ3NdPVwiY29uZmlnJCB8IGFzeW5jXCIgW2Zvcm1Hcm91cE5hbWVdPVwiaVwiIChyZW1vdmUpPVwib25DbGlja0RlbGV0ZVJ1bGUoaSlcIj48L25pY2UtYWR2YW5jZWQtcnVsZT5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXY+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhZGQtY29uZGl0aW9uXCIgbWF0LXN0cm9rZWQtYnV0dG9uIGNvbG9yPVwiYWNjZW50XCIgbmljZUFkdmFuY2VkRmlsdGVyc1RyaWdnZXIgcG9zaXRpb249XCJ0b3BSaWdodFwiIChhZHZhbmNlZEZpbHRlclNlbGVjdGVkKT1cIm9uQ2xpY2tBZGRSdWxlKCRldmVudClcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtNFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5hZGQuc3ZnSWNvblwiPnt7IGljb25zLmFkZC5tYXRJY29uIH19PC9tYXQtaWNvbj5cblxuICAgICAgICAgICAgICAgIDxkaXY+e3sgXCJjb21wb25lbnRzLm5pY2VfYWR2YW5jZWRfZmlsdGVycy5hZGRfY29uZGl0aW9uXCIgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC02IGp1c3RpZnktZW5kIHB0LTRcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNsb3NlLWJ1dHRvblwiIG1hdC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwib25DbG9zZSgpXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTRcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiaWNvbnMuY2xvc2Uuc3ZnSWNvblwiPnt7IGljb25zLmNsb3NlLm1hdEljb24gfX08L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgPGRpdj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLmNsb3NlXCIgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwicmVmcmVzaC1idXR0b25cIiBtYXQtZmxhdC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwib25SZWZyZXNoKClcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtNFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5yZWZyZXNoLnN2Z0ljb25cIj57eyBpY29ucy5yZWZyZXNoLm1hdEljb24gfX08L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgPGRpdj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLnJlZnJlc2hcIiB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmlsdGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYWR2YW5jZWQtZmlsdGVycy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYWR2YW5jZWQtZmlsdGVycy50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxNQUFNLEVBR04sUUFBUSxFQUNSLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXNCLGtCQUFrQixFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakgsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDMUUsT0FBTyxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUc3QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxFQUFvQixNQUFNLHlCQUF5QixDQUFDO0FBRTVGLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSxv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VSxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMxRDtZQUNJLE9BQU8sRUFBRSw2QkFBNkI7WUFDdEMsUUFBUSxFQUFFLHFDQUFxQztZQUMvQyxLQUFLLEVBQUUsSUFBSTtTQUNkO0tBQ0osMEJDbENMLHMxRUE0Q0E7MkZEUGEsNEJBQTRCO2tCQWR4QyxTQUFTOytCQUNJLHVCQUF1QixpQkFFbEIsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDUCx3QkFBd0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO3dCQUMxRDs0QkFDSSxPQUFPLEVBQUUsNkJBQTZCOzRCQUN0QyxRQUFRLEVBQUUscUNBQXFDOzRCQUMvQyxLQUFLLEVBQUUsSUFBSTt5QkFDZDtxQkFDSixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTs7MEJBUzFDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgSW5qZWN0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEdlbmVyYXRlZEZvcm1BcnJheSwgR2VuZXJhdGVkRm9ybUdyb3VwLCBOZ3hGb3JtR2VuZXJhdG9yUHJvdmlkZXIgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uZ3gtZm9ybS1nZW5lcmF0b3JcIjtcbmltcG9ydCB7IE5JQ0VfQVNZTkNfVFlQRUFIRUFEX1BST1ZJREVSIH0gZnJvbSBcIkByZWN1cnN5dmUvbmljZS11aS1raXQudjJcIjtcbmltcG9ydCB7IE9ic2VydmFibGUsIHN0YXJ0V2l0aCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBGaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgUXVlcnlSdWxlTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vLi4vbW9kZWxzL3F1ZXJ5Lm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyVmlld1F1ZXJ5IH0gZnJvbSBcIi4uLy4uL3N0b3JlL25pY2UtZmlsdGVyLXZpZXcucXVlcnlcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJWaWV3U2VydmljZSB9IGZyb20gXCIuLi8uLi9zdG9yZS9uaWNlLWZpbHRlci12aWV3LnNlcnZpY2VcIjtcbmltcG9ydCB7IEFEVkFOQ0VEX0ZJTFRFUl9JQ09OUyB9IGZyb20gXCIuL2FkdmFuY2VkLWZpbHRlcnMuY29uc3RhbnRcIjtcbmltcG9ydCB7IEFkdmFuY2VkRmlsdGVyc0Zvcm0sIEZpbHRlckZvcm0sIEZpbHRlckZvcm1WYWx1ZXMgfSBmcm9tIFwiLi9hZHZhbmNlZC1maWx0ZXJzLmZvcm1cIjtcbmltcG9ydCB7IE5pY2VBZHZhbmNlZEZpbHRlckljb25PcHRpb25zIH0gZnJvbSBcIi4vbW9kZWxzL2ljb25zLm1vZGVsXCI7XG5pbXBvcnQgeyBBZHZhbmNlZEZpbHRlcnNBc3luY1R5cGVhaGVhZFByb3ZpZGVyIH0gZnJvbSBcIi4vcHJvdmlkZXJzL2FzeW5jLXR5cGVhaGVhZC5wcm92aWRlclwiO1xuaW1wb3J0IHsgQWR2YW5jZWRGaWx0ZXJzVXRpbHMgfSBmcm9tIFwiLi91dGlscy9hZHZhbmNlZC1maWx0ZXJzLnV0aWxzXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtZmlsdGVyc1wiLFxuICAgIHRlbXBsYXRlVXJsOiBcImFkdmFuY2VkLWZpbHRlcnMudGVtcGxhdGUuaHRtbFwiLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIE5neEZvcm1HZW5lcmF0b3JQcm92aWRlci5mb3JGZWF0dXJlKFtBZHZhbmNlZEZpbHRlcnNGb3JtXSksXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5JQ0VfQVNZTkNfVFlQRUFIRUFEX1BST1ZJREVSLFxuICAgICAgICAgICAgdXNlQ2xhc3M6IEFkdmFuY2VkRmlsdGVyc0FzeW5jVHlwZWFoZWFkUHJvdmlkZXIsXG4gICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICB9XG4gICAgXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBOaWNlQWR2YW5jZWRGaWx0ZXJzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIHB1YmxpYyBjb25maWckID0gdGhpcy5xdWVyeS5zZWxlY3RGaWx0ZXJDb25maWcoKTtcblxuICAgIHB1YmxpYyBydWxlcyQ6IE9ic2VydmFibGU8RmlsdGVyRm9ybVtdPjtcbiAgICBwdWJsaWMgcnVsZXNGb3JtQXJyYXk6IEdlbmVyYXRlZEZvcm1BcnJheTxGaWx0ZXJGb3JtPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KEFEVkFOQ0VEX0ZJTFRFUl9JQ09OUylcbiAgICAgICAgcHVibGljIGljb25zOiBOaWNlQWR2YW5jZWRGaWx0ZXJJY29uT3B0aW9ucyxcbiAgICAgICAgcHVibGljIGZvcm1Hcm91cDogR2VuZXJhdGVkRm9ybUdyb3VwPEFkdmFuY2VkRmlsdGVyc0Zvcm0+LFxuICAgICAgICBwcml2YXRlIHF1ZXJ5OiBOaWNlRmlsdGVyVmlld1F1ZXJ5LFxuICAgICAgICBwcml2YXRlIHNlcnZpY2U6IE5pY2VGaWx0ZXJWaWV3U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgdGhpcy5ydWxlc0Zvcm1BcnJheSA9IHRoaXMuZm9ybUdyb3VwLmdldChcInJ1bGVzXCIpIGFzIEdlbmVyYXRlZEZvcm1BcnJheTxGaWx0ZXJGb3JtPjtcbiAgICAgICAgdGhpcy5ydWxlcyQgPSB0aGlzLnJ1bGVzRm9ybUFycmF5LnZhbHVlQ2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLnJ1bGVzRm9ybUFycmF5LnZhbHVlKSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGZpbHRlclBhcmFtZXRlcnMsIHN1YlN0YXRlcyB9ID0gdGhpcy5xdWVyeS5nZXRWYWx1ZSgpO1xuXG4gICAgICAgIGlmIChmaWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybUdyb3VwLnBhdGNoVmFsdWUobmV3IEFkdmFuY2VkRmlsdGVyc0Zvcm0oZmlsdGVyUGFyYW1ldGVycy5ydWxlc1swXSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHN1YlN0YXRlcy5zZWxlY3RlZEZpbHRlcikge1xuICAgICAgICAgICAgdGhpcy5vbkNsaWNrQWRkUnVsZShzdWJTdGF0ZXMuc2VsZWN0ZWRGaWx0ZXIpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbW92ZUVtcHR5UnVsZXMoeyByZWxvYWQ6IGZhbHNlIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsaWNrQWRkUnVsZShmaWx0ZXJDb25maWd1cmF0aW9uTW9kZWw6IEZpbHRlckNvbmZpZ3VyYXRpb25Nb2RlbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJ1bGVzRm9ybUFycmF5LnB1c2gobmV3IEZpbHRlckZvcm0oQWR2YW5jZWRGaWx0ZXJzVXRpbHMuY3JlYXRlUnVsZShmaWx0ZXJDb25maWd1cmF0aW9uTW9kZWwpKSk7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uQ2xpY2tEZWxldGVSdWxlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ydWxlc0Zvcm1BcnJheS5yZW1vdmVBdChpbmRleCk7XG4gICAgICAgIGlmICghdGhpcy5ydWxlc0Zvcm1BcnJheS5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5zZXRSdWxlcyhbXSk7XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2UuZmlsdGVyKCk7XG4gICAgICAgICAgICB0aGlzLm9uQ2xvc2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvbkNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbW92ZUVtcHR5UnVsZXMoKTtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVN1YlN0YXRlKFwic2hvd0FkdmFuY2VkRmlsdGVyc1wiLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uUmVmcmVzaCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnNldFJ1bGVzKHRoaXMuZm9ybUdyb3VwLmdldFJhd1ZhbHVlKCkudHJhbnNmb3JtKCkpO1xuICAgICAgICB0aGlzLnNlcnZpY2UucmVzZXRSZXN1bHQodHJ1ZSk7XG4gICAgICAgIHRoaXMuc2VydmljZS5maWx0ZXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlRW1wdHlSdWxlcyh7IHJlbG9hZCB9OiB7IHJlbG9hZDogYm9vbGVhbiB9ID0geyByZWxvYWQ6IHRydWUgfSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5ydWxlc0Zvcm1BcnJheS5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMucnVsZXNGb3JtQXJyYXkuZ2V0KFswLCBcInZhbHVlc1wiXSkuZ2V0UmF3VmFsdWUoKSBhcyBGaWx0ZXJGb3JtVmFsdWVzW107XG4gICAgICAgIGlmICh2YWx1ZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB2YWx1ZSA9IHZhbHVlc1swXTtcbiAgICAgICAgaWYgKHZhbHVlLnZhbHVlIHx8IHZhbHVlLnZhbHVlID09PSBmYWxzZSB8fCB2YWx1ZS5zZWNvbmRWYWx1ZSB8fCB2YWx1ZS5zZWNvbmRWYWx1ZSA9PT0gdHJ1ZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ydWxlc0Zvcm1BcnJheS5yZW1vdmVBdCgwKTtcblxuICAgICAgICBjb25zdCB7IGZpbHRlclBhcmFtZXRlcnMgfSA9IHRoaXMucXVlcnkuZ2V0VmFsdWUoKTtcbiAgICAgICAgaWYgKCFmaWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzLmxlbmd0aCB8fCAhZmlsdGVyUGFyYW1ldGVycy5ydWxlc1swXS5ydWxlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2VydmljZS5zZXRSdWxlcyhbXSk7XG4gICAgICAgIGlmICghcmVsb2FkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoKGZpbHRlclBhcmFtZXRlcnMucnVsZXNbMF0ucnVsZXNbMF0gYXMgUXVlcnlSdWxlTW9kZWwpLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2UuZmlsdGVyKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNFwiIFtmb3JtR3JvdXBdPVwiZm9ybUdyb3VwXCI+XG4gICAgPGRpdiBjbGFzcz1cImFkdmFuY2VkLWZpbHRlci10aXRsZVwiPnt7IFwiY29tcG9uZW50cy5uaWNlX2FkdmFuY2VkX2ZpbHRlcnMudGl0bGVcIiB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgZ2FwLTEyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhZHZhbmNlZC1maWx0ZXItY29uZGl0aW9uXCI+e3sgXCJjb21wb25lbnRzLm5pY2VfYWR2YW5jZWRfZmlsdGVycy5jb25kaXRpb25zLnNob3VsZF9tYXRjaFwiIHwgdHJhbnNsYXRlIH19PC9kaXY+XG5cbiAgICAgICAgPG1hdC1yYWRpby1ncm91cCBmb3JtQ29udHJvbE5hbWU9XCJjb25kaXRpb25cIj5cbiAgICAgICAgICAgIDxtYXQtcmFkaW8tYnV0dG9uIHZhbHVlPVwiYW5kXCI+PHNwYW4gY2xhc3M9XCJtbC00IG1yLThcIj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLmNvbmRpdGlvbnMuZXZlcnlcIiB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj48L21hdC1yYWRpby1idXR0b24+XG4gICAgICAgICAgICA8bWF0LXJhZGlvLWJ1dHRvbiB2YWx1ZT1cIm9yXCI+PHNwYW4gY2xhc3M9XCJtbC00IG1yLThcIj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLmNvbmRpdGlvbnMuc29tZVwiIHwgdHJhbnNsYXRlIH19PC9zcGFuPjwvbWF0LXJhZGlvLWJ1dHRvbj5cbiAgICAgICAgPC9tYXQtcmFkaW8tZ3JvdXA+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNFwiIGZvcm1BcnJheU5hbWU9XCJydWxlc1wiICpuZ0Zvcj1cImxldCBfIG9mIHJ1bGVzRm9ybUFycmF5LmNvbnRyb2xzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxuaWNlLWFkdmFuY2VkLXJ1bGUgW2ZpbHRlckNvbmZpZ3NdPVwiY29uZmlnJCB8IGFzeW5jXCIgW2Zvcm1Hcm91cE5hbWVdPVwiaVwiIChyZW1vdmUpPVwib25DbGlja0RlbGV0ZVJ1bGUoaSlcIj48L25pY2UtYWR2YW5jZWQtcnVsZT5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXY+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJhZGQtY29uZGl0aW9uXCIgbWF0LXN0cm9rZWQtYnV0dG9uIGNvbG9yPVwiYWNjZW50XCIgbmljZUFkdmFuY2VkRmlsdGVyc1RyaWdnZXIgcG9zaXRpb249XCJ0b3BSaWdodFwiIChhZHZhbmNlZEZpbHRlclNlbGVjdGVkKT1cIm9uQ2xpY2tBZGRSdWxlKCRldmVudClcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtNFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5hZGQuc3ZnSWNvblwiPnt7IGljb25zLmFkZC5tYXRJY29uIH19PC9tYXQtaWNvbj5cblxuICAgICAgICAgICAgICAgIDxkaXY+e3sgXCJjb21wb25lbnRzLm5pY2VfYWR2YW5jZWRfZmlsdGVycy5hZGRfY29uZGl0aW9uXCIgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJmbGV4IGdhcC02IGp1c3RpZnktZW5kIHB0LTRcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNsb3NlLWJ1dHRvblwiIG1hdC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwib25DbG9zZSgpXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTRcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiaWNvbnMuY2xvc2Uuc3ZnSWNvblwiPnt7IGljb25zLmNsb3NlLm1hdEljb24gfX08L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgPGRpdj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLmNsb3NlXCIgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwicmVmcmVzaC1idXR0b25cIiBtYXQtZmxhdC1idXR0b24gY29sb3I9XCJhY2NlbnRcIiAoY2xpY2spPVwib25SZWZyZXNoKClcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtNFwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5yZWZyZXNoLnN2Z0ljb25cIj57eyBpY29ucy5yZWZyZXNoLm1hdEljb24gfX08L21hdC1pY29uPlxuXG4gICAgICAgICAgICAgICAgPGRpdj57eyBcImNvbXBvbmVudHMubmljZV9hZHZhbmNlZF9maWx0ZXJzLnJlZnJlc2hcIiB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1,8 +1,7 @@
1
1
  import { ChangeDetectionStrategy, Component, Inject, Optional, ViewEncapsulation } from "@angular/core";
2
- import { map, withLatestFrom } from "rxjs/operators";
2
+ import { combineLatestWith, map } from "rxjs/operators";
3
3
  import { NiceFilterViewQuery } from "../../../store/nice-filter-view.query";
4
4
  import { NiceFilterViewService } from "../../../store/nice-filter-view.service";
5
- import { AdvancedFiltersUtils } from "../utils/advanced-filters.utils";
6
5
  import { ADVANCED_FILTER_ICONS } from "../advanced-filters.constant";
7
6
  import * as i0 from "@angular/core";
8
7
  import * as i1 from "../../../store/nice-filter-view.query";
@@ -17,7 +16,7 @@ export class NiceAdvancedFiltersButtonComponent {
17
16
  this.query = query;
18
17
  this.service = service;
19
18
  this.shouldShowAdvancedFilters$ = this.query.selectSubState("showAdvancedFilters");
20
- this.hasParameters$ = this.query.selectFilterParameters().pipe(withLatestFrom(this.query.selectFilterConfig()), map(([parameter, config]) => !!parameter
19
+ this.hasParameters$ = this.query.selectFilterParameters().pipe(combineLatestWith(this.query.selectFilterConfig()), map(([parameter, config]) => !!parameter
21
20
  .rules
22
21
  ?.filter((rule) => config.some((conf) => conf?.id === rule.rules[0]?.id))
23
22
  ?.length));
@@ -26,20 +25,19 @@ export class NiceAdvancedFiltersButtonComponent {
26
25
  this.service.updateSubState("showAdvancedFilters", !this.query.getSubState("showAdvancedFilters"));
27
26
  }
28
27
  onSelectedFilter(filter) {
29
- const rule = AdvancedFiltersUtils.createRule(filter);
30
- this.service.setRules([{ condition: "and", rules: [rule] }]);
31
28
  this.service.updateSubState("showAdvancedFilters", true);
29
+ this.service.updateSubState("selectedFilter", filter);
32
30
  }
33
31
  }
34
32
  NiceAdvancedFiltersButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersButtonComponent, deps: [{ token: ADVANCED_FILTER_ICONS, optional: true }, { token: i1.NiceFilterViewQuery }, { token: i2.NiceFilterViewService }], target: i0.ɵɵFactoryTarget.Component });
35
- NiceAdvancedFiltersButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedFiltersButtonComponent, selector: "nice-advanced-filters-button", ngImport: i0, template: "<div class=\"relative\">\n <ng-container *ngIf=\"(hasParameters$ | async) && (shouldShowAdvancedFilters$ | async) !== true\">\n <div class=\"absolute top-2 right-2 w-1 h-1 rounded bg-accent\"></div>\n\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"shouldShowAdvancedFilters$ | async\">\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.close.svgIcon\">{{ icons.close.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"(hasParameters$ | async) !== true && (shouldShowAdvancedFilters$ | async) !== true\">\n <button mat-icon-button niceAdvancedFiltersTrigger (advancedFilterSelected)=\"onSelectedFilter($event)\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n</div>\n", styles: ["nice-advanced-filters-button{width:40px;height:40px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.AdvancedFiltersTriggerDirective, selector: "[niceAdvancedFiltersTrigger]", inputs: ["position"], outputs: ["advancedFilterSelected"], exportAs: ["niceAdvancedFiltersTrigger"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
33
+ NiceAdvancedFiltersButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.3", type: NiceAdvancedFiltersButtonComponent, selector: "nice-advanced-filters-button", ngImport: i0, template: "<div class=\"relative\">\n <ng-container *ngIf=\"(hasParameters$ | async) && (shouldShowAdvancedFilters$ | async) !== true\">\n <div class=\"absolute top-1 right-1 w-2 h-2 z-10 rounded bg-accent\"></div>\n\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"shouldShowAdvancedFilters$ | async\">\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.close.svgIcon\">{{ icons.close.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"(hasParameters$ | async) !== true && (shouldShowAdvancedFilters$ | async) !== true\">\n <button mat-icon-button niceAdvancedFiltersTrigger (advancedFilterSelected)=\"onSelectedFilter($event)\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n</div>\n", styles: ["nice-advanced-filters-button{width:40px;height:40px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i6.AdvancedFiltersTriggerDirective, selector: "[niceAdvancedFiltersTrigger]", inputs: ["position"], outputs: ["advancedFilterSelected"], exportAs: ["niceAdvancedFiltersTrigger"] }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
36
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceAdvancedFiltersButtonComponent, decorators: [{
37
35
  type: Component,
38
- args: [{ selector: "nice-advanced-filters-button", encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <ng-container *ngIf=\"(hasParameters$ | async) && (shouldShowAdvancedFilters$ | async) !== true\">\n <div class=\"absolute top-2 right-2 w-1 h-1 rounded bg-accent\"></div>\n\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"shouldShowAdvancedFilters$ | async\">\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.close.svgIcon\">{{ icons.close.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"(hasParameters$ | async) !== true && (shouldShowAdvancedFilters$ | async) !== true\">\n <button mat-icon-button niceAdvancedFiltersTrigger (advancedFilterSelected)=\"onSelectedFilter($event)\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n</div>\n", styles: ["nice-advanced-filters-button{width:40px;height:40px}\n"] }]
36
+ args: [{ selector: "nice-advanced-filters-button", encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"relative\">\n <ng-container *ngIf=\"(hasParameters$ | async) && (shouldShowAdvancedFilters$ | async) !== true\">\n <div class=\"absolute top-1 right-1 w-2 h-2 z-10 rounded bg-accent\"></div>\n\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"shouldShowAdvancedFilters$ | async\">\n <button mat-icon-button (click)=\"clickToggleShowAdvancedFilters()\">\n <mat-icon [svgIcon]=\"icons.close.svgIcon\">{{ icons.close.matIcon }}</mat-icon>\n </button>\n </ng-container>\n\n <ng-container *ngIf=\"(hasParameters$ | async) !== true && (shouldShowAdvancedFilters$ | async) !== true\">\n <button mat-icon-button niceAdvancedFiltersTrigger (advancedFilterSelected)=\"onSelectedFilter($event)\">\n <mat-icon [svgIcon]=\"icons.queryBuilder.svgIcon\">{{ icons.queryBuilder.matIcon }}</mat-icon>\n </button>\n </ng-container>\n</div>\n", styles: ["nice-advanced-filters-button{width:40px;height:40px}\n"] }]
39
37
  }], ctorParameters: function () { return [{ type: undefined, decorators: [{
40
38
  type: Optional
41
39
  }, {
42
40
  type: Inject,
43
41
  args: [ADVANCED_FILTER_ICONS]
44
42
  }] }, { type: i1.NiceFilterViewQuery }, { type: i2.NiceFilterViewService }]; } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmlsdGVycy1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvY29tcG9uZW50cy9hZHZhbmNlZC1maWx0ZXJzL2J1dHRvbi9hZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYnV0dG9uL2FkdmFuY2VkLWZpbHRlcnMtYnV0dG9uLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxHQUFHLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDaEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sOEJBQThCLENBQUM7Ozs7Ozs7O0FBVXJFLE1BQU0sT0FBTyxrQ0FBa0M7SUFZM0MsWUFDc0QsS0FBb0MsRUFDOUUsS0FBMEIsRUFDMUIsT0FBOEI7UUFGWSxVQUFLLEdBQUwsS0FBSyxDQUErQjtRQUM5RSxVQUFLLEdBQUwsS0FBSyxDQUFxQjtRQUMxQixZQUFPLEdBQVAsT0FBTyxDQUF1QjtRQWRuQywrQkFBMEIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBVSxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3ZGLG1CQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLElBQUksQ0FDNUQsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxFQUMvQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQ3hCLENBQUMsQ0FBQyxTQUFTO2FBQ04sS0FBSztZQUNOLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxLQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFvQixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQzdGLEVBQUUsTUFBTSxDQUNmLENBQ0osQ0FBQztJQU1DLENBQUM7SUFFRyw4QkFBOEI7UUFDakMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVNLGdCQUFnQixDQUFDLE1BQWdDO1FBQ3BELE1BQU0sSUFBSSxHQUFHLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRCxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3RCxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3RCxDQUFDOzsrSEExQlEsa0NBQWtDLGtCQWFuQixxQkFBcUI7bUhBYnBDLGtDQUFrQyxvRUNqQi9DLG1sQ0FxQkE7MkZESmEsa0NBQWtDO2tCQVA5QyxTQUFTOytCQUNJLDhCQUE4QixpQkFHekIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs7MEJBZTFDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0LCBPcHRpb25hbCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgbWFwLCB3aXRoTGF0ZXN0RnJvbSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IFF1ZXJ5UnVsZU1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9xdWVyeS5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdRdWVyeSB9IGZyb20gXCIuLi8uLi8uLi9zdG9yZS9uaWNlLWZpbHRlci12aWV3LnF1ZXJ5XCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyVmlld1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmUvbmljZS1maWx0ZXItdmlldy5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBBZHZhbmNlZEZpbHRlcnNVdGlscyB9IGZyb20gXCIuLi91dGlscy9hZHZhbmNlZC1maWx0ZXJzLnV0aWxzXCI7XG5pbXBvcnQgeyBBRFZBTkNFRF9GSUxURVJfSUNPTlMgfSBmcm9tIFwiLi4vYWR2YW5jZWQtZmlsdGVycy5jb25zdGFudFwiO1xuaW1wb3J0IHsgTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnMgfSBmcm9tIFwiLi4vbW9kZWxzL2ljb25zLm1vZGVsXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtZmlsdGVycy1idXR0b25cIixcbiAgICB0ZW1wbGF0ZVVybDogXCJhZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi50ZW1wbGF0ZS5odG1sXCIsXG4gICAgc3R5bGVVcmxzOiBbXCJhZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi5zdHlsZS5zY3NzXCJdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTmljZUFkdmFuY2VkRmlsdGVyc0J1dHRvbkNvbXBvbmVudCB7XG4gICAgcHVibGljIHNob3VsZFNob3dBZHZhbmNlZEZpbHRlcnMkID0gdGhpcy5xdWVyeS5zZWxlY3RTdWJTdGF0ZTxib29sZWFuPihcInNob3dBZHZhbmNlZEZpbHRlcnNcIik7XG4gICAgcHVibGljIGhhc1BhcmFtZXRlcnMkID0gdGhpcy5xdWVyeS5zZWxlY3RGaWx0ZXJQYXJhbWV0ZXJzKCkucGlwZShcbiAgICAgICAgd2l0aExhdGVzdEZyb20odGhpcy5xdWVyeS5zZWxlY3RGaWx0ZXJDb25maWcoKSksXG4gICAgICAgIG1hcCgoW3BhcmFtZXRlciwgY29uZmlnXSkgPT5cbiAgICAgICAgICAgICEhcGFyYW1ldGVyXG4gICAgICAgICAgICAgICAgLnJ1bGVzXG4gICAgICAgICAgICAgICAgPy5maWx0ZXIoKHJ1bGUpID0+IGNvbmZpZy5zb21lKChjb25mKSA9PiBjb25mPy5pZCA9PT0gKHJ1bGUucnVsZXNbMF0gYXMgUXVlcnlSdWxlTW9kZWwpPy5pZCkpXG4gICAgICAgICAgICAgICAgPy5sZW5ndGhcbiAgICAgICAgKVxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChBRFZBTkNFRF9GSUxURVJfSUNPTlMpIHB1YmxpYyBpY29uczogTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnMsXG4gICAgICAgIHByaXZhdGUgcXVlcnk6IE5pY2VGaWx0ZXJWaWV3UXVlcnksXG4gICAgICAgIHByaXZhdGUgc2VydmljZTogTmljZUZpbHRlclZpZXdTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIGNsaWNrVG9nZ2xlU2hvd0FkdmFuY2VkRmlsdGVycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVN1YlN0YXRlKFwic2hvd0FkdmFuY2VkRmlsdGVyc1wiLCAhdGhpcy5xdWVyeS5nZXRTdWJTdGF0ZShcInNob3dBZHZhbmNlZEZpbHRlcnNcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblNlbGVjdGVkRmlsdGVyKGZpbHRlcjogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJ1bGUgPSBBZHZhbmNlZEZpbHRlcnNVdGlscy5jcmVhdGVSdWxlKGZpbHRlcik7XG4gICAgICAgIHRoaXMuc2VydmljZS5zZXRSdWxlcyhbeyBjb25kaXRpb246IFwiYW5kXCIsIHJ1bGVzOiBbcnVsZV0gfV0pO1xuICAgICAgICB0aGlzLnNlcnZpY2UudXBkYXRlU3ViU3RhdGUoXCJzaG93QWR2YW5jZWRGaWx0ZXJzXCIsIHRydWUpO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJyZWxhdGl2ZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoaGFzUGFyYW1ldGVycyQgfCBhc3luYykgJiYgKHNob3VsZFNob3dBZHZhbmNlZEZpbHRlcnMkIHwgYXN5bmMpICE9PSB0cnVlXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhYnNvbHV0ZSB0b3AtMiByaWdodC0yIHctMSBoLTEgcm91bmRlZCBiZy1hY2NlbnRcIj48L2Rpdj5cblxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiY2xpY2tUb2dnbGVTaG93QWR2YW5jZWRGaWx0ZXJzKClcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5xdWVyeUJ1aWxkZXIuc3ZnSWNvblwiPnt7IGljb25zLnF1ZXJ5QnVpbGRlci5tYXRJY29uIH19PC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvdWxkU2hvd0FkdmFuY2VkRmlsdGVycyQgfCBhc3luY1wiPlxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiY2xpY2tUb2dnbGVTaG93QWR2YW5jZWRGaWx0ZXJzKClcIj5cbiAgICAgICAgICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29ucy5jbG9zZS5zdmdJY29uXCI+e3sgaWNvbnMuY2xvc2UubWF0SWNvbiB9fTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihoYXNQYXJhbWV0ZXJzJCB8IGFzeW5jKSAhPT0gdHJ1ZSAmJiAoc2hvdWxkU2hvd0FkdmFuY2VkRmlsdGVycyQgfCBhc3luYykgIT09IHRydWVcIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gbmljZUFkdmFuY2VkRmlsdGVyc1RyaWdnZXIgKGFkdmFuY2VkRmlsdGVyU2VsZWN0ZWQpPVwib25TZWxlY3RlZEZpbHRlcigkZXZlbnQpXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiaWNvbnMucXVlcnlCdWlsZGVyLnN2Z0ljb25cIj57eyBpY29ucy5xdWVyeUJ1aWxkZXIubWF0SWNvbiB9fTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtZmlsdGVycy1idXR0b24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvY29tcG9uZW50cy9hZHZhbmNlZC1maWx0ZXJzL2J1dHRvbi9hZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2NvbXBvbmVudHMvbmljZS1maWx0ZXItdmlldy9jb21wb25lbnRzL2FkdmFuY2VkLWZpbHRlcnMvYnV0dG9uL2FkdmFuY2VkLWZpbHRlcnMtYnV0dG9uLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd4RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7Ozs7QUFVckUsTUFBTSxPQUFPLGtDQUFrQztJQVkzQyxZQUNzRCxLQUFvQyxFQUM5RSxLQUEwQixFQUMxQixPQUE4QjtRQUZZLFVBQUssR0FBTCxLQUFLLENBQStCO1FBQzlFLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBQzFCLFlBQU8sR0FBUCxPQUFPLENBQXVCO1FBZG5DLCtCQUEwQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFVLHFCQUFxQixDQUFDLENBQUM7UUFDdkYsbUJBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQixFQUFFLENBQUMsSUFBSSxDQUM1RCxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUMsRUFDbEQsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUN4QixDQUFDLENBQUMsU0FBUzthQUNOLEtBQUs7WUFDTixFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsS0FBTSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBb0IsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM3RixFQUFFLE1BQU0sQ0FDZixDQUNKLENBQUM7SUFNQyxDQUFDO0lBRUcsOEJBQThCO1FBQ2pDLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLHFCQUFxQixFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxNQUFnQztRQUNwRCxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMxRCxDQUFDOzsrSEF6QlEsa0NBQWtDLGtCQWFuQixxQkFBcUI7bUhBYnBDLGtDQUFrQyxvRUNoQi9DLHdsQ0FxQkE7MkZETGEsa0NBQWtDO2tCQVA5QyxTQUFTOytCQUNJLDhCQUE4QixpQkFHekIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTs7MEJBZTFDLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5qZWN0LCBPcHRpb25hbCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdFdpdGgsIG1hcCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9maWx0ZXIubW9kZWxcIjtcbmltcG9ydCB7IFF1ZXJ5UnVsZU1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uLy4uLy4uL21vZGVscy9xdWVyeS5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdRdWVyeSB9IGZyb20gXCIuLi8uLi8uLi9zdG9yZS9uaWNlLWZpbHRlci12aWV3LnF1ZXJ5XCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyVmlld1NlcnZpY2UgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmUvbmljZS1maWx0ZXItdmlldy5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBBRFZBTkNFRF9GSUxURVJfSUNPTlMgfSBmcm9tIFwiLi4vYWR2YW5jZWQtZmlsdGVycy5jb25zdGFudFwiO1xuaW1wb3J0IHsgTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnMgfSBmcm9tIFwiLi4vbW9kZWxzL2ljb25zLm1vZGVsXCI7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiBcIm5pY2UtYWR2YW5jZWQtZmlsdGVycy1idXR0b25cIixcbiAgICB0ZW1wbGF0ZVVybDogXCJhZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi50ZW1wbGF0ZS5odG1sXCIsXG4gICAgc3R5bGVVcmxzOiBbXCJhZHZhbmNlZC1maWx0ZXJzLWJ1dHRvbi5zdHlsZS5zY3NzXCJdLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTmljZUFkdmFuY2VkRmlsdGVyc0J1dHRvbkNvbXBvbmVudCB7XG4gICAgcHVibGljIHNob3VsZFNob3dBZHZhbmNlZEZpbHRlcnMkID0gdGhpcy5xdWVyeS5zZWxlY3RTdWJTdGF0ZTxib29sZWFuPihcInNob3dBZHZhbmNlZEZpbHRlcnNcIik7XG4gICAgcHVibGljIGhhc1BhcmFtZXRlcnMkID0gdGhpcy5xdWVyeS5zZWxlY3RGaWx0ZXJQYXJhbWV0ZXJzKCkucGlwZShcbiAgICAgICAgY29tYmluZUxhdGVzdFdpdGgodGhpcy5xdWVyeS5zZWxlY3RGaWx0ZXJDb25maWcoKSksXG4gICAgICAgIG1hcCgoW3BhcmFtZXRlciwgY29uZmlnXSkgPT5cbiAgICAgICAgICAgICEhcGFyYW1ldGVyXG4gICAgICAgICAgICAgICAgLnJ1bGVzXG4gICAgICAgICAgICAgICAgPy5maWx0ZXIoKHJ1bGUpID0+IGNvbmZpZy5zb21lKChjb25mKSA9PiBjb25mPy5pZCA9PT0gKHJ1bGUucnVsZXNbMF0gYXMgUXVlcnlSdWxlTW9kZWwpPy5pZCkpXG4gICAgICAgICAgICAgICAgPy5sZW5ndGhcbiAgICAgICAgKVxuICAgICk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChBRFZBTkNFRF9GSUxURVJfSUNPTlMpIHB1YmxpYyBpY29uczogTmljZUFkdmFuY2VkRmlsdGVySWNvbk9wdGlvbnMsXG4gICAgICAgIHByaXZhdGUgcXVlcnk6IE5pY2VGaWx0ZXJWaWV3UXVlcnksXG4gICAgICAgIHByaXZhdGUgc2VydmljZTogTmljZUZpbHRlclZpZXdTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIGNsaWNrVG9nZ2xlU2hvd0FkdmFuY2VkRmlsdGVycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnVwZGF0ZVN1YlN0YXRlKFwic2hvd0FkdmFuY2VkRmlsdGVyc1wiLCAhdGhpcy5xdWVyeS5nZXRTdWJTdGF0ZShcInNob3dBZHZhbmNlZEZpbHRlcnNcIikpO1xuICAgIH1cblxuICAgIHB1YmxpYyBvblNlbGVjdGVkRmlsdGVyKGZpbHRlcjogRmlsdGVyQ29uZmlndXJhdGlvbk1vZGVsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VydmljZS51cGRhdGVTdWJTdGF0ZShcInNob3dBZHZhbmNlZEZpbHRlcnNcIiwgdHJ1ZSk7XG4gICAgICAgIHRoaXMuc2VydmljZS51cGRhdGVTdWJTdGF0ZShcInNlbGVjdGVkRmlsdGVyXCIsIGZpbHRlcik7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInJlbGF0aXZlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIihoYXNQYXJhbWV0ZXJzJCB8IGFzeW5jKSAmJiAoc2hvdWxkU2hvd0FkdmFuY2VkRmlsdGVycyQgfCBhc3luYykgIT09IHRydWVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFic29sdXRlIHRvcC0xIHJpZ2h0LTEgdy0yIGgtMiB6LTEwIHJvdW5kZWQgYmctYWNjZW50XCI+PC9kaXY+XG5cbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImNsaWNrVG9nZ2xlU2hvd0FkdmFuY2VkRmlsdGVycygpXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiaWNvbnMucXVlcnlCdWlsZGVyLnN2Z0ljb25cIj57eyBpY29ucy5xdWVyeUJ1aWxkZXIubWF0SWNvbiB9fTwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNob3VsZFNob3dBZHZhbmNlZEZpbHRlcnMkIHwgYXN5bmNcIj5cbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImNsaWNrVG9nZ2xlU2hvd0FkdmFuY2VkRmlsdGVycygpXCI+XG4gICAgICAgICAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiaWNvbnMuY2xvc2Uuc3ZnSWNvblwiPnt7IGljb25zLmNsb3NlLm1hdEljb24gfX08L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIoaGFzUGFyYW1ldGVycyQgfCBhc3luYykgIT09IHRydWUgJiYgKHNob3VsZFNob3dBZHZhbmNlZEZpbHRlcnMkIHwgYXN5bmMpICE9PSB0cnVlXCI+XG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIG5pY2VBZHZhbmNlZEZpbHRlcnNUcmlnZ2VyIChhZHZhbmNlZEZpbHRlclNlbGVjdGVkKT1cIm9uU2VsZWN0ZWRGaWx0ZXIoJGV2ZW50KVwiPlxuICAgICAgICAgICAgPG1hdC1pY29uIFtzdmdJY29uXT1cImljb25zLnF1ZXJ5QnVpbGRlci5zdmdJY29uXCI+e3sgaWNvbnMucXVlcnlCdWlsZGVyLm1hdEljb24gfX08L21hdC1pY29uPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
@@ -1,4 +1,6 @@
1
+ import { __decorate, __metadata } from "tslib";
1
2
  import { Inject, Injectable } from "@angular/core";
3
+ import { transaction } from "@datorama/akita";
2
4
  import { FileUtils } from "@recursyve/nice-ui-kit.v2";
3
5
  import { firstValueFrom } from "rxjs";
4
6
  import { FilterOperatorTypes } from "../../../models/query.model";
@@ -234,6 +236,7 @@ export class NiceFilterViewService {
234
236
  this.store.update({
235
237
  filterResult: null
236
238
  });
239
+ this.store.set([]);
237
240
  }
238
241
  else {
239
242
  this.store.update({
@@ -244,10 +247,16 @@ export class NiceFilterViewService {
244
247
  }
245
248
  NiceFilterViewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceFilterViewService, deps: [{ token: i1.NiceFilterViewStore }, { token: NiceFilterService }], target: i0.ɵɵFactoryTarget.Injectable });
246
249
  NiceFilterViewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceFilterViewService });
250
+ __decorate([
251
+ transaction(),
252
+ __metadata("design:type", Function),
253
+ __metadata("design:paramtypes", [Boolean]),
254
+ __metadata("design:returntype", void 0)
255
+ ], NiceFilterViewService.prototype, "resetResult", null);
247
256
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImport: i0, type: NiceFilterViewService, decorators: [{
248
257
  type: Injectable
249
258
  }], ctorParameters: function () { return [{ type: i1.NiceFilterViewStore }, { type: undefined, decorators: [{
250
259
  type: Inject,
251
260
  args: [NiceFilterService]
252
- }] }]; } });
253
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvc3RvcmUvbmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBR3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBeUMsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7O0FBRy9ELE1BQU0sT0FBTyxxQkFBcUI7SUFDOUIsWUFDWSxLQUEwQixFQUVsQixhQUFxQjtRQUY3QixVQUFLLEdBQUwsS0FBSyxDQUFxQjtRQUVsQixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtJQUV6QyxDQUFDO0lBRU0sS0FBSztRQUNSLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVNLE9BQU87UUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNkLFFBQVEsRUFBRSxJQUFJO1NBQ2pCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxjQUFjLENBQUksSUFBWSxFQUFFLEtBQVE7UUFDM0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDMUIsU0FBUyxFQUFFO2dCQUNQLEdBQUcsS0FBSyxDQUFDLFNB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LFlBQVksRUFBRSxJQUFJO2FBQ3JCLENBQUMsQ0FBQztTQUNOO2FBQU07WUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQztnQkFDZCxXQUFXLEVBQUUsSUFBSTthQUNwQixDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7O2tIQTVRUSxxQkFBcUIscURBR2xCLGlCQUFpQjtzSEFIcEIscUJBQXFCOzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVU7OzBCQUlGLE1BQU07MkJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IEFkZEVudGl0aWVzT3B0aW9ucyB9IGZyb20gXCJAZGF0b3JhbWEvYWtpdGEvc3JjL2xpYi9hZGRFbnRpdGllc1wiO1xuaW1wb3J0IHsgRmlsZVV0aWxzIH0gZnJvbSBcIkByZWN1cnN5dmUvbmljZS11aS1raXQudjJcIjtcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IFF1ZXJ5UGFyYW1zIH0gZnJvbSBcIi4uLy4uLy4uL2FwaS9maWx0ZXIuYXBpXCI7XG5pbXBvcnQgeyBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kZWxzL2ZpbHRlci5tb2RlbFwiO1xuaW1wb3J0IHsgRmlsdGVyT3BlcmF0b3JUeXBlcywgUXVlcnlNb2RlbCwgUXVlcnlSdWxlTW9kZWwsIFJ1bGVNb2RlbCB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvcXVlcnkubW9kZWxcIjtcbmltcG9ydCB7IE5pY2VGaWx0ZXJTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL2Jhc2UtbGlzdC9wcm92aWRlcnMvYmFzZS1maWx0ZXIuc2VydmljZVwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclZpZXdTdG9yZSB9IGZyb20gXCIuL25pY2UtZmlsdGVyLXZpZXcuc3RvcmVcIjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIE5pY2VGaWx0ZXJWaWV3U2VydmljZTxGaWx0ZXIgZXh0ZW5kcyBOaWNlRmlsdGVyU2VydmljZTxhbnk+ID0gTmljZUZpbHRlclNlcnZpY2U8YW55Pj4ge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHN0b3JlOiBOaWNlRmlsdGVyVmlld1N0b3JlLFxuICAgICAgICBASW5qZWN0KE5pY2VGaWx0ZXJTZXJ2aWNlKVxuICAgICAgICBwdWJsaWMgcmVhZG9ubHkgZmlsdGVyU2VydmljZTogRmlsdGVyXG4gICAgKSB7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnJlc2V0KCk7XG4gICAgfVxuXG4gICAgcHVibGljIGRpc2FibGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIGRpc2FibGVkOiB0cnVlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cGRhdGVTdWJTdGF0ZTxUPihuYW1lOiBzdHJpbmcsIHZhbHVlOiBUKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKChzdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgIHN1YlN0YXRlczoge1xuICAgICAgICAgICAgICAgIC4uLnN0YXRlLnN1YlN0YXRlcyxcbiAgICAgICAgICAgICAgICBbbmFtZV06IHZhbHVlXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZW5hYmxlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICBkaXNhYmxlZDogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldEF1dG9Mb2FkKGF1dG9Mb2FkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHsgYXV0b0xvYWQgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldExvYWRpbmcobG9hZGluZzogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcobG9hZGluZyk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldE1vZGUobW9kZTogXCJwYWdpbmF0ZWRcIiB8IFwiYWNjdW11bGF0ZWRcIik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7IG1vZGUgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGxvYWRDb25maWcoY29uZmlnUXVlcnlQYXJhbXM6IFF1ZXJ5UGFyYW1zID0ge30pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgdGhpcy5zdG9yZS5zZXRGaWx0ZXJDb25maWdMb2FkaW5nKHRydWUpO1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgZmlsdGVyQ29uZmlnID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5maWx0ZXJTZXJ2aWNlLmdldEZpbHRlckNvbmZpZyh7IHBhcmFtczogY29uZmlnUXVlcnlQYXJhbXMgfSkpO1xuICAgICAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgICAgIGZpbHRlckNvbmZpZ1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RXJyb3IoZSk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEZpbHRlckNvbmZpZ0xvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGZpbHRlcigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzLCBkaXNhYmxlZCB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZmlsdGVyKHRoaXMuc3RvcmUuZ2V0UGFyYW1ldGVycyhmaWx0ZXJQYXJhbWV0ZXJzKSkpO1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRSZXN1bHQocmVzdWx0KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRFcnJvcihlKTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0TG9hZGluZyhmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZG93bmxvYWREYXRhKHR5cGU6IHN0cmluZywgZG93bmxvYWRGaWxlTmFtZTogc3RyaW5nLCBpZHM/OiBudW1iZXJbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGZpbHRlclBhcmFtZXRlcnMsIGRpc2FibGVkIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGlmIChkaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgcGFyYW1ldGVycyA9IHtcbiAgICAgICAgICAgIC4uLmZpbHRlclBhcmFtZXRlcnMsXG4gICAgICAgICAgICBydWxlczogZmlsdGVyUGFyYW1ldGVycz8ucnVsZXMgPyBbLi4uZmlsdGVyUGFyYW1ldGVycy5ydWxlc10gOiBbXVxuICAgICAgICB9O1xuXG4gICAgICAgIGlmIChpZHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgcGFyYW1ldGVycy5ydWxlcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgY29uZGl0aW9uOiBcImFuZFwiLFxuICAgICAgICAgICAgICAgICAgICBydWxlczogW1xuICAgICAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBcImlkXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uOiBGaWx0ZXJPcGVyYXRvclR5cGVzLkluLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpZHNcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5maWx0ZXJTZXJ2aWNlLmdldEZpbGUodHlwZSwgdGhpcy5zdG9yZS5nZXRQYXJhbWV0ZXJzKHBhcmFtZXRlcnMpKSk7XG4gICAgICAgICAgICBGaWxlVXRpbHMuZG93bmxvYWRGaWxlKGAke2Rvd25sb2FkRmlsZU5hbWV9LiR7dHlwZX1gLCByZXN1bHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBwcmludERhdGEoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycywgZGlzYWJsZWQgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKHRydWUpO1xuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5maWx0ZXJTZXJ2aWNlLmdldFByaW50YWJsZUh0bWwodGhpcy5zdG9yZS5nZXRQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnMpKSk7XG4gICAgICAgICAgICBGaWxlVXRpbHMub3BlblByaW50YWJsZVdpbmRvdyhyZXN1bHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIHJlbG9hZCBzaG93IG5vdCBiZSBwYXNzZWQsIGFuZCB0aGUgY2FsbGVyIHNob3VsZCBpbnN0ZWFkIGNhbGwgYGZpbHRlcigpYCBhZnRlciBjYWxsaW5nIHRoaXMgZnVuY3Rpb24uXG4gICAgICovXG4gICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOnVuaWZpZWQtc2lnbmF0dXJlc1xuICAgIHB1YmxpYyBzZXRQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCwgcmVsb2FkOiBib29sZWFuKTogdm9pZDtcbiAgICBwdWJsaWMgc2V0UGFyYW1ldGVycyhmaWx0ZXJQYXJhbWV0ZXJzOiBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwpOiB2b2lkO1xuICAgIHB1YmxpYyBzZXRQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCwgcmVsb2FkPzogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnNldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVycyk7XG4gICAgICAgIGlmIChyZWxvYWQpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXRQYWdpbmcoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICB0aGlzLnNldFBhcmFtZXRlcnMoe1xuICAgICAgICAgICAgLi4uZmlsdGVyUGFyYW1ldGVycyxcbiAgICAgICAgICAgIHN0YXJ0OiAwXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMucmVzZXRSZXN1bHQodHJ1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldFF1ZXJ5UGFyYW1zKHF1ZXJ5UGFyYW1zOiBRdWVyeVBhcmFtcyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7IHF1ZXJ5UGFyYW1zIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXRCYXNlUnVsZXMocnVsZTogKFF1ZXJ5UnVsZU1vZGVsIHwgUXVlcnlNb2RlbClbXSwgcmVsb2FkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIGJhc2VSdWxlczogcnVsZVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAocmVsb2FkKSB7XG4gICAgICAgICAgICB0aGlzLmZpbHRlcigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHNldFJ1bGVzKHJ1bGVzOiBRdWVyeU1vZGVsIHwgUXVlcnlNb2RlbFtdKTogdm9pZCB7XG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShydWxlcykpIHtcbiAgICAgICAgICAgIHJ1bGVzID0gW3J1bGVzXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBuZXdSdWxlczogRmlsdGVyUGFyYW1ldGVyc01vZGVsID0ge1xuICAgICAgICAgICAgb3JkZXI6IGZpbHRlclBhcmFtZXRlcnMub3JkZXIsXG4gICAgICAgICAgICBmYWxsYmFja09yZGVyOiBmaWx0ZXJQYXJhbWV0ZXJzLmZhbGxiYWNrT3JkZXIsXG4gICAgICAgICAgICBzdGFydDogMCxcbiAgICAgICAgICAgIGxlbmd0aDogZmlsdGVyUGFyYW1ldGVycy5sZW5ndGgsXG4gICAgICAgICAgICBkYXRhOiBmaWx0ZXJQYXJhbWV0ZXJzLmRhdGEsXG4gICAgICAgICAgICBydWxlc1xuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuc2V0UGFyYW1ldGVycyhuZXdSdWxlcyk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwc2VydFJ1bGUoaWQ6IHN0cmluZywgbmV3UnVsZTogUnVsZU1vZGVsKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBjdXJyZW50UXVlcnkgPSBmaWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzPy5bMF07XG4gICAgICAgIGNvbnN0IHJ1bGU6IFF1ZXJ5UnVsZU1vZGVsID0ge1xuICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAuLi5uZXdSdWxlXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IHF1ZXJ5OiBRdWVyeU1vZGVsID0geyBydWxlczogW3J1bGVdLCBjb25kaXRpb246IFwiYW5kXCIgfTtcbiAgICAgICAgaWYgKCFjdXJyZW50UXVlcnkgfHwgY3VycmVudFF1ZXJ5LnJ1bGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5zZXRSdWxlcyhxdWVyeSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBvbGRSdWxlID0gY3VycmVudFF1ZXJ5LnJ1bGVzLmZpbmQoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCA9PT0gaWQpIGFzIFF1ZXJ5UnVsZU1vZGVsO1xuICAgICAgICBsZXQgbmV3UnVsZXMgPSBjdXJyZW50UXVlcnkucnVsZXM7XG4gICAgICAgIGlmIChvbGRSdWxlKSB7XG4gICAgICAgICAgICBpZiAobmV3UnVsZSkge1xuICAgICAgICAgICAgICAgIC8vIEFycmF5IHJlcGxhY2VcbiAgICAgICAgICAgICAgICBuZXdSdWxlcyA9IFtcbiAgICAgICAgICAgICAgICAgICAgLi4uY3VycmVudFF1ZXJ5LnJ1bGVzLnNsaWNlKDAsIGN1cnJlbnRRdWVyeS5ydWxlcy5pbmRleE9mKG9sZFJ1bGUpKSxcbiAgICAgICAgICAgICAgICAgICAgcnVsZSxcbiAgICAgICAgICAgICAgICAgICAgLi4uY3VycmVudFF1ZXJ5LnJ1bGVzLnNsaWNlKGN1cnJlbnRRdWVyeS5ydWxlcy5pbmRleE9mKG9sZFJ1bGUpICsgMSwgY3VycmVudFF1ZXJ5LnJ1bGVzLmxlbmd0aClcbiAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBuZXdSdWxlcyA9IGN1cnJlbnRRdWVyeS5ydWxlcy5maWx0ZXIoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCAhPT0gaWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3UnVsZXMgPSBbLi4ubmV3UnVsZXMsIHJ1bGVdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2V0UnVsZXMoe1xuICAgICAgICAgICAgY29uZGl0aW9uOiBjdXJyZW50UXVlcnkuY29uZGl0aW9uLFxuICAgICAgICAgICAgcnVsZXM6IG5ld1J1bGVzXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVSdWxlKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRRdWVyeSA9IGZpbHRlclBhcmFtZXRlcnMucnVsZXM/LlswXTtcbiAgICAgICAgY29uc3Qgb2xkUnVsZSA9IGN1cnJlbnRRdWVyeS5ydWxlcy5maW5kKChyKSA9PiAociBhcyBRdWVyeVJ1bGVNb2RlbCkuaWQgPT09IGlkKSBhcyBRdWVyeVJ1bGVNb2RlbDtcbiAgICAgICAgaWYgKCFvbGRSdWxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBuZXdSdWxlcyA9IGN1cnJlbnRRdWVyeS5ydWxlcy5maWx0ZXIoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCAhPT0gaWQpO1xuICAgICAgICB0aGlzLnNldFJ1bGVzKHtcbiAgICAgICAgICAgIGNvbmRpdGlvbjogY3VycmVudFF1ZXJ5LmNvbmRpdGlvbixcbiAgICAgICAgICAgIHJ1bGVzOiBuZXdSdWxlc1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVmFsdWUodmFsdWU6IGFueSwgb3B0cz86IEFkZEVudGl0aWVzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLmFkZFZhbHVlKHZhbHVlLCBvcHRzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYWRkVmFsdWVzKHZhbHVlOiBhbnlbXSwgb3B0cz86IEFkZEVudGl0aWVzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLmFkZFZhbHVlcyh2YWx1ZSwgb3B0cyk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwc2VydFZhbHVlKHZhbHVlOiBhbnksIGtleT86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwc2VydFZhbHVlKHZhbHVlLCBrZXkpO1xuICAgIH1cblxuICAgIHB1YmxpYyB1cHNlcnRWYWx1ZXModmFsdWVzOiBhbnlbXSwga2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0VmFsdWVzKHZhbHVlcywga2V5KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlVmFsdWUodmFsdWU6IGFueVtdLCBrZXk/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5yZW1vdmVWYWx1ZSh2YWx1ZSwga2V5KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlVmFsdWVzKHZhbHVlczogYW55W10sIGtleT86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZVZhbHVlcyh2YWx1ZXMsIGtleSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc2V0UmVzdWx0KHdhaXRGb3JOZXh0RmlsdGVyOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmICghd2FpdEZvck5leHRGaWx0ZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJSZXN1bHQ6IG51bGxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgICAgIHJlc2V0UmVzdWx0OiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
261
+ }] }]; }, propDecorators: { resetResult: [] } });
262
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmljZS1kYXRhLWZpbHRlci1raXQvc3JjL2xpYi9jb21wb25lbnRzL25pY2UtZmlsdGVyLXZpZXcvc3RvcmUvbmljZS1maWx0ZXItdmlldy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFOUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHdEMsT0FBTyxFQUFFLG1CQUFtQixFQUF5QyxNQUFNLDZCQUE2QixDQUFDO0FBQ3pHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFHL0QsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixZQUNZLEtBQTBCLEVBRWxCLGFBQXFCO1FBRjdCLFVBQUssR0FBTCxLQUFLLENBQXFCO1FBRWxCLGtCQUFhLEdBQWIsYUFBYSxDQUFRO0lBRXpDLENBQUM7SUFFTSxLQUFLO1FBQ1IsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1lBQ2QsUUFBUSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLGNBQWMsQ0FBSSxJQUFZLEVBQUUsS0FBUTtRQUMzQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMs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QUU7WUFDcEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7Z0JBQ2QsWUFBWSxFQUFFLElBQUk7YUFDckIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDdEI7YUFBTTtZQUNILElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO2dCQUNkLFdBQVcsRUFBRSxJQUFJO2FBQ3BCLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQzs7a0hBOVFRLHFCQUFxQixxREFHbEIsaUJBQWlCO3NIQUhwQixxQkFBcUI7O0lBa1E3QixXQUFXLEVBQUU7Ozs7d0RBWWI7MkZBOVFRLHFCQUFxQjtrQkFEakMsVUFBVTs7MEJBSUYsTUFBTTsyQkFBQyxpQkFBaUI7NENBZ1F0QixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IHRyYW5zYWN0aW9uIH0gZnJvbSBcIkBkYXRvcmFtYS9ha2l0YVwiO1xuaW1wb3J0IHsgQWRkRW50aXRpZXNPcHRpb25zIH0gZnJvbSBcIkBkYXRvcmFtYS9ha2l0YS9zcmMvbGliL2FkZEVudGl0aWVzXCI7XG5pbXBvcnQgeyBGaWxlVXRpbHMgfSBmcm9tIFwiQHJlY3Vyc3l2ZS9uaWNlLXVpLWtpdC52MlwiO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20gfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgUXVlcnlQYXJhbXMgfSBmcm9tIFwiLi4vLi4vLi4vYXBpL2ZpbHRlci5hcGlcIjtcbmltcG9ydCB7IEZpbHRlclBhcmFtZXRlcnNNb2RlbCB9IGZyb20gXCIuLi8uLi8uLi9tb2RlbHMvZmlsdGVyLm1vZGVsXCI7XG5pbXBvcnQgeyBGaWx0ZXJPcGVyYXRvclR5cGVzLCBRdWVyeU1vZGVsLCBRdWVyeVJ1bGVNb2RlbCwgUnVsZU1vZGVsIH0gZnJvbSBcIi4uLy4uLy4uL21vZGVscy9xdWVyeS5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZUZpbHRlclNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vYmFzZS1saXN0L3Byb3ZpZGVycy9iYXNlLWZpbHRlci5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBOaWNlRmlsdGVyVmlld1N0b3JlIH0gZnJvbSBcIi4vbmljZS1maWx0ZXItdmlldy5zdG9yZVwiO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTmljZUZpbHRlclZpZXdTZXJ2aWNlPEZpbHRlciBleHRlbmRzIE5pY2VGaWx0ZXJTZXJ2aWNlPGFueT4gPSBOaWNlRmlsdGVyU2VydmljZTxhbnk+PiB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgc3RvcmU6IE5pY2VGaWx0ZXJWaWV3U3RvcmUsXG4gICAgICAgIEBJbmplY3QoTmljZUZpbHRlclNlcnZpY2UpXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBmaWx0ZXJTZXJ2aWNlOiBGaWx0ZXJcbiAgICApIHtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUucmVzZXQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGlzYWJsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgZGlzYWJsZWQ6IHRydWVcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZVN1YlN0YXRlPFQ+KG5hbWU6IHN0cmluZywgdmFsdWU6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoKHN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgc3ViU3RhdGVzOiB7XG4gICAgICAgICAgICAgICAgLi4uc3RhdGUuc3ViU3RhdGVzLFxuICAgICAgICAgICAgICAgIFtuYW1lXTogdmFsdWVcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBlbmFibGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIGRpc2FibGVkOiBmYWxzZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0QXV0b0xvYWQoYXV0b0xvYWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoeyBhdXRvTG9hZCB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0TG9hZGluZyhsb2FkaW5nOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2V0TG9hZGluZyhsb2FkaW5nKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0TW9kZShtb2RlOiBcInBhZ2luYXRlZFwiIHwgXCJhY2N1bXVsYXRlZFwiKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHsgbW9kZSB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgbG9hZENvbmZpZyhjb25maWdRdWVyeVBhcmFtczogUXVlcnlQYXJhbXMgPSB7fSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLnN0b3JlLnNldEZpbHRlckNvbmZpZ0xvYWRpbmcodHJ1ZSk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBmaWx0ZXJDb25maWcgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZ2V0RmlsdGVyQ29uZmlnKHsgcGFyYW1zOiBjb25maWdRdWVyeVBhcmFtcyB9KSk7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICAgICAgZmlsdGVyQ29uZmlnXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRFcnJvcihlKTtcbiAgICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RmlsdGVyQ29uZmlnTG9hZGluZyhmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZmlsdGVyKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGZpbHRlclBhcmFtZXRlcnMsIGRpc2FibGVkIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGlmIChkaXNhYmxlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuZmlsdGVyU2VydmljZS5maWx0ZXIodGhpcy5zdG9yZS5nZXRQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnMpKSk7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldFJlc3VsdChyZXN1bHQpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9IGZpbmFsbHkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRMb2FkaW5nKGZhbHNlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBkb3dubG9hZERhdGEodHlwZTogc3RyaW5nLCBkb3dubG9hZEZpbGVOYW1lOiBzdHJpbmcsIGlkcz86IG51bWJlcltdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgZmlsdGVyUGFyYW1ldGVycywgZGlzYWJsZWQgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwYXJhbWV0ZXJzID0ge1xuICAgICAgICAgICAgLi4uZmlsdGVyUGFyYW1ldGVycyxcbiAgICAgICAgICAgIHJ1bGVzOiBmaWx0ZXJQYXJhbWV0ZXJzPy5ydWxlcyA/IFsuLi5maWx0ZXJQYXJhbWV0ZXJzLnJ1bGVzXSA6IFtdXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKGlkcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICBwYXJhbWV0ZXJzLnJ1bGVzLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICBjb25kaXRpb246IFwiYW5kXCIsXG4gICAgICAgICAgICAgICAgICAgIHJ1bGVzOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IFwiaWRcIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb246IEZpbHRlck9wZXJhdG9yVHlwZXMuSW4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU6IGlkc1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZ2V0RmlsZSh0eXBlLCB0aGlzLnN0b3JlLmdldFBhcmFtZXRlcnMocGFyYW1ldGVycykpKTtcbiAgICAgICAgICAgIEZpbGVVdGlscy5kb3dubG9hZEZpbGUoYCR7ZG93bmxvYWRGaWxlTmFtZX0uJHt0eXBlfWAsIHJlc3VsdCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RXJyb3IoZSk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHByaW50RGF0YSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzLCBkaXNhYmxlZCB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmZpbHRlclNlcnZpY2UuZ2V0UHJpbnRhYmxlSHRtbCh0aGlzLnN0b3JlLmdldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVycykpKTtcbiAgICAgICAgICAgIEZpbGVVdGlscy5vcGVuUHJpbnRhYmxlV2luZG93KHJlc3VsdCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0RXJyb3IoZSk7XG4gICAgICAgIH0gZmluYWxseSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgcmVsb2FkIHNob3cgbm90IGJlIHBhc3NlZCwgYW5kIHRoZSBjYWxsZXIgc2hvdWxkIGluc3RlYWQgY2FsbCBgZmlsdGVyKClgIGFmdGVyIGNhbGxpbmcgdGhpcyBmdW5jdGlvbi5cbiAgICAgKi9cbiAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6dW5pZmllZC1zaWduYXR1cmVzXG4gICAgcHVibGljIHNldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCByZWxvYWQ6IGJvb2xlYW4pOiB2b2lkO1xuICAgIHB1YmxpYyBzZXRQYXJhbWV0ZXJzKGZpbHRlclBhcmFtZXRlcnM6IEZpbHRlclBhcmFtZXRlcnNNb2RlbCk6IHZvaWQ7XG4gICAgcHVibGljIHNldFBhcmFtZXRlcnMoZmlsdGVyUGFyYW1ldGVyczogRmlsdGVyUGFyYW1ldGVyc01vZGVsLCByZWxvYWQ/OiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2V0UGFyYW1ldGVycyhmaWx0ZXJQYXJhbWV0ZXJzKTtcbiAgICAgICAgaWYgKHJlbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5maWx0ZXIoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyByZXNldFBhZ2luZygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIHRoaXMuc2V0UGFyYW1ldGVycyh7XG4gICAgICAgICAgICAuLi5maWx0ZXJQYXJhbWV0ZXJzLFxuICAgICAgICAgICAgc3RhcnQ6IDBcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5yZXNldFJlc3VsdCh0cnVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UXVlcnlQYXJhbXMocXVlcnlQYXJhbXM6IFF1ZXJ5UGFyYW1zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHsgcXVlcnlQYXJhbXMgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHNldEJhc2VSdWxlcyhydWxlOiAoUXVlcnlSdWxlTW9kZWwgfCBRdWVyeU1vZGVsKVtdLCByZWxvYWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgYmFzZVJ1bGVzOiBydWxlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChyZWxvYWQpIHtcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UnVsZXMocnVsZXM6IFF1ZXJ5TW9kZWwgfCBRdWVyeU1vZGVsW10pOiB2b2lkIHtcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHJ1bGVzKSkge1xuICAgICAgICAgICAgcnVsZXMgPSBbcnVsZXNdO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IG5ld1J1bGVzOiBGaWx0ZXJQYXJhbWV0ZXJzTW9kZWwgPSB7XG4gICAgICAgICAgICBvcmRlcjogZmlsdGVyUGFyYW1ldGVycy5vcmRlcixcbiAgICAgICAgICAgIGZhbGxiYWNrT3JkZXI6IGZpbHRlclBhcmFtZXRlcnMuZmFsbGJhY2tPcmRlcixcbiAgICAgICAgICAgIHN0YXJ0OiAwLFxuICAgICAgICAgICAgbGVuZ3RoOiBmaWx0ZXJQYXJhbWV0ZXJzLmxlbmd0aCxcbiAgICAgICAgICAgIGRhdGE6IGZpbHRlclBhcmFtZXRlcnMuZGF0YSxcbiAgICAgICAgICAgIHJ1bGVzXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5zZXRQYXJhbWV0ZXJzKG5ld1J1bGVzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBzZXJ0UnVsZShpZDogc3RyaW5nLCBuZXdSdWxlOiBSdWxlTW9kZWwpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgeyBmaWx0ZXJQYXJhbWV0ZXJzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRRdWVyeSA9IGZpbHRlclBhcmFtZXRlcnMucnVsZXM/LlswXTtcbiAgICAgICAgY29uc3QgcnVsZTogUXVlcnlSdWxlTW9kZWwgPSB7XG4gICAgICAgICAgICBpZCxcbiAgICAgICAgICAgIC4uLm5ld1J1bGVcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgcXVlcnk6IFF1ZXJ5TW9kZWwgPSB7IHJ1bGVzOiBbcnVsZV0sIGNvbmRpdGlvbjogXCJhbmRcIiB9O1xuICAgICAgICBpZiAoIWN1cnJlbnRRdWVyeSB8fCBjdXJyZW50UXVlcnkucnVsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLnNldFJ1bGVzKHF1ZXJ5KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG9sZFJ1bGUgPSBjdXJyZW50UXVlcnkucnVsZXMuZmluZCgocikgPT4gKHIgYXMgUXVlcnlSdWxlTW9kZWwpLmlkID09PSBpZCkgYXMgUXVlcnlSdWxlTW9kZWw7XG4gICAgICAgIGxldCBuZXdSdWxlcyA9IGN1cnJlbnRRdWVyeS5ydWxlcztcbiAgICAgICAgaWYgKG9sZFJ1bGUpIHtcbiAgICAgICAgICAgIGlmIChuZXdSdWxlKSB7XG4gICAgICAgICAgICAgICAgLy8gQXJyYXkgcmVwbGFjZVxuICAgICAgICAgICAgICAgIG5ld1J1bGVzID0gW1xuICAgICAgICAgICAgICAgICAgICAuLi5jdXJyZW50UXVlcnkucnVsZXMuc2xpY2UoMCwgY3VycmVudFF1ZXJ5LnJ1bGVzLmluZGV4T2Yob2xkUnVsZSkpLFxuICAgICAgICAgICAgICAgICAgICBydWxlLFxuICAgICAgICAgICAgICAgICAgICAuLi5jdXJyZW50UXVlcnkucnVsZXMuc2xpY2UoY3VycmVudFF1ZXJ5LnJ1bGVzLmluZGV4T2Yob2xkUnVsZSkgKyAxLCBjdXJyZW50UXVlcnkucnVsZXMubGVuZ3RoKVxuICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIG5ld1J1bGVzID0gY3VycmVudFF1ZXJ5LnJ1bGVzLmZpbHRlcigocikgPT4gKHIgYXMgUXVlcnlSdWxlTW9kZWwpLmlkICE9PSBpZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdSdWxlcyA9IFsuLi5uZXdSdWxlcywgcnVsZV07XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXRSdWxlcyh7XG4gICAgICAgICAgICBjb25kaXRpb246IGN1cnJlbnRRdWVyeS5jb25kaXRpb24sXG4gICAgICAgICAgICBydWxlczogbmV3UnVsZXNcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZVJ1bGUoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IGZpbHRlclBhcmFtZXRlcnMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgY3VycmVudFF1ZXJ5ID0gZmlsdGVyUGFyYW1ldGVycy5ydWxlcz8uWzBdO1xuICAgICAgICBjb25zdCBvbGRSdWxlID0gY3VycmVudFF1ZXJ5LnJ1bGVzLmZpbmQoKHIpID0+IChyIGFzIFF1ZXJ5UnVsZU1vZGVsKS5pZCA9PT0gaWQpIGFzIFF1ZXJ5UnVsZU1vZGVsO1xuICAgICAgICBpZiAoIW9sZFJ1bGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5ld1J1bGVzID0gY3VycmVudFF1ZXJ5LnJ1bGVzLmZpbHRlcigocikgPT4gKHIgYXMgUXVlcnlSdWxlTW9kZWwpLmlkICE9PSBpZCk7XG4gICAgICAgIHRoaXMuc2V0UnVsZXMoe1xuICAgICAgICAgICAgY29uZGl0aW9uOiBjdXJyZW50UXVlcnkuY29uZGl0aW9uLFxuICAgICAgICAgICAgcnVsZXM6IG5ld1J1bGVzXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRWYWx1ZSh2YWx1ZTogYW55LCBvcHRzPzogQWRkRW50aXRpZXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuYWRkVmFsdWUodmFsdWUsIG9wdHMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRWYWx1ZXModmFsdWU6IGFueVtdLCBvcHRzPzogQWRkRW50aXRpZXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuYWRkVmFsdWVzKHZhbHVlLCBvcHRzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBzZXJ0VmFsdWUodmFsdWU6IGFueSwga2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0VmFsdWUodmFsdWUsIGtleSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwc2VydFZhbHVlcyh2YWx1ZXM6IGFueVtdLCBrZXk/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cHNlcnRWYWx1ZXModmFsdWVzLCBrZXkpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVWYWx1ZSh2YWx1ZTogYW55W10sIGtleT86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZVZhbHVlKHZhbHVlLCBrZXkpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVWYWx1ZXModmFsdWVzOiBhbnlbXSwga2V5Pzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUucmVtb3ZlVmFsdWVzKHZhbHVlcywga2V5KTtcbiAgICB9XG5cbiAgICBAdHJhbnNhY3Rpb24oKVxuICAgIHB1YmxpYyByZXNldFJlc3VsdCh3YWl0Rm9yTmV4dEZpbHRlcjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoIXdhaXRGb3JOZXh0RmlsdGVyKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICAgICAgZmlsdGVyUmVzdWx0OiBudWxsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0KFtdKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgICAgICByZXNldFJlc3VsdDogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LW9wdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2RpcmVjdGl2ZS9zZWxlY3RhYmxlLWxpc3QvbW9kZWwvc2VsZWN0YWJsZS1saXN0LW9wdGlvbnMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucyB7XG4gICAgaWRLZXk/OiBzdHJpbmc7XG4gICAgcHJlbG9hZFdpbmRvdz86IG51bWJlcjtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LW9wdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2RpcmVjdGl2ZS9zZWxlY3RhYmxlLWxpc3QvbW9kZWwvc2VsZWN0YWJsZS1saXN0LW9wdGlvbnMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucyB7XG4gICAgaWRLZXk/OiBzdHJpbmc7XG4gICAgcHJlbG9hZFdpbmRvdz86IG51bWJlcjtcbiAgICBkaXNhYmxlUXVlcnlQYXJhbXM/OiBib29sZWFuO1xufVxuIl19
@@ -20,6 +20,9 @@ export class NiceSelectableListDirective {
20
20
  this.unsubscribeQuerySub$ = new Subject();
21
21
  }
22
22
  ngOnInit() {
23
+ if (this.options?.disableQueryParams) {
24
+ return;
25
+ }
23
26
  combineLatest([
24
27
  this.route.queryParams.pipe(map((params) => params.selection), distinct()),
25
28
  this.route.queryParams.pipe(map((params) => params.selected), distinct())
@@ -52,7 +55,7 @@ export class NiceSelectableListDirective {
52
55
  }
53
56
  if ("state" in changes) {
54
57
  this.service.setState(this.state);
55
- this.stateService = this.selectableListService.withState(this.state);
58
+ this.stateService = this.selectableListService.withState(this.state, this.options);
56
59
  this.stateQuery = this.selectableListService.query(this.state);
57
60
  this.listenOnStateChanges();
58
61
  }
@@ -88,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.3", ngImpor
88
91
  type: ContentChildren,
89
92
  args: [NiceSelectableListCheckboxDirective, { descendants: true }]
90
93
  }] } });
91
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvZGlyZWN0aXZlL3NlbGVjdGFibGUtbGlzdC9zZWxlY3RhYmxlLWxpc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWdDLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDNUksT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUczRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7QUFNNUUsa0RBQWtEO0FBQ2xELE1BQU0sT0FBTywyQkFBMkI7SUFnQnBDLFlBQ1ksT0FBcUMsRUFDckMscUJBQWdELEVBQ2hELEtBQXFCO1FBRnJCLFlBQU8sR0FBUCxPQUFPLENBQThCO1FBQ3JDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBMkI7UUFDaEQsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFUekIsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ3RDLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFTaEQsQ0FBQztJQUVHLFFBQVE7UUFDWCxhQUFhLENB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SUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUM7WUFDL0IsYUFBYSxDQUFDLEdBQUc7WUFDakIsYUFBYSxDQUFDLE1BQU07WUFDcEIsYUFBYSxDQUFDLEdBQUc7U0FDcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pELElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3BJLENBQUM7O3dIQWxGUSwyQkFBMkI7NEdBQTNCLDJCQUEyQiwrRkFIekIsQ0FBQyw0QkFBNEIsQ0FBQyxxREFVeEIsbUNBQW1DOzJGQVAzQywyQkFBMkI7a0JBTHZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsU0FBUyxFQUFFLENBQUMsNEJBQTRCLENBQUM7aUJBQzVDO3dMQUlVLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSVUsVUFBVTtzQkFEekIsZUFBZTt1QkFBQyxtQ0FBbUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFF1ZXJ5TGlzdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7IEVudGl0eUFjdGlvbnMgfSBmcm9tIFwiQGRhdG9yYW1hL2FraXRhXCI7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdCwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBtYXAsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucyB9IGZyb20gXCIuL21vZGVsL3NlbGVjdGFibGUtbGlzdC1vcHRpb25zLm1vZGVsXCI7XG5pbXBvcnQgeyBTZWxlY3RhYmxlTGlzdENvbnRlbnRTZXJ2aWNlIH0gZnJvbSBcIi4vcHJvdmlkZXJzL3NlbGVjdGFibGUtbGlzdC1jb250ZW50LnNlcnZpY2VcIjtcbmltcG9ydCB7IE5pY2VTZWxlY3RhYmxlTGlzdENoZWNrYm94RGlyZWN0aXZlIH0gZnJvbSBcIi4vc2VsZWN0YWJsZS1saXN0LWNoZWNrYm94LmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0U3RhdGVRdWVyeSB9IGZyb20gXCIuL3N0b3JlL3NlbGVjdGFibGUtbGlzdC1zdGF0ZS5xdWVyeVwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0U3RhdGVTZXJ2aWNlIH0gZnJvbSBcIi4vc3RvcmUvc2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5pY2VTZWxlY3RhYmxlTGlzdFNlcnZpY2UgfSBmcm9tIFwiLi9zdG9yZS9zZWxlY3RhYmxlLWxpc3Quc2VydmljZVwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogXCJbbmljZVNlbGVjdGFibGVMaXN0XVwiLFxuICAgIHByb3ZpZGVyczogW1NlbGVjdGFibGVMaXN0Q29udGVudFNlcnZpY2VdXG59KVxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmRpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBOaWNlU2VsZWN0YWJsZUxpc3REaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzdGF0ZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgb3B0aW9uczogTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucztcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oTmljZVNlbGVjdGFibGVMaXN0Q2hlY2tib3hEaXJlY3RpdmUsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2hlY2tib3hlczogUXVlcnlMaXN0PE5pY2VTZWxlY3RhYmxlTGlzdENoZWNrYm94RGlyZWN0aXZlPjtcblxuICAgIHByaXZhdGUgdW5zdWJzY3JpYmVBbGwkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBwcml2YXRlIHVuc3Vic2NyaWJlUXVlcnlTdWIkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByaXZhdGUgc3RhdGVTZXJ2aWNlITogTmljZVNlbGVjdGFibGVMaXN0U3RhdGVTZXJ2aWNlPGFueT47XG4gICAgcHJpdmF0ZSBzdGF0ZVF1ZXJ5ITogTmljZVNlbGVjdGFibGVMaXN0U3RhdGVRdWVyeTxhbnk+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgc2VydmljZTogU2VsZWN0YWJsZUxpc3RDb250ZW50U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBzZWxlY3RhYmxlTGlzdFNlcnZpY2U6IE5pY2VTZWxlY3RhYmxlTGlzdFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgIHRoaXMucm91dGUucXVlcnlQYXJhbXMucGlwZShtYXAoKHBhcmFtcykgPT4gcGFyYW1zLnNlbGVjdGlvbiksIGRpc3RpbmN0KCkpLFxuICAgICAgICAgICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5waXBlKG1hcCgocGFyYW1zKSA9PiBwYXJhbXMuc2VsZWN0ZWQpLCBkaXN0aW5jdCgpKVxuICAgICAgICBdKS5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlQWxsJCkpLnN1YnNjcmliZSgoW3NlbGVjdGlvbiwgc2VsZWN0ZWRdOiBbc3RyaW5nIHwgc3RyaW5nW10sIHN0cmluZ10pID0+IHtcbiAgICAgICAgICAgIGlmICghc2VsZWN0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZVNlcnZpY2Uuc2V0UXVlcnlQYXJhbXMoKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IG5ld1NlbGVjdGlvbiA9IHR5cGVvZiBzZWxlY3Rpb24gPT09IFwic3RyaW5nXCIgPyBbK3NlbGVjdGlvbl0gOiBzZWxlY3Rpb24ubWFwKChzKSA9PiArcyk7XG4gICAgICAgICAgICBjb25zdCBuZXdTZWxlY3RlZCA9IHNlbGVjdGVkID8gK3NlbGVjdGVkIDogbnVsbDtcblxuICAgICAgICAgICAgY29uc3QgeyBpZHMsIGFjdGl2ZSB9ID0gdGhpcy5zdGF0ZVF1ZXJ5LmdldFZhbHVlKCk7XG4gICAgICAgICAgICBpZiAoIWlkcy5sZW5ndGggfHwgIWlkcy5ldmVyeSgoaWQpID0+IG5ld1NlbGVjdGlvbi5pbmNsdWRlcyhpZCkpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZVNlcnZpY2Uuc2V0RW50aXRpZXMobmV3U2VsZWN0aW9uLCBuZXdTZWxlY3RlZCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAobmV3U2VsZWN0ZWQgJiYgYWN0aXZlICE9PSBuZXdTZWxlY3RlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RhdGVTZXJ2aWNlLnNldEFjdGl2ZShuZXdTZWxlY3RlZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZUFsbCQubmV4dCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlQWxsJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlUXVlcnlTdWIkLm5leHQoKTtcbiAgICAgICAgdGhpcy51bnN1YnNjcmliZVF1ZXJ5U3ViJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChcIm9wdGlvbnNcIiBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2Uuc2V0T3B0aW9ucyh0aGlzLm9wdGlvbnMpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFwic3RhdGVcIiBpbiBjaGFuZ2VzKSB7XG4gICAgICAgICAgICB0aGlzLnNlcnZpY2Uuc2V0U3RhdGUodGhpcy5zdGF0ZSk7XG4gICAgICAgICAgICB0aGlzLnN0YXRlU2VydmljZSA9IHRoaXMuc2VsZWN0YWJsZUxpc3RTZXJ2aWNlLndpdGhTdGF0ZTxhbnk+KHRoaXMuc3RhdGUpO1xuICAgICAgICAgICAgdGhpcy5zdGF0ZVF1ZXJ5ID0gdGhpcy5zZWxlY3RhYmxlTGlzdFNlcnZpY2UucXVlcnkodGhpcy5zdGF0ZSk7XG4gICAgICAgICAgICB0aGlzLmxpc3Rlbk9uU3RhdGVDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlcnZpY2Uuc2V0Q2hlY2tib3hlcyh0aGlzLmNoZWNrYm94ZXMpO1xuICAgIH1cblxuICAgIHByaXZhdGUgbGlzdGVuT25TdGF0ZUNoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVRdWVyeVN1YiQubmV4dCgpO1xuICAgICAgICB0aGlzLnN0YXRlUXVlcnkuc2VsZWN0RW50aXR5QWN0aW9uKFtcbiAgICAgICAgICAgIEVudGl0eUFjdGlvbnMuQWRkLFxuICAgICAgICAgICAgRW50aXR5QWN0aW9ucy5SZW1vdmUsXG4gICAgICAgICAgICBFbnRpdHlBY3Rpb25zLlNldFxuICAgICAgICBdKS5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlUXVlcnlTdWIkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVTZXJ2aWNlLnNldFF1ZXJ5UGFyYW1zKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc3RhdGVRdWVyeS5zZWxlY3RBY3RpdmVJZCgpLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmVRdWVyeVN1YiQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5zdGF0ZVNlcnZpY2Uuc2V0UXVlcnlQYXJhbXMoKSk7XG4gICAgfVxufVxuIl19
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25pY2UtZGF0YS1maWx0ZXIta2l0L3NyYy9saWIvZGlyZWN0aXZlL3NlbGVjdGFibGUtbGlzdC9zZWxlY3RhYmxlLWxpc3QuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWdDLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDNUksT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDeEQsT0FBTyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUMzRixPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUczRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7QUFNNUUsa0RBQWtEO0FBQ2xELE1BQU0sT0FBTywyQkFBMkI7SUFnQnBDLFlBQ1ksT0FBcUMsRUFDckMscUJBQWdELEVBQ2hELEtBQXFCO1FBRnJCLFlBQU8sR0FBUCxPQUFPLENBQThCO1FBQ3JDLDBCQUFxQixHQUFyQixxQkFBcUIsQ0FBMkI7UUFDaEQsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFUekIsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ3RDLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFTaEQsQ0FBQztJQUVHLFFBQVE7UUFDWCxJQUFJLElB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QUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFTyxvQkFBb0I7UUFDeEIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsa0JBQWtCLENBQUM7WUFDL0IsYUFBYSxDQUFDLEdBQUc7WUFDakIsYUFBYSxDQUFDLE1BQU07WUFDcEIsYUFBYSxDQUFDLEdBQUc7U0FDcEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3pELElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO0lBQ3BJLENBQUM7O3dIQXRGUSwyQkFBMkI7NEdBQTNCLDJCQUEyQiwrRkFIekIsQ0FBQyw0QkFBNEIsQ0FBQyxxREFVeEIsbUNBQW1DOzJGQVAzQywyQkFBMkI7a0JBTHZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsU0FBUyxFQUFFLENBQUMsNEJBQTRCLENBQUM7aUJBQzVDO3dMQUlVLEtBQUs7c0JBRFgsS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSVUsVUFBVTtzQkFEekIsZUFBZTt1QkFBQyxtQ0FBbUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBPbkluaXQsIFF1ZXJ5TGlzdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcbmltcG9ydCB7IEVudGl0eUFjdGlvbnMgfSBmcm9tIFwiQGRhdG9yYW1hL2FraXRhXCI7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdCwgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBtYXAsIHRha2VVbnRpbCB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucyB9IGZyb20gXCIuL21vZGVsL3NlbGVjdGFibGUtbGlzdC1vcHRpb25zLm1vZGVsXCI7XG5pbXBvcnQgeyBTZWxlY3RhYmxlTGlzdENvbnRlbnRTZXJ2aWNlIH0gZnJvbSBcIi4vcHJvdmlkZXJzL3NlbGVjdGFibGUtbGlzdC1jb250ZW50LnNlcnZpY2VcIjtcbmltcG9ydCB7IE5pY2VTZWxlY3RhYmxlTGlzdENoZWNrYm94RGlyZWN0aXZlIH0gZnJvbSBcIi4vc2VsZWN0YWJsZS1saXN0LWNoZWNrYm94LmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0U3RhdGVRdWVyeSB9IGZyb20gXCIuL3N0b3JlL3NlbGVjdGFibGUtbGlzdC1zdGF0ZS5xdWVyeVwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0U3RhdGVTZXJ2aWNlIH0gZnJvbSBcIi4vc3RvcmUvc2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5pY2VTZWxlY3RhYmxlTGlzdFNlcnZpY2UgfSBmcm9tIFwiLi9zdG9yZS9zZWxlY3RhYmxlLWxpc3Quc2VydmljZVwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogXCJbbmljZVNlbGVjdGFibGVMaXN0XVwiLFxuICAgIHByb3ZpZGVyczogW1NlbGVjdGFibGVMaXN0Q29udGVudFNlcnZpY2VdXG59KVxuLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOmRpcmVjdGl2ZS1jbGFzcy1zdWZmaXhcbmV4cG9ydCBjbGFzcyBOaWNlU2VsZWN0YWJsZUxpc3REaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzLCBBZnRlckNvbnRlbnRJbml0IHtcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzdGF0ZTogc3RyaW5nO1xuXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgb3B0aW9uczogTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucztcblxuICAgIEBDb250ZW50Q2hpbGRyZW4oTmljZVNlbGVjdGFibGVMaXN0Q2hlY2tib3hEaXJlY3RpdmUsIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2hlY2tib3hlczogUXVlcnlMaXN0PE5pY2VTZWxlY3RhYmxlTGlzdENoZWNrYm94RGlyZWN0aXZlPjtcblxuICAgIHByaXZhdGUgdW5zdWJzY3JpYmVBbGwkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICBwcml2YXRlIHVuc3Vic2NyaWJlUXVlcnlTdWIkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHByaXZhdGUgc3RhdGVTZXJ2aWNlITogTmljZVNlbGVjdGFibGVMaXN0U3RhdGVTZXJ2aWNlPGFueT47XG4gICAgcHJpdmF0ZSBzdGF0ZVF1ZXJ5ITogTmljZVNlbGVjdGFibGVMaXN0U3RhdGVRdWVyeTxhbnk+O1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgc2VydmljZTogU2VsZWN0YWJsZUxpc3RDb250ZW50U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBzZWxlY3RhYmxlTGlzdFNlcnZpY2U6IE5pY2VTZWxlY3RhYmxlTGlzdFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5vcHRpb25zPy5kaXNhYmxlUXVlcnlQYXJhbXMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5waXBlKG1hcCgocGFyYW1zKSA9PiBwYXJhbXMuc2VsZWN0aW9uKSwgZGlzdGluY3QoKSksXG4gICAgICAgICAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1zLnBpcGUobWFwKChwYXJhbXMpID0+IHBhcmFtcy5zZWxlY3RlZCksIGRpc3RpbmN0KCkpXG4gICAgICAgIF0pLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmVBbGwkKSkuc3Vic2NyaWJlKChbc2VsZWN0aW9uLCBzZWxlY3RlZF06IFtzdHJpbmcgfCBzdHJpbmdbXSwgc3RyaW5nXSkgPT4ge1xuICAgICAgICAgICAgaWYgKCFzZWxlY3Rpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXRlU2VydmljZS5zZXRRdWVyeVBhcmFtcygpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgbmV3U2VsZWN0aW9uID0gdHlwZW9mIHNlbGVjdGlvbiA9PT0gXCJzdHJpbmdcIiA/IFsrc2VsZWN0aW9uXSA6IHNlbGVjdGlvbi5tYXAoKHMpID0+ICtzKTtcbiAgICAgICAgICAgIGNvbnN0IG5ld1NlbGVjdGVkID0gc2VsZWN0ZWQgPyArc2VsZWN0ZWQgOiBudWxsO1xuXG4gICAgICAgICAgICBjb25zdCB7IGlkcywgYWN0aXZlIH0gPSB0aGlzLnN0YXRlUXVlcnkuZ2V0VmFsdWUoKTtcbiAgICAgICAgICAgIGlmICghaWRzLmxlbmd0aCB8fCAhaWRzLmV2ZXJ5KChpZCkgPT4gbmV3U2VsZWN0aW9uLmluY2x1ZGVzKGlkKSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YXRlU2VydmljZS5zZXRFbnRpdGllcyhuZXdTZWxlY3Rpb24sIG5ld1NlbGVjdGVkKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChuZXdTZWxlY3RlZCAmJiBhY3RpdmUgIT09IG5ld1NlbGVjdGVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGF0ZVNlcnZpY2Uuc2V0QWN0aXZlKG5ld1NlbGVjdGVkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlQWxsJC5uZXh0KCk7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVBbGwkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMudW5zdWJzY3JpYmVRdWVyeVN1YiQubmV4dCgpO1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlUXVlcnlTdWIkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKFwib3B0aW9uc1wiIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5zZXRPcHRpb25zKHRoaXMub3B0aW9ucyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXCJzdGF0ZVwiIGluIGNoYW5nZXMpIHtcbiAgICAgICAgICAgIHRoaXMuc2VydmljZS5zZXRTdGF0ZSh0aGlzLnN0YXRlKTtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVTZXJ2aWNlID0gdGhpcy5zZWxlY3RhYmxlTGlzdFNlcnZpY2Uud2l0aFN0YXRlPGFueT4odGhpcy5zdGF0ZSwgdGhpcy5vcHRpb25zKTtcbiAgICAgICAgICAgIHRoaXMuc3RhdGVRdWVyeSA9IHRoaXMuc2VsZWN0YWJsZUxpc3RTZXJ2aWNlLnF1ZXJ5KHRoaXMuc3RhdGUpO1xuICAgICAgICAgICAgdGhpcy5saXN0ZW5PblN0YXRlQ2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXJ2aWNlLnNldENoZWNrYm94ZXModGhpcy5jaGVja2JveGVzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxpc3Rlbk9uU3RhdGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVuc3Vic2NyaWJlUXVlcnlTdWIkLm5leHQoKTtcbiAgICAgICAgdGhpcy5zdGF0ZVF1ZXJ5LnNlbGVjdEVudGl0eUFjdGlvbihbXG4gICAgICAgICAgICBFbnRpdHlBY3Rpb25zLkFkZCxcbiAgICAgICAgICAgIEVudGl0eUFjdGlvbnMuUmVtb3ZlLFxuICAgICAgICAgICAgRW50aXR5QWN0aW9ucy5TZXRcbiAgICAgICAgXSkucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZVF1ZXJ5U3ViJCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnN0YXRlU2VydmljZS5zZXRRdWVyeVBhcmFtcygpO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnN0YXRlUXVlcnkuc2VsZWN0QWN0aXZlSWQoKS5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlUXVlcnlTdWIkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuc3RhdGVTZXJ2aWNlLnNldFF1ZXJ5UGFyYW1zKCkpO1xuICAgIH1cbn1cbiJdfQ==
@@ -13,6 +13,9 @@ export class NiceSelectableListStateService {
13
13
  get preloadedWindow() {
14
14
  return this.options?.preloadWindow ?? 2;
15
15
  }
16
+ get queryParamsDisabled() {
17
+ return this.options?.disableQueryParams ?? false;
18
+ }
16
19
  setActive(entity) {
17
20
  this.store.setActive(entity[this.idKey]);
18
21
  }
@@ -201,10 +204,12 @@ export class NiceSelectableListStateService {
201
204
  };
202
205
  }
203
206
  setQueryParams() {
204
- this.router.navigate([], {
205
- queryParams: this.generateQueryParams(),
206
- queryParamsHandling: "merge"
207
- });
207
+ if (!this.queryParamsDisabled) {
208
+ this.router.navigate([], {
209
+ queryParams: this.generateQueryParams(),
210
+ queryParamsHandling: "merge"
211
+ });
212
+ }
208
213
  }
209
214
  }
210
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2RpcmVjdGl2ZS9zZWxlY3RhYmxlLWxpc3Qvc3RvcmUvc2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQU1yRSxNQUFNLE9BQU8sOEJBQThCO0lBU3ZDLFlBQ1ksS0FBZ0QsRUFDaEQsS0FBcUIsRUFDckIsTUFBYyxFQUNkLGNBQXVELEVBQ3ZELE9BQW1DO1FBSm5DLFVBQUssR0FBTCxLQUFLLENBQTJDO1FBQ2hELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxtQkFBYyxHQUFkLGNBQWMsQ0FBeUM7UUFDdkQsWUFBTyxHQUFQLE9BQU8sQ0FBNEI7SUFDNUMsQ0FBQztJQWRKLElBQVcsS0FBSztRQUNaLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxLQUFLLElBQUksSUFBSSxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFXLGVBQWU7UUFDdEIsT0FBTyxJQUFJLENBQUMsT0FBTyxFQUFFLGFBQWEsSUFBSSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQVVNLFNBQVMsQ0FBQyxNQUFTO1FBQ3RCLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sUUFBUSxDQUFDLFVBQWtCO1FBQzlCLE1BQU0sRUFBRSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3RDLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENB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QyxDQUFDLElBQUk7WUFDbEMsUUFBUSxFQUFFLE1BQU0sSUFBSSxJQUFJO1NBQzNCLENBQUM7SUFDTixDQUFDO0lBRU0sY0FBYztRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUU7WUFDckIsV0FBVyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUN2QyxtQkFBbUIsRUFBRSxPQUFPO1NBQy9CLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XG5pbXBvcnQgeyBhcnJheUFkZCwgYXJyYXlSZW1vdmUsIEVudGl0eVN0b3JlIH0gZnJvbSBcIkBkYXRvcmFtYS9ha2l0YVwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0TG9hZEFsbEVudGl0aWVzT3B0aW9ucyB9IGZyb20gXCIuLi9tb2RlbC9sb2FkLWFsbC1lbnRpdGllcy1vcHRpb25zLm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlU2VsZWN0YWJsZUxpc3RPcHRpb25zIH0gZnJvbSBcIi4uL21vZGVsL3NlbGVjdGFibGUtbGlzdC1vcHRpb25zLm1vZGVsXCI7XG5pbXBvcnQgeyBOaWNlUHJlbG9hZFNlbGVjdGVkRW50aXRpZXNQcm92aWRlciB9IGZyb20gXCIuLi9wcm92aWRlcnMvcHJlbG9hZC1zZWxlY3RlZC1lbnRpdGllcy5wcm92aWRlclwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0U3RhdGUgfSBmcm9tIFwiLi9zZWxlY3RhYmxlLWxpc3Quc3RhdGVcIjtcblxuZXhwb3J0IGNsYXNzIE5pY2VTZWxlY3RhYmxlTGlzdFN0YXRlU2VydmljZTxULCBJRCA9IGFueT4ge1xuICAgIHB1YmxpYyBnZXQgaWRLZXkoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3B0aW9ucz8uaWRLZXkgPz8gXCJpZFwiO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgcHJlbG9hZGVkV2luZG93KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM/LnByZWxvYWRXaW5kb3cgPz8gMjtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBzdG9yZTogRW50aXR5U3RvcmU8TmljZVNlbGVjdGFibGVMaXN0U3RhdGU8YW55Pj4sXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcml2YXRlIHByZWxvYWRTZXJ2aWNlPzogTmljZVByZWxvYWRTZWxlY3RlZEVudGl0aWVzUHJvdmlkZXI8VD4sXG4gICAgICAgIHByaXZhdGUgb3B0aW9ucz86IE5pY2VTZWxlY3RhYmxlTGlzdE9wdGlvbnNcbiAgICApIHt9XG5cbiAgICBwdWJsaWMgc2V0QWN0aXZlKGVudGl0eTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnNldEFjdGl2ZShlbnRpdHlbdGhpcy5pZEtleV0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRJbmRleChpZGVudGlmaWVyOiBudW1iZXIpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB7IGlkcyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBpbmRleCA9IGlkcy5pbmRleE9mKGlkZW50aWZpZXIpO1xuICAgICAgICByZXR1cm4gaW5kZXggKyAxO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZWxlY3RBbGwob3B0aW9ucz86IE5pY2VTZWxlY3RhYmxlTGlzdExvYWRBbGxFbnRpdGllc09wdGlvbnMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgaWYgKCF0aGlzLnByZWxvYWRTZXJ2aWNlKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgICAgIGFsbFNlbGVjdGVkOiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGlkcyA9IGF3YWl0IHRoaXMucHJlbG9hZFNlcnZpY2UubG9hZEFsbEVudGl0aWVzKG9wdGlvbnMpO1xuICAgICAgICB0aGlzLnN0b3JlLnNldChpZHMubWFwKChpZCkgPT4gKHtcbiAgICAgICAgICAgIFt0aGlzLmlkS2V5XTogaWQsXG4gICAgICAgICAgICBsb2FkZWQ6IGZhbHNlXG4gICAgICAgIH0pKSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIGFsbFNlbGVjdGVkOiB0cnVlXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZWxlY3QoaWQ6IElEKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKChzdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgIHVuc2VsZWN0ZWRFbnRpdHk6IGFycmF5UmVtb3ZlKHN0YXRlLnVuc2VsZWN0ZWRFbnRpdHksIGlkIGFzIGFueSlcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRoaXMuc3RvcmUuYWRkKHtcbiAgICAgICAgICAgIFt0aGlzLmlkS2V5XTogaWQsXG4gICAgICAgICAgICBsb2FkZWQ6IGZhbHNlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLnByZWxvYWRTZXJ2aWNlKSB7XG4gICAgICAgICAgICBjb25zdCBlbnRpdHkgPSBhd2FpdCB0aGlzLnByZWxvYWRTZXJ2aWNlLmxvYWRFbnRpdHlCeUlkKGlkIGFzIGFueSk7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnVwc2VydChpZCBhcyBhbnksIHtcbiAgICAgICAgICAgICAgICAuLi5lbnRpdHksXG4gICAgICAgICAgICAgICAgbG9hZGVkOiB0cnVlXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZWxlY3RNYW55KGlkczogSURbXSwgYWN0aXZlOiBJRCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLnN0b3JlLmFkZChcbiAgICAgICAgICAgIGlkcy5tYXAoKGlkKSA9PiAoe1xuICAgICAgICAgICAgICAgIFt0aGlzLmlkS2V5XTogaWQsXG4gICAgICAgICAgICAgICAgbG9hZGVkOiBmYWxzZVxuICAgICAgICAgICAgfSkpXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGFjdGl2ZSkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRBY3RpdmUoYWN0aXZlKTtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubG9hZEVudGl0aWVzKHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNlbGVjdEVudGl0eShlbnRpdHk6IFQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoKHN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgdW5zZWxlY3RlZEVudGl0eTogYXJyYXlSZW1vdmUoc3RhdGUudW5zZWxlY3RlZEVudGl0eSwgZW50aXR5W3RoaXMuaWRLZXldKVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGhpcy5zdG9yZS51cHNlcnQoZW50aXR5W3RoaXMuaWRLZXldLCB7IC4uLmVudGl0eSwgbG9hZGVkOiB0cnVlIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLnByZWxvYWRTZXJ2aWNlKSB7XG4gICAgICAgICAgICBjb25zdCBwcmVsb2FkZWRFbnRpdHkgPSBhd2FpdCB0aGlzLnByZWxvYWRTZXJ2aWNlLnJlbG9hZEVudGl0eShlbnRpdHkpO1xuICAgICAgICAgICAgdGhpcy5zdG9yZS51cHNlcnQocHJlbG9hZGVkRW50aXR5W3RoaXMuaWRLZXldLCB7IC4uLnByZWxvYWRlZEVudGl0eSwgbG9hZGVkOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNlbGVjdE1hbnlFbnRpdGllcyhlbnRpdGllczogVFtdKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBzZXJ0TWFueShlbnRpdGllcy5tYXAoKGVudGl0eSkgPT4gKHsgLi4uZW50aXR5LCBsb2FkZWQ6IHRydWUgfSkpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHByZWxvYWRlZEVudGl0aWVzID0gYXdhaXQgdGhpcy5wcmVsb2FkU2VydmljZS5yZWxvYWRFbnRpdGllcyhlbnRpdGllcyk7XG4gICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0TWFueShwcmVsb2FkZWRFbnRpdGllcy5tYXAoKHByZWxvYWRlZEVudGl0eSkgPT4gKHsgLi4ucHJlbG9hZGVkRW50aXR5LCBsb2FkZWQ6IHRydWUgfSkpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdW5zZWxlY3RBbGwoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUuc2V0KFtdKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5zdG9yZS51cGRhdGUoe1xuICAgICAgICAgICAgYWxsU2VsZWN0ZWQ6IGZhbHNlLFxuICAgICAgICAgICAgdW5zZWxlY3RlZEVudGl0eTogW11cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVuc2VsZWN0KGlkOiBJRCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICB1bnNlbGVjdGVkRW50aXR5OiBhcnJheUFkZChzdGF0ZS51bnNlbGVjdGVkRW50aXR5LCBpZClcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRoaXMuc3RvcmUucmVtb3ZlKGlkIGFzIGFueSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVuc2VsZWN0RW50aXR5KGVudGl0eTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICB1bnNlbGVjdGVkRW50aXR5OiBhcnJheUFkZChzdGF0ZS51bnNlbGVjdGVkRW50aXR5LCBlbnRpdHlbdGhpcy5pZEtleV0pXG4gICAgICAgIH0pKTtcblxuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZShlbnRpdHlbdGhpcy5pZEtleV0pO1xuICAgIH1cblxuICAgIHB1YmxpYyB1bnNlbGVjdE1hbnlFbnRpdGllcyhlbnRpdGllczogVFtdKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcmUucmVtb3ZlKGVudGl0aWVzLm1hcCgoZW50aXR5KSA9PiBlbnRpdHlbdGhpcy5pZEtleV0pKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdXBkYXRlRW50aXR5KGVudGl0eTogVCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZShlbnRpdHlbdGhpcy5pZEtleV0sIGVudGl0eSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNldEVudGl0aWVzKGlkczogSURbXSwgYWN0aXZlSWQ6IElEKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIHVuc2VsZWN0ZWRFbnRpdHk6IFtdLFxuICAgICAgICAgICAgYWxsU2VsZWN0ZWQ6IGZhbHNlXG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc3RvcmUuc2V0KGlkcy5tYXAoKGlkKSA9PiAoe1xuICAgICAgICAgICAgW3RoaXMuaWRLZXldOiBpZCxcbiAgICAgICAgICAgIGxvYWRlZDogZmFsc2VcbiAgICAgICAgfSkpKTtcblxuICAgICAgICBpZiAoYWN0aXZlSWQpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0QWN0aXZlKGFjdGl2ZUlkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGF3YWl0IHRoaXMubG9hZEVudGl0aWVzKHRydWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBuZXh0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGlkcywgYWN0aXZlIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gaWRzLmluZGV4T2YoYWN0aXZlKTtcbiAgICAgICAgYXdhaXQgdGhpcy5sb2FkQWN0aXZlRW50aXR5KGlkc1tpbmRleCArIDFdLCAxKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcHJldmlvdXMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgaWRzLCBhY3RpdmUgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBpZHMuaW5kZXhPZihhY3RpdmUpO1xuICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzW2luZGV4IC0gMV0sIC0xKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgZmlyc3QoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgaWRzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGF3YWl0IHRoaXMubG9hZEFjdGl2ZUVudGl0eShpZHNbMF0sIDEpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBsYXN0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGlkcyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzW2lkcy5sZW5ndGggLSAxXSwgLTEpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyByZW1vdmVBY3RpdmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGNvbnN0IHsgYWN0aXZlLCBpZHMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBpZHMuaW5kZXhPZihhY3RpdmUpO1xuXG4gICAgICAgIHRoaXMuc3RvcmUucmVtb3ZlKGFjdGl2ZSk7XG5cbiAgICAgICAgaWYgKGluZGV4ID09PSAoaWRzLmxlbmd0aCAtIDEpKSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzW2luZGV4IC0gMV0sIC0xKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubG9hZEFjdGl2ZUVudGl0eShpZHNbaW5kZXggKyAxXSwgMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgbG9hZEFjdGl2ZUVudGl0eShpZDogbnVtYmVyLCBkaXJlY3Rpb246IG51bWJlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRBY3RpdmUoaWQpO1xuXG4gICAgICAgICAgICBjb25zdCB7IGVudGl0aWVzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgICAgICBpZiAoIWVudGl0aWVzWytpZCArIGRpcmVjdGlvbiAqIHRoaXMucHJlbG9hZGVkV2luZG93XT8ubG9hZGVkKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5sb2FkRW50aXRpZXMoZmFsc2UpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGxvYWRFbnRpdGllcyhsb2FkRXh0cmVtaXR5OiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdG9Mb2FkID0gdGhpcy5nZXRMaXN0SWRUb0xvYWQobG9hZEV4dHJlbWl0eSk7XG4gICAgICAgIGlmICghdG9Mb2FkLmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZW50aXRpZXMgPSBhd2FpdCB0aGlzLnByZWxvYWRTZXJ2aWNlLmxvYWRFbnRpdGllc0J5SWQodG9Mb2FkKTtcbiAgICAgICAgdGhpcy5zdG9yZS51cHNlcnRNYW55KGVudGl0aWVzLm1hcCgoZW50aXR5KSA9PiAoeyAuLi5lbnRpdHksIGxvYWRlZDogdHJ1ZSB9KSkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXRMaXN0SWRUb0xvYWQobG9hZEV4dHJlbWl0eTogYm9vbGVhbik6IG51bWJlcltdIHtcbiAgICAgICAgY29uc3QgeyBhY3RpdmUsIGlkcywgZW50aXRpZXMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgZnJvbSA9IGlkcy5pbmRleE9mKGFjdGl2ZSkgLSB0aGlzLnByZWxvYWRlZFdpbmRvdyA+IDAgPyBpZHMuaW5kZXhPZihhY3RpdmUpIC0gdGhpcy5wcmVsb2FkZWRXaW5kb3cgOiAwO1xuICAgICAgICBjb25zdCB0byA9IGlkcy5pbmRleE9mKGFjdGl2ZSkgKyB0aGlzLnByZWxvYWRlZFdpbmRvdyA8IGlkcy5sZW5ndGggLSAxXG4gICAgICAgICAgICA/IGlkcy5pbmRleE9mKGFjdGl2ZSkgKyB0aGlzLnByZWxvYWRlZFdpbmRvd1xuICAgICAgICAgICAgOiBpZHMubGVuZ3RoIC0gMTtcblxuICAgICAgICBjb25zdCB0b0xvYWQgPSBbXTtcbiAgICAgICAgaWYgKGxvYWRFeHRyZW1pdHkpIHtcbiAgICAgICAgICAgIGlmIChpZHMubGVuZ3RoIDw9IDIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaWRzO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0b0xvYWQucHVzaChpZHNbMF0sIGlkc1tpZHMubGVuZ3RoIC0gMV0pO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgaSA9IGZyb207IGkgPD0gdG87IGkrKykge1xuICAgICAgICAgICAgaWYgKGlkc1tpXSA9PT0gbnVsbCB8fCBpZHNbMF0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIXRvTG9hZC5pbmNsdWRlcyhpZHNbaV0pICYmICFlbnRpdGllc1tpZHNbaV1dPy5sb2FkZWQpIHtcbiAgICAgICAgICAgICAgICB0b0xvYWQucHVzaChpZHNbaV0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRvTG9hZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2VuZXJhdGVRdWVyeVBhcmFtcygpOiB7IHNlbGVjdGlvbjogbnVtYmVyW10gfCBudWxsOyBzZWxlY3RlZDogbnVtYmVyIHwgbnVsbDsgfSB7XG4gICAgICAgIGNvbnN0IHsgaWRzLCBhY3RpdmUgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHNlbGVjdGlvbjogaWRzLmxlbmd0aCA/IGlkcyA6IG51bGwsXG4gICAgICAgICAgICBzZWxlY3RlZDogYWN0aXZlID8/IG51bGxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0UXVlcnlQYXJhbXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtdLCB7XG4gICAgICAgICAgICBxdWVyeVBhcmFtczogdGhpcy5nZW5lcmF0ZVF1ZXJ5UGFyYW1zKCksXG4gICAgICAgICAgICBxdWVyeVBhcmFtc0hhbmRsaW5nOiBcIm1lcmdlXCJcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
215
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uaWNlLWRhdGEtZmlsdGVyLWtpdC9zcmMvbGliL2RpcmVjdGl2ZS9zZWxlY3RhYmxlLWxpc3Qvc3RvcmUvc2VsZWN0YWJsZS1saXN0LXN0YXRlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQWUsTUFBTSxpQkFBaUIsQ0FBQztBQU1yRSxNQUFNLE9BQU8sOEJBQThCO0lBYXZDLFlBQ1ksS0FBZ0QsRUFDaEQsS0FBcUIsRUFDckIsTUFBYyxFQUNkLGNBQXVELEVBQ3ZELE9BQW1DO1FBSm5DLFVBQUssR0FBTCxLQUFLLENBQTJDO1FBQ2hELFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxtQkFBYyxHQUFkLGNBQWMsQ0FBeUM7UUFDdkQsWUFBTyxHQUFQLE9BQU8sQ0FBNEI7SUFDNUMsQ0FBQztJQWxCSixJQUFXLEtBQUs7UUFDWixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsS0FBSyxJQUFJLElBQUksQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBVyxlQUFlO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhLElBQUksQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxJQUFXLG1CQUFtQjtRQUMxQixPQUFPLElBQUksQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLElBQUksS0FBSyxDQUFDO0lBQ3JELENBQUM7SUFVTSxTQUFTLENBQUMsTUFBUztRQUN0QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVNLFFBQVEsQ0FBQyxVQUFrQjtRQUM5QixNQUFNLEVBQUUsR0FBRyxF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QVEsRUFBRSxDQUFDO1FBQzlDLE9BQU87WUFDSCxTQUFTLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQ2xDLFFBQVEsRUFBRSxNQUFNLElBQUksSUFBSTtTQUMzQixDQUFDO0lBQ04sQ0FBQztJQUVNLGNBQWM7UUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3JCLFdBQVcsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7Z0JBQ3ZDLG1CQUFtQixFQUFFLE9BQU87YUFDL0IsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuaW1wb3J0IHsgYXJyYXlBZGQsIGFycmF5UmVtb3ZlLCBFbnRpdHlTdG9yZSB9IGZyb20gXCJAZGF0b3JhbWEvYWtpdGFcIjtcbmltcG9ydCB7IE5pY2VTZWxlY3RhYmxlTGlzdExvYWRBbGxFbnRpdGllc09wdGlvbnMgfSBmcm9tIFwiLi4vbW9kZWwvbG9hZC1hbGwtZW50aXRpZXMtb3B0aW9ucy5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZVNlbGVjdGFibGVMaXN0T3B0aW9ucyB9IGZyb20gXCIuLi9tb2RlbC9zZWxlY3RhYmxlLWxpc3Qtb3B0aW9ucy5tb2RlbFwiO1xuaW1wb3J0IHsgTmljZVByZWxvYWRTZWxlY3RlZEVudGl0aWVzUHJvdmlkZXIgfSBmcm9tIFwiLi4vcHJvdmlkZXJzL3ByZWxvYWQtc2VsZWN0ZWQtZW50aXRpZXMucHJvdmlkZXJcIjtcbmltcG9ydCB7IE5pY2VTZWxlY3RhYmxlTGlzdFN0YXRlIH0gZnJvbSBcIi4vc2VsZWN0YWJsZS1saXN0LnN0YXRlXCI7XG5cbmV4cG9ydCBjbGFzcyBOaWNlU2VsZWN0YWJsZUxpc3RTdGF0ZVNlcnZpY2U8VCwgSUQgPSBhbnk+IHtcbiAgICBwdWJsaWMgZ2V0IGlkS2V5KCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnM/LmlkS2V5ID8/IFwiaWRcIjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IHByZWxvYWRlZFdpbmRvdygpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5wcmVsb2FkV2luZG93ID8/IDI7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBxdWVyeVBhcmFtc0Rpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5kaXNhYmxlUXVlcnlQYXJhbXMgPz8gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgc3RvcmU6IEVudGl0eVN0b3JlPE5pY2VTZWxlY3RhYmxlTGlzdFN0YXRlPGFueT4+LFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBwcmVsb2FkU2VydmljZT86IE5pY2VQcmVsb2FkU2VsZWN0ZWRFbnRpdGllc1Byb3ZpZGVyPFQ+LFxuICAgICAgICBwcml2YXRlIG9wdGlvbnM/OiBOaWNlU2VsZWN0YWJsZUxpc3RPcHRpb25zXG4gICAgKSB7fVxuXG4gICAgcHVibGljIHNldEFjdGl2ZShlbnRpdHk6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS5zZXRBY3RpdmUoZW50aXR5W3RoaXMuaWRLZXldKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0SW5kZXgoaWRlbnRpZmllcjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgeyBpZHMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgaW5kZXggPSBpZHMuaW5kZXhPZihpZGVudGlmaWVyKTtcbiAgICAgICAgcmV0dXJuIGluZGV4ICsgMTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2VsZWN0QWxsKG9wdGlvbnM/OiBOaWNlU2VsZWN0YWJsZUxpc3RMb2FkQWxsRW50aXRpZXNPcHRpb25zKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIGlmICghdGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgICAgICBhbGxTZWxlY3RlZDogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpZHMgPSBhd2FpdCB0aGlzLnByZWxvYWRTZXJ2aWNlLmxvYWRBbGxFbnRpdGllcyhvcHRpb25zKTtcbiAgICAgICAgdGhpcy5zdG9yZS5zZXQoaWRzLm1hcCgoaWQpID0+ICh7XG4gICAgICAgICAgICBbdGhpcy5pZEtleV06IGlkLFxuICAgICAgICAgICAgbG9hZGVkOiBmYWxzZVxuICAgICAgICB9KSkpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICBhbGxTZWxlY3RlZDogdHJ1ZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2VsZWN0KGlkOiBJRCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSgoc3RhdGUpID0+ICh7XG4gICAgICAgICAgICB1bnNlbGVjdGVkRW50aXR5OiBhcnJheVJlbW92ZShzdGF0ZS51bnNlbGVjdGVkRW50aXR5LCBpZCBhcyBhbnkpXG4gICAgICAgIH0pKTtcblxuICAgICAgICB0aGlzLnN0b3JlLmFkZCh7XG4gICAgICAgICAgICBbdGhpcy5pZEtleV06IGlkLFxuICAgICAgICAgICAgbG9hZGVkOiBmYWxzZVxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAodGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgY29uc3QgZW50aXR5ID0gYXdhaXQgdGhpcy5wcmVsb2FkU2VydmljZS5sb2FkRW50aXR5QnlJZChpZCBhcyBhbnkpO1xuICAgICAgICAgICAgdGhpcy5zdG9yZS51cHNlcnQoaWQgYXMgYW55LCB7XG4gICAgICAgICAgICAgICAgLi4uZW50aXR5LFxuICAgICAgICAgICAgICAgIGxvYWRlZDogdHJ1ZVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgc2VsZWN0TWFueShpZHM6IElEW10sIGFjdGl2ZTogSUQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgdGhpcy5zdG9yZS5hZGQoXG4gICAgICAgICAgICBpZHMubWFwKChpZCkgPT4gKHtcbiAgICAgICAgICAgICAgICBbdGhpcy5pZEtleV06IGlkLFxuICAgICAgICAgICAgICAgIGxvYWRlZDogZmFsc2VcbiAgICAgICAgICAgIH0pKVxuICAgICAgICApO1xuXG4gICAgICAgIGlmIChhY3RpdmUpIHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0QWN0aXZlKGFjdGl2ZSk7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmxvYWRFbnRpdGllcyh0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZWxlY3RFbnRpdHkoZW50aXR5OiBUKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRoaXMuc3RvcmUudXBkYXRlKChzdGF0ZSkgPT4gKHtcbiAgICAgICAgICAgIHVuc2VsZWN0ZWRFbnRpdHk6IGFycmF5UmVtb3ZlKHN0YXRlLnVuc2VsZWN0ZWRFbnRpdHksIGVudGl0eVt0aGlzLmlkS2V5XSlcbiAgICAgICAgfSkpO1xuXG4gICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0KGVudGl0eVt0aGlzLmlkS2V5XSwgeyAuLi5lbnRpdHksIGxvYWRlZDogdHJ1ZSB9KTtcblxuICAgICAgICBpZiAodGhpcy5wcmVsb2FkU2VydmljZSkge1xuICAgICAgICAgICAgY29uc3QgcHJlbG9hZGVkRW50aXR5ID0gYXdhaXQgdGhpcy5wcmVsb2FkU2VydmljZS5yZWxvYWRFbnRpdHkoZW50aXR5KTtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0KHByZWxvYWRlZEVudGl0eVt0aGlzLmlkS2V5XSwgeyAuLi5wcmVsb2FkZWRFbnRpdHksIGxvYWRlZDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZWxlY3RNYW55RW50aXRpZXMoZW50aXRpZXM6IFRbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAoIXRoaXMucHJlbG9hZFNlcnZpY2UpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnN0b3JlLnVwc2VydE1hbnkoZW50aXRpZXMubWFwKChlbnRpdHkpID0+ICh7IC4uLmVudGl0eSwgbG9hZGVkOiB0cnVlIH0pKSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwcmVsb2FkZWRFbnRpdGllcyA9IGF3YWl0IHRoaXMucHJlbG9hZFNlcnZpY2UucmVsb2FkRW50aXRpZXMoZW50aXRpZXMpO1xuICAgICAgICB0aGlzLnN0b3JlLnVwc2VydE1hbnkocHJlbG9hZGVkRW50aXRpZXMubWFwKChwcmVsb2FkZWRFbnRpdHkpID0+ICh7IC4uLnByZWxvYWRlZEVudGl0eSwgbG9hZGVkOiB0cnVlIH0pKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVuc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnNldChbXSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmUudXBkYXRlKHtcbiAgICAgICAgICAgIGFsbFNlbGVjdGVkOiBmYWxzZSxcbiAgICAgICAgICAgIHVuc2VsZWN0ZWRFbnRpdHk6IFtdXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyB1bnNlbGVjdChpZDogSUQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoKHN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgdW5zZWxlY3RlZEVudGl0eTogYXJyYXlBZGQoc3RhdGUudW5zZWxlY3RlZEVudGl0eSwgaWQpXG4gICAgICAgIH0pKTtcblxuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZShpZCBhcyBhbnkpO1xuICAgIH1cblxuICAgIHB1YmxpYyB1bnNlbGVjdEVudGl0eShlbnRpdHk6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoKHN0YXRlKSA9PiAoe1xuICAgICAgICAgICAgdW5zZWxlY3RlZEVudGl0eTogYXJyYXlBZGQoc3RhdGUudW5zZWxlY3RlZEVudGl0eSwgZW50aXR5W3RoaXMuaWRLZXldKVxuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGhpcy5zdG9yZS5yZW1vdmUoZW50aXR5W3RoaXMuaWRLZXldKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdW5zZWxlY3RNYW55RW50aXRpZXMoZW50aXRpZXM6IFRbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZShlbnRpdGllcy5tYXAoKGVudGl0eSkgPT4gZW50aXR5W3RoaXMuaWRLZXldKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZUVudGl0eShlbnRpdHk6IFQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9yZS51cGRhdGUoZW50aXR5W3RoaXMuaWRLZXldLCBlbnRpdHkpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBzZXRFbnRpdGllcyhpZHM6IElEW10sIGFjdGl2ZUlkOiBJRCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICB0aGlzLnN0b3JlLnVwZGF0ZSh7XG4gICAgICAgICAgICB1bnNlbGVjdGVkRW50aXR5OiBbXSxcbiAgICAgICAgICAgIGFsbFNlbGVjdGVkOiBmYWxzZVxuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLnN0b3JlLnNldChpZHMubWFwKChpZCkgPT4gKHtcbiAgICAgICAgICAgIFt0aGlzLmlkS2V5XTogaWQsXG4gICAgICAgICAgICBsb2FkZWQ6IGZhbHNlXG4gICAgICAgIH0pKSk7XG5cbiAgICAgICAgaWYgKGFjdGl2ZUlkKSB7XG4gICAgICAgICAgICB0aGlzLnN0b3JlLnNldEFjdGl2ZShhY3RpdmVJZCk7XG4gICAgICAgIH1cblxuICAgICAgICBhd2FpdCB0aGlzLmxvYWRFbnRpdGllcyh0cnVlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgbmV4dCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgeyBpZHMsIGFjdGl2ZSB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBjb25zdCBpbmRleCA9IGlkcy5pbmRleE9mKGFjdGl2ZSk7XG4gICAgICAgIGF3YWl0IHRoaXMubG9hZEFjdGl2ZUVudGl0eShpZHNbaW5kZXggKyAxXSwgMSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHByZXZpb3VzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGlkcywgYWN0aXZlIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gaWRzLmluZGV4T2YoYWN0aXZlKTtcbiAgICAgICAgYXdhaXQgdGhpcy5sb2FkQWN0aXZlRW50aXR5KGlkc1tpbmRleCAtIDFdLCAtMSk7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGZpcnN0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGlkcyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzWzBdLCAxKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgbGFzdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgICAgY29uc3QgeyBpZHMgfSA9IHRoaXMuc3RvcmUuZ2V0VmFsdWUoKTtcbiAgICAgICAgYXdhaXQgdGhpcy5sb2FkQWN0aXZlRW50aXR5KGlkc1tpZHMubGVuZ3RoIC0gMV0sIC0xKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgYXN5bmMgcmVtb3ZlQWN0aXZlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCB7IGFjdGl2ZSwgaWRzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gaWRzLmluZGV4T2YoYWN0aXZlKTtcblxuICAgICAgICB0aGlzLnN0b3JlLnJlbW92ZShhY3RpdmUpO1xuXG4gICAgICAgIGlmIChpbmRleCA9PT0gKGlkcy5sZW5ndGggLSAxKSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5sb2FkQWN0aXZlRW50aXR5KGlkc1tpbmRleCAtIDFdLCAtMSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhd2FpdCB0aGlzLmxvYWRBY3RpdmVFbnRpdHkoaWRzW2luZGV4ICsgMV0sIDEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIGxvYWRBY3RpdmVFbnRpdHkoaWQ6IG51bWJlciwgZGlyZWN0aW9uOiBudW1iZXIpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuc3RvcmUuc2V0QWN0aXZlKGlkKTtcblxuICAgICAgICAgICAgY29uc3QgeyBlbnRpdGllcyB9ID0gdGhpcy5zdG9yZS5nZXRWYWx1ZSgpO1xuICAgICAgICAgICAgaWYgKCFlbnRpdGllc1sraWQgKyBkaXJlY3Rpb24gKiB0aGlzLnByZWxvYWRlZFdpbmRvd10/LmxvYWRlZCkge1xuICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMubG9hZEVudGl0aWVzKGZhbHNlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5zdG9yZS5zZXRFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBhc3luYyBsb2FkRW50aXRpZXMobG9hZEV4dHJlbWl0eTogYm9vbGVhbik6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBpZiAoIXRoaXMucHJlbG9hZFNlcnZpY2UpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHRvTG9hZCA9IHRoaXMuZ2V0TGlzdElkVG9Mb2FkKGxvYWRFeHRyZW1pdHkpO1xuICAgICAgICBpZiAoIXRvTG9hZC5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGVudGl0aWVzID0gYXdhaXQgdGhpcy5wcmVsb2FkU2VydmljZS5sb2FkRW50aXRpZXNCeUlkKHRvTG9hZCk7XG4gICAgICAgIHRoaXMuc3RvcmUudXBzZXJ0TWFueShlbnRpdGllcy5tYXAoKGVudGl0eSkgPT4gKHsgLi4uZW50aXR5LCBsb2FkZWQ6IHRydWUgfSkpKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0TGlzdElkVG9Mb2FkKGxvYWRFeHRyZW1pdHk6IGJvb2xlYW4pOiBudW1iZXJbXSB7XG4gICAgICAgIGNvbnN0IHsgYWN0aXZlLCBpZHMsIGVudGl0aWVzIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IGZyb20gPSBpZHMuaW5kZXhPZihhY3RpdmUpIC0gdGhpcy5wcmVsb2FkZWRXaW5kb3cgPiAwID8gaWRzLmluZGV4T2YoYWN0aXZlKSAtIHRoaXMucHJlbG9hZGVkV2luZG93IDogMDtcbiAgICAgICAgY29uc3QgdG8gPSBpZHMuaW5kZXhPZihhY3RpdmUpICsgdGhpcy5wcmVsb2FkZWRXaW5kb3cgPCBpZHMubGVuZ3RoIC0gMVxuICAgICAgICAgICAgPyBpZHMuaW5kZXhPZihhY3RpdmUpICsgdGhpcy5wcmVsb2FkZWRXaW5kb3dcbiAgICAgICAgICAgIDogaWRzLmxlbmd0aCAtIDE7XG5cbiAgICAgICAgY29uc3QgdG9Mb2FkID0gW107XG4gICAgICAgIGlmIChsb2FkRXh0cmVtaXR5KSB7XG4gICAgICAgICAgICBpZiAoaWRzLmxlbmd0aCA8PSAyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGlkcztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdG9Mb2FkLnB1c2goaWRzWzBdLCBpZHNbaWRzLmxlbmd0aCAtIDFdKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGZvciAobGV0IGkgPSBmcm9tOyBpIDw9IHRvOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChpZHNbaV0gPT09IG51bGwgfHwgaWRzWzBdID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCF0b0xvYWQuaW5jbHVkZXMoaWRzW2ldKSAmJiAhZW50aXRpZXNbaWRzW2ldXT8ubG9hZGVkKSB7XG4gICAgICAgICAgICAgICAgdG9Mb2FkLnB1c2goaWRzW2ldKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0b0xvYWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGdlbmVyYXRlUXVlcnlQYXJhbXMoKTogeyBzZWxlY3Rpb246IG51bWJlcltdIHwgbnVsbDsgc2VsZWN0ZWQ6IG51bWJlciB8IG51bGw7IH0ge1xuICAgICAgICBjb25zdCB7IGlkcywgYWN0aXZlIH0gPSB0aGlzLnN0b3JlLmdldFZhbHVlKCk7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBzZWxlY3Rpb246IGlkcy5sZW5ndGggPyBpZHMgOiBudWxsLFxuICAgICAgICAgICAgc2VsZWN0ZWQ6IGFjdGl2ZSA/PyBudWxsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIHNldFF1ZXJ5UGFyYW1zKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMucXVlcnlQYXJhbXNEaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogdGhpcy5nZW5lcmF0ZVF1ZXJ5UGFyYW1zKCksXG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogXCJtZXJnZVwiXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==