@progressio_resources/gravity-design-system 2.6.15 → 2.6.17

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.
@@ -102,10 +102,14 @@ export class GravityDropdownListComponent {
102
102
  this.dropdownOpened = !this.dropdownOpened;
103
103
  if (!this.dropdownOpened) {
104
104
  if (this.multiple) {
105
- this.selectedItemsResponse.emit(this.selectedItems);
105
+ if (this.selectedItems?.length > 0) {
106
+ this.selectedItemsResponse.emit(this.selectedItems);
107
+ }
106
108
  }
107
109
  else {
108
- this.selectedItemsResponse.emit(this.selectedItems[0]);
110
+ if (this.selectedItems[0]) {
111
+ this.selectedItemsResponse.emit(this.selectedItems[0]);
112
+ }
109
113
  }
110
114
  this.searchText = '';
111
115
  this.availableOptions = this.items;
@@ -124,7 +128,8 @@ export class GravityDropdownListComponent {
124
128
  }
125
129
  else {
126
130
  this.selectedItems = [itemToAdd];
127
- this.selectedItemsResponse.emit(itemToAdd);
131
+ // this.selectedItemsResponse.emit(itemToAdd);
132
+ this.toggleDropdown();
128
133
  }
129
134
  }
130
135
  checkIfSelected(itemToFind) {
@@ -202,4 +207,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
202
207
  type: HostListener,
203
208
  args: ['document:click', ['$event']]
204
209
  }] } });
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1kcm9wZG93bi1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS1kcm9wZG93bi1saXN0L2dyYXZpdHktZHJvcGRvd24tbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktZHJvcGRvd24tbGlzdC9ncmF2aXR5LWRyb3Bkb3duLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBUTlDLE1BQU0sT0FBTyw0QkFBNEI7SUE0QnZDLFlBQTZCLFlBQTBCLEVBQVUsS0FBaUI7UUFBckQsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBM0J2RCwwQkFBcUIsR0FBOEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqRixjQUFTLEdBQVksSUFBSSxDQUFDO1FBRTFCLGdCQUFXLEdBQVcsSUFBSSxDQUFDO1FBRzNCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixlQUFVLEdBQVksS0FBSyxDQUFDO1FBRzVCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUcxQyxRQUFRO1FBQ1EsU0FBSSxHQUFnQixJQUFJLENB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SztzQkFBcEIsS0FBSztnQkFzSXNDLGVBQWU7c0JBQTFELFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0dyYXZpdHlJY29uQ29tcG9uZW50fSBmcm9tIFwiLi4vZ3Jhdml0eS1pY29uL2dyYXZpdHktaWNvbi5jb21wb25lbnRcIjtcbmltcG9ydCB7RmlsdGVyQnlQaXBlfSBmcm9tIFwiLi9maWx0ZXItYnkucGlwZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmF2aXR5LWRyb3Bkb3duLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3Jhdml0eS1kcm9wZG93bi1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3Jhdml0eS1kcm9wZG93bi1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW0ZpbHRlckJ5UGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgR3Jhdml0eURyb3Bkb3duTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBPdXRwdXQoJ3Jlc3BvbnNlJykgcHVibGljIHNlbGVjdGVkSXRlbXNSZXNwb25zZTogRXZlbnRFbWl0dGVyPGFueVtdIHwgYW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBASW5wdXQoKSBwdWJsaWMgY2xlYXJhYmxlOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIGNvbmZpZz86IHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IHN0cmluZzsgfTtcbiAgQElucHV0KCkgcHVibGljIGN1cnJlbnRMYW5nOiBzdHJpbmcgPSAnZW4nO1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tVmFsdWVzOiBBcnJheTxhbnk+IHwgYW55O1xuICBASW5wdXQoKSBwdWJsaWMgY3lwcmVzc1RhZzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgaGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGljb25MZWZ0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpc0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBpc1JlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtczogQXJyYXk8YW55PjtcbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBtdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdXBwb3J0VGV4dDogc3RyaW5nO1xuXG4gIC8vIFNpemVzXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnc20nIHwgJ21kJyA9ICdtZCc7XG4gIEBJbnB1dCgpIHB1YmxpYyB3aWR0aDogJ3Nob3J0JyB8ICdtZWRpdW0nIHwgJ2Z1bGwnIHwgJ2ZpdCcgPSAnc2hvcnQnO1xuXG4gIHB1YmxpYyBhdmFpbGFibGVPcHRpb25zOiBhbnlbXSA9IFtdO1xuICBwdWJsaWMgZHJvcGRvd25PcGVuZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIHNlYXJjaFRleHQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgc2VsZWN0ZWRJdGVtczogYW55W10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZpbHRlckJ5UGlwZTogRmlsdGVyQnlQaXBlLCBwcml2YXRlIF9lcmVmOiBFbGVtZW50UmVmKSB7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ2l0ZW1zJ10/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5hdmFpbGFibGVPcHRpb25zID0gdGhpcy5pdGVtcztcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1snY3VzdG9tVmFsdWVzJ10/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgY2hhbmdlc1snY3VzdG9tVmFsdWVzJ10uY3VycmVudFZhbHVlLmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICBsZXQgb3B0aW9uOiBhbnk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZykge1xuICAgICAgICAgICAgICBvcHRpb24gPSB0aGlzLmF2YWlsYWJsZU9wdGlvbnMuZmluZCgoYXZhaWxhYmxlT3B0aW9uOiBhbnkpID0+IGF2YWlsYWJsZU9wdGlvblt0aGlzLmNvbmZpZy52YWx1ZV0gPT0gaXRlbSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBvcHRpb24gPSB0aGlzLmF2YWlsYWJsZU9wdGlvbnMuZmluZCgoYXZhaWxhYmxlT3B0aW9uOiBhbnkpID0+IGF2YWlsYWJsZU9wdGlvbiA9PSBpdGVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbikge1xuICAgICAgICAgICAgICBsZXQgaW5kZXhPZkl0ZW06IG51bWJlciA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgoKGF2YWlsYWJsZU9wdGlvbjogYW55KSA9PiBhdmFpbGFibGVPcHRpb24gPT0gb3B0aW9uKTtcblxuICAgICAgICAgICAgICBpZiAoaW5kZXhPZkl0ZW0gPT0gLTEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChvcHRpb24pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBpdGVtOiBhbnkgPSBjaGFuZ2VzWydjdXN0b21WYWx1ZXMnXS5jdXJyZW50VmFsdWU7XG5cbiAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICBsZXQgb3B0aW9uOiBhbnk7XG5cbiAgICAgICAgICBpZiAodGhpcy5jb25maWcpIHtcbiAgICAgICAgICAgIG9wdGlvbiA9IHRoaXMuYXZhaWxhYmxlT3B0aW9ucy5maW5kKChhdmFpbGFibGVPcHRpb246IGFueSkgPT4gYXZhaWxhYmxlT3B0aW9uW3RoaXMuY29uZmlnLnZhbHVlXSA9PSBpdGVtKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3B0aW9uID0gdGhpcy5hdmFpbGFibGVPcHRpb25zLmZpbmQoKGF2YWlsYWJsZU9wdGlvbjogYW55KSA9PiBhdmFpbGFibGVPcHRpb24gPT0gaXRlbSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG9wdGlvbikge1xuICAgICAgICAgICAgbGV0IGluZGV4T2ZJdGVtOiBudW1iZXIgPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmluZEluZGV4KChhdmFpbGFibGVPcHRpb246IGFueSkgPT4gYXZhaWxhYmxlT3B0aW9uID09IG9wdGlvbik7XG5cbiAgICAgICAgICAgIGlmIChpbmRleE9mSXRlbSA9PSAtMSkge1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChvcHRpb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRTdGF0dXMoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICByZXR1cm4gJ2Rpc2FibGVkJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNSZWFkb25seSkge1xuICAgICAgcmV0dXJuICdyZWFkb25seSc7XG4gICAgfSBlbHNlIGlmICh0aGlzLmhhc0Vycm9yKSB7XG4gICAgICByZXR1cm4gJ2Vycm9yJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuZHJvcGRvd25PcGVuZWQpIHtcbiAgICAgIHJldHVybiAnb3Blbic7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuICdzZWxlY3RlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnYWN0aXZlJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNJY29uTGVmdE5ldygpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5pY29uTGVmdCkge1xuICAgICAgcmV0dXJuIEdyYXZpdHlJY29uQ29tcG9uZW50LmlzTmV3SWNvbih0aGlzLmljb25MZWZ0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzRGlzYWJsZWQgJiYgIXRoaXMuaXNSZWFkb25seSkge1xuICAgICAgdGhpcy5kcm9wZG93bk9wZW5lZCA9ICF0aGlzLmRyb3Bkb3duT3BlbmVkO1xuXG4gICAgICBpZiAoIXRoaXMuZHJvcGRvd25PcGVuZWQpIHtcbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXNSZXNwb25zZS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkSXRlbXNbMF0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gJyc7XG4gICAgICAgIHRoaXMuYXZhaWxhYmxlT3B0aW9ucyA9IHRoaXMuaXRlbXM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNlbGVjdEl0ZW0oaXRlbVRvQWRkOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgbGV0IGluZGV4T2ZJdGVtOiBudW1iZXIgPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmluZEluZGV4KChpdGVtOiBhbnkpID0+IGl0ZW0gPT0gaXRlbVRvQWRkKTtcblxuICAgICAgaWYgKGluZGV4T2ZJdGVtID09IC0xKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5wdXNoKGl0ZW1Ub0FkZCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMuc3BsaWNlKGluZGV4T2ZJdGVtLCAxKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW2l0ZW1Ub0FkZF07XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbXNSZXNwb25zZS5lbWl0KGl0ZW1Ub0FkZCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNoZWNrSWZTZWxlY3RlZChpdGVtVG9GaW5kOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnNlbGVjdGVkSXRlbXMuZmluZCgoaXRlbTogYW55KSA9PiBpdGVtVG9GaW5kID09IGl0ZW0pO1xuICB9XG5cbiAgcHVibGljIGNsZWFyU2VsZWN0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0ZWRJdGVtcyA9IFtdO1xuXG4gICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtc1Jlc3BvbnNlLmVtaXQodGhpcy5zZWxlY3RlZEl0ZW1zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zUmVzcG9uc2UuZW1pdChudWxsKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZmlsdGVySXRlbXMoKTogdm9pZCB7XG4gICAgdGhpcy5hdmFpbGFibGVPcHRpb25zID0gdGhpcy5maWx0ZXJCeVBpcGUudHJhbnNmb3JtKHRoaXMuaXRlbXMsIHRoaXMuc2VhcmNoVGV4dCk7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pIG9uRG9jdW1lbnRDbGljaygkZXZlbnQ6IFBvaW50ZXJFdmVudCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5fZXJlZi5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKCRldmVudC50YXJnZXQpICYmIHRoaXMuZHJvcGRvd25PcGVuZWQpIHtcbiAgICAgIHRoaXMuZHJvcGRvd25PcGVuZWQgPSBmYWxzZTtcblxuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkSXRlbXMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkSXRlbXNbMF0pO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNlYXJjaFRleHQgPSAnJztcbiAgICAgIHRoaXMuYXZhaWxhYmxlT3B0aW9ucyA9IHRoaXMuaXRlbXM7XG4gICAgfVxuICB9XG59XG4iLCI8bGFiZWwgY2xhc3M9XCJoci1sYWJlbCBzbS1ib2xkIHt7Z2V0U3RhdHVzKCl9fVwiICpuZ0lmPVwibGFiZWxcIj5cbiAge3tsYWJlbH19IDxzcGFuICpuZ0lmPVwicmVxdWlyZWQgfHwgaGFzRXJyb3JcIj4qPC9zcGFuPlxuPC9sYWJlbD5cbjxkaXYgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnXCIgY2xhc3M9XCJncmF2aXR5LWlucHV0LWZpZWxkIHt7c2l6ZX19IHt7d2lkdGh9fS13aWR0aCB7e2dldFN0YXR1cygpfX1cIlxuICAgICAoY2xpY2spPVwidG9nZ2xlRHJvcGRvd24oKVwiPlxuICA8Z3Jhdml0eS1pY29uIGNsYXNzPVwibGVmdFwiIFtpY29uTmFtZV09XCJpY29uTGVmdFwiIFtpY29uU2l6ZV09XCJpc0ljb25MZWZ0TmV3KCkgPyAnbWQtMTYnIDogbnVsbFwiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJpY29uTGVmdFwiPjwvZ3Jhdml0eS1pY29uPlxuICA8cCBjbGFzcz1cImhyLWxhYmVsIHt7c2l6ZX19LXJlZ3VsYXIgdmFsdWVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRJdGVtcy5sZW5ndGggPT0gMFwiPlxuICAgICAge3twbGFjZWhvbGRlciA/IHBsYWNlaG9sZGVyIDogbGFiZWx9fVxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3RlZEl0ZW1zLmxlbmd0aCA+IDBcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2Ygc2VsZWN0ZWRJdGVtczsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICB7e2NvbmZpZyA/IGl0ZW1bY29uZmlnLmxhYmVsXSA6IGl0ZW19fXt7aSAhPSBzZWxlY3RlZEl0ZW1zLmxlbmd0aCAtIDEgPyAnLCcgOiAnJ319XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9wPlxuICA8Z3Jhdml0eS1pY29uIGNsYXNzPVwicmlnaHRcIiBbaWNvbk5hbWVdPVwiZHJvcGRvd25PcGVuZWQgPyAnYXJyb3ctdXAnOiAnYXJyb3ctZG93bidcIiBbaWNvblNpemVdPVwiJ21kLTE2J1wiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhaXNSZWFkb25seVwiPjwvZ3Jhdml0eS1pY29uPlxuICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tcGFuZWxcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCIgKm5nSWY9XCJkcm9wZG93bk9wZW5lZFwiXG4gICAgICAgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnICsgJ19wYW5lbCdcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWlucHV0XCI+XG4gICAgICA8Z3Jhdml0eS1pY29uIGNsYXNzPVwic2VhcmNoLWljb25cIiBbaWNvbk5hbWVdPVwiJ3NlYXJjaCdcIiBbaWNvblNpemVdPVwiJ3NtLTEyJ1wiPjwvZ3Jhdml0eS1pY29uPlxuICAgICAgPGlucHV0IGF1dG9jb21wbGV0ZT1cIm9mZlwiIGNsYXNzPVwiaHItbGFiZWwge3tzaXplfX0tcmVndWxhclwiIChpbnB1dCk9XCJmaWx0ZXJJdGVtcygpXCJcbiAgICAgICAgICAgICBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgKyAnX3NlYXJjaF9pbnB1dCdcIiBhdXRvZm9jdXNcbiAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIiBwbGFjZWhvbGRlcj1cInt7Y3VycmVudExhbmcgPT0gJ2VzJyA/ICdMaW1waWFyJyA6ICdTZWFyY2ggaW5wdXQnfX1cIj5cbiAgICAgIDxncmF2aXR5LWljb24gY2xhc3M9XCJwb2ludGVyIHJlc2V0LWljb25cIiAoY2xpY2spPVwic2VhcmNoVGV4dCA9ICcnOyBmaWx0ZXJJdGVtcygpXCIgW2ljb25OYW1lXT1cIid1bnN1Y2Nlc3MnXCJcbiAgICAgICAgICAgICAgICAgICAgW2ljb25TaXplXT1cIidzbS0xMidcIiAqbmdJZj1cInNlYXJjaFRleHQ/Lmxlbmd0aCA+IDBcIj48L2dyYXZpdHktaWNvbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiaXRlbXNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoci1sYWJlbCBpdGVtIHt7c2l6ZX19LXJlZ3VsYXIgcG9pbnRlclwiIFtjbGFzcy5zZWxlY3RlZF09XCJjaGVja0lmU2VsZWN0ZWQoaXRlbSlcIlxuICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0SXRlbShpdGVtKVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGF2YWlsYWJsZU9wdGlvbnNcIj5cbiAgICAgICAgPGdyYXZpdHktY2hlY2tib3ggW2NoZWNrZWRdPVwiY2hlY2tJZlNlbGVjdGVkKGl0ZW0pXCIgKm5nSWY9XCJtdWx0aXBsZVwiPlxuICAgICAgICAgIHt7Y29uZmlnID8gaXRlbVtjb25maWcubGFiZWxdIDogaXRlbX19XG4gICAgICAgIDwvZ3Jhdml0eS1jaGVja2JveD5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFtdWx0aXBsZVwiPnt7Y29uZmlnID8gaXRlbVtjb25maWcubGFiZWxdIDogaXRlbX19PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoci1sYWJlbCBpdGVtIHt7c2l6ZX19LWJvbGQgbm8tcmVzdWx0c1wiICpuZ0lmPVwiYXZhaWxhYmxlT3B0aW9ucy5sZW5ndGggPT09IDBcIj5cbiAgICAgICAge3tjdXJyZW50TGFuZyA9PSAnZXMnID8gJ1NpbiByZXN1bHRhZG9zJyA6ICdObyByZXN1bHRzJ319XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZHJvcGRvd24tZm9vdGVyXCIgKm5nSWY9XCJzZWxlY3RlZEl0ZW1zLmxlbmd0aCA+IDBcIiBbY2xhc3Mubm90LWNsZWFyYWJsZV09XCIhY2xlYXJhYmxlXCI+XG4gICAgICA8cCBjbGFzcz1cImhyLWxhYmVsIHBvaW50ZXIgc20tcmVndWxhclwiIChjbGljayk9XCJjbGVhclNlbGVjdGlvbigpXCIgKm5nSWY9XCJjbGVhcmFibGVcIlxuICAgICAgICAgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnICsgJ19jbGVhcidcIj5cbiAgICAgICAge3tjdXJyZW50TGFuZyA9PSAnZXMnID8gJ0xpbXBpYXInIDogJ0NsZWFyIHNlbGVjdGlvbid9fVxuICAgICAgPC9wPlxuICAgICAgPHAgY2xhc3M9XCJoci1sYWJlbCBwb2ludGVyIHNtLWJvbGRcIiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyB0b2dnbGVEcm9wZG93bigpXCJcbiAgICAgICAgICpuZ0lmPVwiYXZhaWxhYmxlT3B0aW9ucy5sZW5ndGggIT0gMFwiIFthdHRyLmRhdGEtY3ldPVwiY3lwcmVzc1RhZyArICdfYXBwbHknXCI+XG4gICAgICAgIHt7Y3VycmVudExhbmcgPT0gJ2VzJyA/ICdBcGxpY2FyJyA6ICdBcHBseSd9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuPHAgY2xhc3M9XCJoci1sYWJlbCBzbS1yZWd1bGFyIHN1cHBvcnRpbmctdGV4dCB7e2dldFN0YXR1cygpfX0ge3tzaXplfX1cIiAqbmdJZj1cInN1cHBvcnRUZXh0XCI+XG4gIDxncmF2aXR5LWljb24gW2ljb25OYW1lXT1cIidxdWVzdGlvbi1jaXJjbGUnXCIgKm5nSWY9XCJoYXNFcnJvclwiIFtpY29uU2l6ZV09XCInbWQtMTYnXCI+PC9ncmF2aXR5LWljb24+XG4gIHt7c3VwcG9ydFRleHR9fVxuPC9wPlxuPHAgY2xhc3M9XCJoci1sYWJlbCBzbS1yZWd1bGFyIHN1cHBvcnRpbmctdGV4dCB7e2dldFN0YXR1cygpfX0ge3tzaXplfX1cIlxuICAgKm5nSWY9XCIhc3VwcG9ydFRleHQgJiYgZ2V0U3RhdHVzKCkgPT0gJ2FjdGl2ZScgJiYgc2VsZWN0ZWRJdGVtcy5sZW5ndGggPT0gMCAmJiByZXF1aXJlZFwiPlxuICB7e2N1cnJlbnRMYW5nID09ICdlcycgPyAnUmVxdWVyaWRvJyA6ICdSZXF1aXJlZCd9fVxuPC9wPlxuIl19
210
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS1kcm9wZG93bi1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS1kcm9wZG93bi1saXN0L2dyYXZpdHktZHJvcGRvd24tbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktZHJvcGRvd24tbGlzdC9ncmF2aXR5LWRyb3Bkb3duLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRVAsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLGtCQUFrQixDQUFDOzs7Ozs7O0FBUTlDLE1BQU0sT0FBTyw0QkFBNEI7SUE0QnZDLFlBQTZCLFlBQTBCLEVBQVUsS0FBaUI7UUFBckQsaUJBQVksR0FBWixZQUFZLENBQWM7UUFBVSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBM0J2RCwwQkFBcUIsR0FBOEIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUVqRixjQUFTLEdBQVksSUFBSSxDQUFDO1FBRTFCLGdCQUFXLEdBQVcsSUFBSSxDQUFDO1FBRzNCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQUM1QixlQUFVLEdBQVksS0FBSyxDQUFDO1FBRzVCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUcxQyxRQUFRO1FBQ1EsU0FBSSxHQUFnQixJQUFJLENB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O2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUdVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSztnQkEySXNDLGVBQWU7c0JBQTFELFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0dyYXZpdHlJY29uQ29tcG9uZW50fSBmcm9tIFwiLi4vZ3Jhdml0eS1pY29uL2dyYXZpdHktaWNvbi5jb21wb25lbnRcIjtcbmltcG9ydCB7RmlsdGVyQnlQaXBlfSBmcm9tIFwiLi9maWx0ZXItYnkucGlwZVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdncmF2aXR5LWRyb3Bkb3duLWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3Jhdml0eS1kcm9wZG93bi1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZ3Jhdml0eS1kcm9wZG93bi1saXN0LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW0ZpbHRlckJ5UGlwZV1cbn0pXG5leHBvcnQgY2xhc3MgR3Jhdml0eURyb3Bkb3duTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBPdXRwdXQoJ3Jlc3BvbnNlJykgcHVibGljIHNlbGVjdGVkSXRlbXNSZXNwb25zZTogRXZlbnRFbWl0dGVyPGFueVtdIHwgYW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBASW5wdXQoKSBwdWJsaWMgY2xlYXJhYmxlOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgcHVibGljIGNvbmZpZz86IHsgbGFiZWw6IHN0cmluZzsgdmFsdWU6IHN0cmluZzsgfTtcbiAgQElucHV0KCkgcHVibGljIGN1cnJlbnRMYW5nOiBzdHJpbmcgPSAnZW4nO1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tVmFsdWVzOiBBcnJheTxhbnk+IHwgYW55O1xuICBASW5wdXQoKSBwdWJsaWMgY3lwcmVzc1RhZzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgaGFzRXJyb3I6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGljb25MZWZ0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpc0Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBpc1JlYWRvbmx5OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBpdGVtczogQXJyYXk8YW55PjtcbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBtdWx0aXBsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBzdXBwb3J0VGV4dDogc3RyaW5nO1xuXG4gIC8vIFNpemVzXG4gIEBJbnB1dCgpIHB1YmxpYyBzaXplOiAnc20nIHwgJ21kJyA9ICdtZCc7XG4gIEBJbnB1dCgpIHB1YmxpYyB3aWR0aDogJ3Nob3J0JyB8ICdtZWRpdW0nIHwgJ2Z1bGwnIHwgJ2ZpdCcgPSAnc2hvcnQnO1xuXG4gIHB1YmxpYyBhdmFpbGFibGVPcHRpb25zOiBhbnlbXSA9IFtdO1xuICBwdWJsaWMgZHJvcGRvd25PcGVuZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIHNlYXJjaFRleHQ6IHN0cmluZyA9ICcnO1xuICBwdWJsaWMgc2VsZWN0ZWRJdGVtczogYW55W10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZpbHRlckJ5UGlwZTogRmlsdGVyQnlQaXBlLCBwcml2YXRlIF9lcmVmOiBFbGVtZW50UmVmKSB7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ2l0ZW1zJ10/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy5hdmFpbGFibGVPcHRpb25zID0gdGhpcy5pdGVtcztcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlc1snY3VzdG9tVmFsdWVzJ10/LmN1cnJlbnRWYWx1ZSkge1xuICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgY2hhbmdlc1snY3VzdG9tVmFsdWVzJ10uY3VycmVudFZhbHVlLmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICBsZXQgb3B0aW9uOiBhbnk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmNvbmZpZykge1xuICAgICAgICAgICAgICBvcHRpb24gPSB0aGlzLmF2YWlsYWJsZU9wdGlvbnMuZmluZCgoYXZhaWxhYmxlT3B0aW9uOiBhbnkpID0+IGF2YWlsYWJsZU9wdGlvblt0aGlzLmNvbmZpZy52YWx1ZV0gPT0gaXRlbSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBvcHRpb24gPSB0aGlzLmF2YWlsYWJsZU9wdGlvbnMuZmluZCgoYXZhaWxhYmxlT3B0aW9uOiBhbnkpID0+IGF2YWlsYWJsZU9wdGlvbiA9PSBpdGVtKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKG9wdGlvbikge1xuICAgICAgICAgICAgICBsZXQgaW5kZXhPZkl0ZW06IG51bWJlciA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgoKGF2YWlsYWJsZU9wdGlvbjogYW55KSA9PiBhdmFpbGFibGVPcHRpb24gPT0gb3B0aW9uKTtcblxuICAgICAgICAgICAgICBpZiAoaW5kZXhPZkl0ZW0gPT0gLTEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChvcHRpb24pO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGxldCBpdGVtOiBhbnkgPSBjaGFuZ2VzWydjdXN0b21WYWx1ZXMnXS5jdXJyZW50VmFsdWU7XG5cbiAgICAgICAgaWYgKGl0ZW0pIHtcbiAgICAgICAgICBsZXQgb3B0aW9uOiBhbnk7XG5cbiAgICAgICAgICBpZiAodGhpcy5jb25maWcpIHtcbiAgICAgICAgICAgIG9wdGlvbiA9IHRoaXMuYXZhaWxhYmxlT3B0aW9ucy5maW5kKChhdmFpbGFibGVPcHRpb246IGFueSkgPT4gYXZhaWxhYmxlT3B0aW9uW3RoaXMuY29uZmlnLnZhbHVlXSA9PSBpdGVtKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3B0aW9uID0gdGhpcy5hdmFpbGFibGVPcHRpb25zLmZpbmQoKGF2YWlsYWJsZU9wdGlvbjogYW55KSA9PiBhdmFpbGFibGVPcHRpb24gPT0gaXRlbSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaWYgKG9wdGlvbikge1xuICAgICAgICAgICAgbGV0IGluZGV4T2ZJdGVtOiBudW1iZXIgPSB0aGlzLnNlbGVjdGVkSXRlbXMuZmluZEluZGV4KChhdmFpbGFibGVPcHRpb246IGFueSkgPT4gYXZhaWxhYmxlT3B0aW9uID09IG9wdGlvbik7XG5cbiAgICAgICAgICAgIGlmIChpbmRleE9mSXRlbSA9PSAtMSkge1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXMucHVzaChvcHRpb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRTdGF0dXMoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5pc0Rpc2FibGVkKSB7XG4gICAgICByZXR1cm4gJ2Rpc2FibGVkJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuaXNSZWFkb25seSkge1xuICAgICAgcmV0dXJuICdyZWFkb25seSc7XG4gICAgfSBlbHNlIGlmICh0aGlzLmhhc0Vycm9yKSB7XG4gICAgICByZXR1cm4gJ2Vycm9yJztcbiAgICB9IGVsc2UgaWYgKHRoaXMuZHJvcGRvd25PcGVuZWQpIHtcbiAgICAgIHJldHVybiAnb3Blbic7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuICdzZWxlY3RlZCc7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAnYWN0aXZlJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNJY29uTGVmdE5ldygpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5pY29uTGVmdCkge1xuICAgICAgcmV0dXJuIEdyYXZpdHlJY29uQ29tcG9uZW50LmlzTmV3SWNvbih0aGlzLmljb25MZWZ0KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlRHJvcGRvd24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzRGlzYWJsZWQgJiYgIXRoaXMuaXNSZWFkb25seSkge1xuICAgICAgdGhpcy5kcm9wZG93bk9wZW5lZCA9ICF0aGlzLmRyb3Bkb3duT3BlbmVkO1xuXG4gICAgICBpZiAoIXRoaXMuZHJvcGRvd25PcGVuZWQpIHtcbiAgICAgICAgaWYgKHRoaXMubXVsdGlwbGUpIHtcbiAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZEl0ZW1zPy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXNSZXNwb25zZS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGlmICh0aGlzLnNlbGVjdGVkSXRlbXNbMF0pIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtc1Jlc3BvbnNlLmVtaXQodGhpcy5zZWxlY3RlZEl0ZW1zWzBdKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNlYXJjaFRleHQgPSAnJztcbiAgICAgICAgdGhpcy5hdmFpbGFibGVPcHRpb25zID0gdGhpcy5pdGVtcztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0SXRlbShpdGVtVG9BZGQ6IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLm11bHRpcGxlKSB7XG4gICAgICBsZXQgaW5kZXhPZkl0ZW06IG51bWJlciA9IHRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kSW5kZXgoKGl0ZW06IGFueSkgPT4gaXRlbSA9PSBpdGVtVG9BZGQpO1xuXG4gICAgICBpZiAoaW5kZXhPZkl0ZW0gPT0gLTEpIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLnB1c2goaXRlbVRvQWRkKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5zcGxpY2UoaW5kZXhPZkl0ZW0sIDEpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbXMgPSBbaXRlbVRvQWRkXTtcbiAgICAgIC8vIHRoaXMuc2VsZWN0ZWRJdGVtc1Jlc3BvbnNlLmVtaXQoaXRlbVRvQWRkKTtcbiAgICAgIHRoaXMudG9nZ2xlRHJvcGRvd24oKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY2hlY2tJZlNlbGVjdGVkKGl0ZW1Ub0ZpbmQ6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuc2VsZWN0ZWRJdGVtcy5maW5kKChpdGVtOiBhbnkpID0+IGl0ZW1Ub0ZpbmQgPT0gaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1zID0gW107XG5cbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zUmVzcG9uc2UuZW1pdCh0aGlzLnNlbGVjdGVkSXRlbXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbXNSZXNwb25zZS5lbWl0KG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXJJdGVtcygpOiB2b2lkIHtcbiAgICB0aGlzLmF2YWlsYWJsZU9wdGlvbnMgPSB0aGlzLmZpbHRlckJ5UGlwZS50cmFuc2Zvcm0odGhpcy5pdGVtcywgdGhpcy5zZWFyY2hUZXh0KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSkgb25Eb2N1bWVudENsaWNrKCRldmVudDogUG9pbnRlckV2ZW50KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9lcmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoJGV2ZW50LnRhcmdldCkgJiYgdGhpcy5kcm9wZG93bk9wZW5lZCkge1xuICAgICAgdGhpcy5kcm9wZG93bk9wZW5lZCA9IGZhbHNlO1xuXG4gICAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXNSZXNwb25zZS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtcyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbXNSZXNwb25zZS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtc1swXSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnO1xuICAgICAgdGhpcy5hdmFpbGFibGVPcHRpb25zID0gdGhpcy5pdGVtcztcbiAgICB9XG4gIH1cbn1cbiIsIjxsYWJlbCBjbGFzcz1cImhyLWxhYmVsIHNtLWJvbGQge3tnZXRTdGF0dXMoKX19XCIgKm5nSWY9XCJsYWJlbFwiPlxuICB7e2xhYmVsfX0gPHNwYW4gKm5nSWY9XCJyZXF1aXJlZCB8fCBoYXNFcnJvclwiPio8L3NwYW4+XG48L2xhYmVsPlxuPGRpdiBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWdcIiBjbGFzcz1cImdyYXZpdHktaW5wdXQtZmllbGQge3tzaXplfX0ge3t3aWR0aH19LXdpZHRoIHt7Z2V0U3RhdHVzKCl9fVwiXG4gICAgIChjbGljayk9XCJ0b2dnbGVEcm9wZG93bigpXCI+XG4gIDxncmF2aXR5LWljb24gY2xhc3M9XCJsZWZ0XCIgW2ljb25OYW1lXT1cImljb25MZWZ0XCIgW2ljb25TaXplXT1cImlzSWNvbkxlZnROZXcoKSA/ICdtZC0xNicgOiBudWxsXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImljb25MZWZ0XCI+PC9ncmF2aXR5LWljb24+XG4gIDxwIGNsYXNzPVwiaHItbGFiZWwge3tzaXplfX0tcmVndWxhciB2YWx1ZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3RlZEl0ZW1zLmxlbmd0aCA9PSAwXCI+XG4gICAgICB7e3BsYWNlaG9sZGVyID8gcGxhY2Vob2xkZXIgOiBsYWJlbH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBzZWxlY3RlZEl0ZW1zOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIHt7Y29uZmlnID8gaXRlbVtjb25maWcubGFiZWxdIDogaXRlbX19e3tpICE9IHNlbGVjdGVkSXRlbXMubGVuZ3RoIC0gMSA/ICcsJyA6ICcnfX1cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3A+XG4gIDxncmF2aXR5LWljb24gY2xhc3M9XCJyaWdodFwiIFtpY29uTmFtZV09XCJkcm9wZG93bk9wZW5lZCA/ICdhcnJvdy11cCc6ICdhcnJvdy1kb3duJ1wiIFtpY29uU2l6ZV09XCInbWQtMTYnXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFpc1JlYWRvbmx5XCI+PC9ncmF2aXR5LWljb24+XG4gIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1wYW5lbFwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiAqbmdJZj1cImRyb3Bkb3duT3BlbmVkXCJcbiAgICAgICBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgKyAnX3BhbmVsJ1wiPlxuICAgIDxkaXYgY2xhc3M9XCJzZWFyY2gtaW5wdXRcIj5cbiAgICAgIDxncmF2aXR5LWljb24gY2xhc3M9XCJzZWFyY2gtaWNvblwiIFtpY29uTmFtZV09XCInc2VhcmNoJ1wiIFtpY29uU2l6ZV09XCInc20tMTInXCI+PC9ncmF2aXR5LWljb24+XG4gICAgICA8aW5wdXQgYXV0b2NvbXBsZXRlPVwib2ZmXCIgY2xhc3M9XCJoci1sYWJlbCB7e3NpemV9fS1yZWd1bGFyXCIgKGlucHV0KT1cImZpbHRlckl0ZW1zKClcIlxuICAgICAgICAgICAgIFthdHRyLmRhdGEtY3ldPVwiY3lwcmVzc1RhZyArICdfc2VhcmNoX2lucHV0J1wiIGF1dG9mb2N1c1xuICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiIHBsYWNlaG9sZGVyPVwie3tjdXJyZW50TGFuZyA9PSAnZXMnID8gJ0xpbXBpYXInIDogJ1NlYXJjaCBpbnB1dCd9fVwiPlxuICAgICAgPGdyYXZpdHktaWNvbiBjbGFzcz1cInBvaW50ZXIgcmVzZXQtaWNvblwiIChjbGljayk9XCJzZWFyY2hUZXh0ID0gJyc7IGZpbHRlckl0ZW1zKClcIiBbaWNvbk5hbWVdPVwiJ3Vuc3VjY2VzcydcIlxuICAgICAgICAgICAgICAgICAgICBbaWNvblNpemVdPVwiJ3NtLTEyJ1wiICpuZ0lmPVwic2VhcmNoVGV4dD8ubGVuZ3RoID4gMFwiPjwvZ3Jhdml0eS1pY29uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpdGVtc1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImhyLWxhYmVsIGl0ZW0ge3tzaXplfX0tcmVndWxhciBwb2ludGVyXCIgW2NsYXNzLnNlbGVjdGVkXT1cImNoZWNrSWZTZWxlY3RlZChpdGVtKVwiXG4gICAgICAgICAgIChjbGljayk9XCJzZWxlY3RJdGVtKGl0ZW0pXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgYXZhaWxhYmxlT3B0aW9uc1wiPlxuICAgICAgICA8Z3Jhdml0eS1jaGVja2JveCBbY2hlY2tlZF09XCJjaGVja0lmU2VsZWN0ZWQoaXRlbSlcIiAqbmdJZj1cIm11bHRpcGxlXCI+XG4gICAgICAgICAge3tjb25maWcgPyBpdGVtW2NvbmZpZy5sYWJlbF0gOiBpdGVtfX1cbiAgICAgICAgPC9ncmF2aXR5LWNoZWNrYm94PlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIW11bHRpcGxlXCI+e3tjb25maWcgPyBpdGVtW2NvbmZpZy5sYWJlbF0gOiBpdGVtfX08L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImhyLWxhYmVsIGl0ZW0ge3tzaXplfX0tYm9sZCBuby1yZXN1bHRzXCIgKm5nSWY9XCJhdmFpbGFibGVPcHRpb25zLmxlbmd0aCA9PT0gMFwiPlxuICAgICAgICB7e2N1cnJlbnRMYW5nID09ICdlcycgPyAnU2luIHJlc3VsdGFkb3MnIDogJ05vIHJlc3VsdHMnfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJkcm9wZG93bi1mb290ZXJcIiAqbmdJZj1cInNlbGVjdGVkSXRlbXMubGVuZ3RoID4gMFwiIFtjbGFzcy5ub3QtY2xlYXJhYmxlXT1cIiFjbGVhcmFibGVcIj5cbiAgICAgIDxwIGNsYXNzPVwiaHItbGFiZWwgcG9pbnRlciBzbS1yZWd1bGFyXCIgKGNsaWNrKT1cImNsZWFyU2VsZWN0aW9uKClcIiAqbmdJZj1cImNsZWFyYWJsZVwiXG4gICAgICAgICBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWcgKyAnX2NsZWFyJ1wiPlxuICAgICAgICB7e2N1cnJlbnRMYW5nID09ICdlcycgPyAnTGltcGlhcicgOiAnQ2xlYXIgc2VsZWN0aW9uJ319XG4gICAgICA8L3A+XG4gICAgICA8cCBjbGFzcz1cImhyLWxhYmVsIHBvaW50ZXIgc20tYm9sZFwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7IHRvZ2dsZURyb3Bkb3duKClcIlxuICAgICAgICAgKm5nSWY9XCJhdmFpbGFibGVPcHRpb25zLmxlbmd0aCAhPSAwXCIgW2F0dHIuZGF0YS1jeV09XCJjeXByZXNzVGFnICsgJ19hcHBseSdcIj5cbiAgICAgICAge3tjdXJyZW50TGFuZyA9PSAnZXMnID8gJ0FwbGljYXInIDogJ0FwcGx5J319XG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG48cCBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXIgc3VwcG9ydGluZy10ZXh0IHt7Z2V0U3RhdHVzKCl9fSB7e3NpemV9fVwiICpuZ0lmPVwic3VwcG9ydFRleHRcIj5cbiAgPGdyYXZpdHktaWNvbiBbaWNvbk5hbWVdPVwiJ3F1ZXN0aW9uLWNpcmNsZSdcIiAqbmdJZj1cImhhc0Vycm9yXCIgW2ljb25TaXplXT1cIidtZC0xNidcIj48L2dyYXZpdHktaWNvbj5cbiAge3tzdXBwb3J0VGV4dH19XG48L3A+XG48cCBjbGFzcz1cImhyLWxhYmVsIHNtLXJlZ3VsYXIgc3VwcG9ydGluZy10ZXh0IHt7Z2V0U3RhdHVzKCl9fSB7e3NpemV9fVwiXG4gICAqbmdJZj1cIiFzdXBwb3J0VGV4dCAmJiBnZXRTdGF0dXMoKSA9PSAnYWN0aXZlJyAmJiBzZWxlY3RlZEl0ZW1zLmxlbmd0aCA9PSAwICYmIHJlcXVpcmVkXCI+XG4gIHt7Y3VycmVudExhbmcgPT0gJ2VzJyA/ICdSZXF1ZXJpZG8nIDogJ1JlcXVpcmVkJ319XG48L3A+XG4iXX0=
@@ -107,7 +107,8 @@ export class GravityTextFieldComponent {
107
107
  ($event.key === 'a' && $event.metaKey === true) || // Allow: Cmd+A (Mac)
108
108
  ($event.key === 'c' && $event.metaKey === true) || // Allow: Cmd+C (Mac)
109
109
  ($event.key === 'v' && $event.metaKey === true) || // Allow: Cmd+V (Mac)
110
- ($event.key === 'x' && $event.metaKey === true) // Allow: Cmd+X (Mac)
110
+ ($event.key === 'x' && $event.metaKey === true) || // Allow: Cmd+X (Mac)
111
+ ($event.key === '.') || ($event.key === ',') // Allow: dot and comma for decimal
111
112
  ) {
112
113
  // let it happen, don't do anything
113
114
  return;
@@ -179,4 +180,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
179
180
  }], width: [{
180
181
  type: Input
181
182
  }] } });
182
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS10ZXh0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS10ZXh0LWZpZWxkL2dyYXZpdHktdGV4dC1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktdGV4dC1maWVsZC9ncmF2aXR5LXRleHQtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQzs7OztBQU81RSxNQUFNLE9BQU8seUJBQXlCO0lBTHRDO1FBTWtDLHFCQUFnQixHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3pELHNCQUFpQixHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pFLDJCQUFzQixHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBSzdGLFlBQVk7UUFDSSxnQkFBVyxHQUFXLElBQUksQ0FBQztRQUUzQixnQkFBVyxHQUFrSSxTQUFTLENBQUM7UUFHdkosV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUdwQixrQkFBYSxHQUF5QixPQUFPLENBQUM7UUFFOUQsUUFBUTtRQUNRLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBQ2pDLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUlsRCxtQkFBbUI7UUFDSCxpQkFBWSxHQUFXLEtBQUssQ0FBQztRQUM3QixxQkFBZ0IsR0FBcUQsTUFBTSxDQUFDO1FBSTVGLFFBQVE7UUFDUSxTQUFJLEdB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c0JBQXpCLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUdVLGVBQWU7c0JBQTlCLEtBQUs7Z0JBQ1UsZ0JBQWdCO3NCQUEvQixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsU0FBUztzQkFBeEIsS0FBSztnQkFHVSxZQUFZO3NCQUEzQixLQUFLO2dCQUNVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBR1UsSUFBSTtzQkFBbkIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0dyYXZpdHlJY29uQ29tcG9uZW50fSBmcm9tIFwiLi4vZ3Jhdml0eS1pY29uL2dyYXZpdHktaWNvbi5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZ3Jhdml0eS10ZXh0LWZpZWxkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2dyYXZpdHktdGV4dC1maWVsZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2dyYXZpdHktdGV4dC1maWVsZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdyYXZpdHlUZXh0RmllbGRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBPdXRwdXQoJ2NsaWNrSWNvbkxlZnQnKSBwdWJsaWMgbGVmdEljb25SZXNwb25zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCdjbGlja0ljb25SaWdodCcpIHB1YmxpYyByaWdodEljb25SZXNwb25zZTogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCdyZXNwb25zZScpIHB1YmxpYyB0ZXh0RmllbGRWYWx1ZVJlc3BvbnNlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKCdpbnB1dEVsZW1lbnQnLCB7c3RhdGljOiBmYWxzZX0pIHByaXZhdGUgaW5wdXRFbGVtZW50OiBhbnk7XG4gIEBWaWV3Q2hpbGQoJ3RleHRBcmVhRWxlbWVudCcsIHtzdGF0aWM6IGZhbHNlfSkgcHJpdmF0ZSB0ZXh0QXJlYUVsZW1lbnQ6IGFueTtcblxuICAvLyBDb21wb25lbnRcbiAgQElucHV0KCkgcHVibGljIGN1cnJlbnRMYW5nOiBzdHJpbmcgPSAnZW4nO1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tSW5wdXRWYWx1ZTogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tU3RhdGU6ICdkZWZhdWx0JyB8ICdhY3RpdmUnIHwgJ2hvdmVyJyB8ICd0eXBpbmcnIHwgJ3R5cGVkJyB8ICd0eXBlZC1lcnJvcicgfCAndHlwZWQtcG9zaXRpdmUnIHwgJ2Rpc2FibGVkJyB8ICdyZWFkb25seScgfCAnYXV0b2ZpbGwnID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSBwdWJsaWMgY3lwcmVzc1RhZzogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHByZWZpeDogc3RyaW5nID0gXCJcIjtcbiAgQElucHV0KCkgcHVibGljIHJlcXVpcmVkOiBib29sZWFuO1xuICBASW5wdXQoKSBwdWJsaWMgc3VwcG9ydFRleHQ6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHRleHRGaWVsZFR5cGU6ICdpbnB1dCcgfCAndGV4dGFyZWEnID0gXCJpbnB1dFwiO1xuXG4gIC8vIEljb25zXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGlja09uTGVmdEljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGNsaWNrT25SaWdodEljb246IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgcHVibGljIGljb25MZWZ0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpY29uUmlnaHQ6IHN0cmluZztcblxuICAvLyBJbnB1dCB8IFRleHRhcmVhXG4gIEBJbnB1dCgpIHB1YmxpYyBhdXRvY29tcGxldGU6IHN0cmluZyA9ICdvZmYnO1xuICBASW5wdXQoKSBwdWJsaWMgaW5wdXRDb250ZW50VHlwZTogJ2VtYWlsJyB8ICdudW1iZXInIHwgJ3Bhc3N3b3JkJyB8ICd0ZWwnIHwgJ3RleHQnID0gXCJ0ZXh0XCI7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgdmFsaWRhdGlvbnM6IHsgbWF4TGVuZ3RoPzogbnVtYmVyOyBtaW5MZW5ndGg/OiBudW1iZXIgfTtcblxuICAvLyBTaXplc1xuICBASW5wdXQoKSBwdWJsaWMgc2l6ZTogJ3NtJyB8ICdtZCcgPSAnbWQnO1xuICBASW5wdXQoKSBwdWJsaWMgd2lkdGg6ICdzaG9ydCcgfCAnbWVkaXVtJyB8ICdmdWxsJyB8ICdmaXQnID0gJ3Nob3J0JztcblxuICBwdWJsaWMgZm9jdXNJbnB1dDogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgaW5wdXRWYWx1ZTogc3RyaW5nID0gJyc7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbnB1dFZhbHVlID0gdGhpcy5jdXN0b21JbnB1dFZhbHVlID8gdGhpcy5jdXN0b21JbnB1dFZhbHVlIDogJyc7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKGNoYW5nZXNbJ2N1c3RvbUlucHV0VmFsdWUnXSkge1xuICAgICAgdGhpcy5pbnB1dFZhbHVlID0gY2hhbmdlc1snY3VzdG9tSW5wdXRWYWx1ZSddLmN1cnJlbnRWYWx1ZSA/IGNoYW5nZXNbJ2N1c3RvbUlucHV0VmFsdWUnXS5jdXJyZW50VmFsdWUgOiAnJztcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0UGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICBpZiAodGhpcy5wbGFjZWhvbGRlciAmJiB0aGlzLnBsYWNlaG9sZGVyICE9ICcnKSB7XG4gICAgICByZXR1cm4gdGhpcy5wbGFjZWhvbGRlcjtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHRoaXMubGFiZWw7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNsZWFySW5wdXQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2VJbnB1dFZhbHVlKHRydWUpO1xuICB9XG5cbiAgcHVibGljIGNoYW5nZUlucHV0VmFsdWUoY2xlYXJJbnB1dDogYm9vbGVhbiA9IGZhbHNlKTogdm9pZCB7XG4gICAgaWYgKGNsZWFySW5wdXQpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9ICcnO1xuICAgIH0gZWxzZSBpZiAodGhpcy50ZXh0RmllbGRUeXBlID09ICdpbnB1dCcpIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMudGV4dEFyZWFFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaW5wdXRWYWx1ZSA9PSAnJykge1xuICAgICAgdGhpcy50ZXh0RmllbGRWYWx1ZVJlc3BvbnNlLmVtaXQoJycpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRleHRGaWVsZFZhbHVlUmVzcG9uc2UuZW1pdCh0aGlzLnByZWZpeCArIHRoaXMuaW5wdXRWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGhhbmRsZUljb25DbGljayhpY29uUG9zaXRpb246ICdsZWZ0JyB8ICdyaWdodCcpOiB2b2lkIHtcbiAgICBpZiAoaWNvblBvc2l0aW9uID09ICdsZWZ0JyAmJiB0aGlzLmNsaWNrT25MZWZ0SWNvbikge1xuICAgICAgdGhpcy5sZWZ0SWNvblJlc3BvbnNlLmVtaXQoKTtcbiAgICB9XG5cbiAgICBpZiAoaWNvblBvc2l0aW9uID09ICdyaWdodCcgJiYgdGhpcy5jbGlja09uUmlnaHRJY29uKSB7XG4gICAgICB0aGlzLnJpZ2h0SWNvblJlc3BvbnNlLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VGV4dEZpZWxkU3RhdHVzKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMuY3VzdG9tU3RhdGUgPT0gJ2RlZmF1bHQnKSB7XG4gICAgICBpZiAoIXRoaXMuZm9jdXNJbnB1dCAmJiAhdGhpcy5pbnB1dFZhbHVlKSB7XG4gICAgICAgIHJldHVybiAnYWN0aXZlJztcbiAgICAgIH0gZWxzZSBpZiAoIXRoaXMuZm9jdXNJbnB1dCAmJiB0aGlzLmlucHV0VmFsdWUpIHtcbiAgICAgICAgcmV0dXJuICd0eXBlZCc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gJ3R5cGluZyc7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmN1c3RvbVN0YXRlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRUZXh0RmllbGRJbnB1dEZvbnRTaXplKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdoci1sYWJlbCAnICsgdGhpcy5zaXplICsgJy1yZWd1bGFyJztcbiAgfVxuXG4gIHB1YmxpYyBpc05ld0ljb24oaWNvblBvc2l0aW9uOiAnbGVmdCcgfCAncmlnaHQnKTogYm9vbGVhbiB7XG4gICAgaWYgKGljb25Qb3NpdGlvbiA9PSAnbGVmdCcpIHtcbiAgICAgIHJldHVybiBHcmF2aXR5SWNvbkNvbXBvbmVudC5pc05ld0ljb24odGhpcy5pY29uTGVmdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBHcmF2aXR5SWNvbkNvbXBvbmVudC5pc05ld0ljb24odGhpcy5pY29uUmlnaHQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbktleURvd25FdmVudCgkZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pbnB1dENvbnRlbnRUeXBlID09ICdudW1iZXInKSB7XG4gICAgICBsZXQgbmF2aWdhdGlvbktleXMgPSBbJ0JhY2tzcGFjZScsICdEZWxldGUnLCAnVGFiJywgJ0VzY2FwZScsICdFbnRlcicsICdIb21lJywgJ0VuZCcsICdBcnJvd0xlZnQnLCAnQXJyb3dSaWdodCcsICdDbGVhcicsICdDb3B5JywgJ1Bhc3RlJ107XG5cbiAgICAgIGlmIChcbiAgICAgICAgbmF2aWdhdGlvbktleXMuaW5kZXhPZigkZXZlbnQua2V5KSA+IC0xIHx8IC8vIEFsbG93OiBuYXZpZ2F0aW9uIGtleXM6IGJhY2tzcGFjZSwgZGVsZXRlLCBhcnJvd3MgZXRjLlxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ2EnICYmICRldmVudC5jdHJsS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ3RybCtBXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAnYycgJiYgJGV2ZW50LmN0cmxLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDdHJsK0NcbiAgICAgICAgKCRldmVudC5rZXkgPT09ICd2JyAmJiAkZXZlbnQuY3RybEtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IEN0cmwrVlxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ3gnICYmICRldmVudC5jdHJsS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ3RybCtYXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAnYScgJiYgJGV2ZW50Lm1ldGFLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDbWQrQSAoTWFjKVxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ2MnICYmICRldmVudC5tZXRhS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ21kK0MgKE1hYylcbiAgICAgICAgKCRldmVudC5rZXkgPT09ICd2JyAmJiAkZXZlbnQubWV0YUtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IENtZCtWIChNYWMpXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAneCcgJiYgJGV2ZW50Lm1ldGFLZXkgPT09IHRydWUpIC8vIEFsbG93OiBDbWQrWCAoTWFjKVxuICAgICAgKSB7XG4gICAgICAgIC8vIGxldCBpdCBoYXBwZW4sIGRvbid0IGRvIGFueXRoaW5nXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gRW5zdXJlIHRoYXQgaXQgaXMgYSBudW1iZXIgYW5kIHN0b3AgdGhlIGtleXByZXNzXG4gICAgICBpZiAoXG4gICAgICAgICgkZXZlbnQuc2hpZnRLZXkgfHwgKCRldmVudC5rZXlDb2RlIDwgNDggfHwgJGV2ZW50LmtleUNvZGUgPiA1NykpICYmXG4gICAgICAgICgkZXZlbnQua2V5Q29kZSA8IDk2IHx8ICRldmVudC5rZXlDb2RlID4gMTA1KVxuICAgICAgKSB7XG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwiaHItbGFiZWwgc20tYm9sZCB7e2dldFRleHRGaWVsZFN0YXR1cygpfX1cIiBbY2xhc3MuY3VzdG9tLWxhYmVsLXNpemVdPVwic2l6ZSA9PSAnc20nXCIgKm5nSWY9XCJsYWJlbFwiPlxuICB7e2xhYmVsfX0gPHNwYW4gKm5nSWY9XCJyZXF1aXJlZCB8fCBnZXRUZXh0RmllbGRTdGF0dXMoKSA9PSAndHlwZWQtZXJyb3InXCI+Kjwvc3Bhbj5cbjwvbGFiZWw+XG48ZGl2IGNsYXNzPVwiZ3Jhdml0eS1pbnB1dC1maWVsZCB7e3NpemV9fSB7e3dpZHRofX0td2lkdGgge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19XCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpY29uTGVmdFwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvbnNcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie2ljb25Qb3NpdGlvbjogJ2xlZnQnfVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPHNwYW4gY2xhc3M9XCJ7e2dldFRleHRGaWVsZElucHV0Rm9udFNpemUoKX19IHByZWZpeFwiPnt7cHJlZml4fX08L3NwYW4+XG4gIDxpbnB1dCBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWdcIlxuICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY3VzdG9tU3RhdGUgPT0gJ2Rpc2FibGVkJyA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLnJlYWRvbmx5XT1cImN1c3RvbVN0YXRlID09ICdyZWFkb25seScgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICAgICBbbWF4TGVuZ3RoXT1cInZhbGlkYXRpb25zPy5tYXhMZW5ndGggPyB2YWxpZGF0aW9ucz8ubWF4TGVuZ3RoIDogMTAwXCJcbiAgICAgICAgIFttaW5MZW5ndGhdPVwidmFsaWRhdGlvbnM/Lm1pbkxlbmd0aCA/IHZhbGlkYXRpb25zPy5taW5MZW5ndGggOiAwXCJcbiAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgIFt0eXBlXT1cImlucHV0Q29udGVudFR5cGUgIT0gJ251bWJlcicgPyBpbnB1dENvbnRlbnRUeXBlIDogJ3RleHQnXCJcbiAgICAgICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcblxuICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlSW5wdXRWYWx1ZSgpXCJcbiAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiXG4gICAgICAgICAoa2V5ZG93bik9XCJvbktleURvd25FdmVudCgkZXZlbnQpXCJcbiAgICAgICAgIChrZXl1cCk9XCJjaGFuZ2VJbnB1dFZhbHVlKClcIlxuXG4gICAgICAgICBjbGFzcz1cInt7Z2V0VGV4dEZpZWxkSW5wdXRGb250U2l6ZSgpfX1cIlxuXG4gICAgICAgICAjaW5wdXRFbGVtZW50XG5cbiAgICAgICAgICpuZ0lmPVwidGV4dEZpZWxkVHlwZSA9PSAnaW5wdXQnXCI+XG4gIDx0ZXh0YXJlYSBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWdcIlxuICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY3VzdG9tU3RhdGUgPT0gJ2Rpc2FibGVkJyA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgICAgIFthdHRyLnJlYWRvbmx5XT1cImN1c3RvbVN0YXRlID09ICdyZWFkb25seScgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgICAgICBbbWF4TGVuZ3RoXT1cInZhbGlkYXRpb25zPy5tYXhMZW5ndGggPyB2YWxpZGF0aW9ucz8ubWF4TGVuZ3RoIDogMjAwXCJcbiAgICAgICAgICAgIFttaW5MZW5ndGhdPVwidmFsaWRhdGlvbnM/Lm1pbkxlbmd0aCA/IHZhbGlkYXRpb25zPy5taW5MZW5ndGggOiAwXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcblxuICAgICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlSW5wdXRWYWx1ZSgpXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiXG4gICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleURvd25FdmVudCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChrZXl1cCk9XCJjaGFuZ2VJbnB1dFZhbHVlKClcIlxuXG4gICAgICAgICAgICBjbGFzcz1cInt7Z2V0VGV4dEZpZWxkSW5wdXRGb250U2l6ZSgpfX1cIlxuICAgICAgICAgICAgcm93cz1cIjFcIlxuXG4gICAgICAgICAgICAjdGV4dEFyZWFFbGVtZW50XG5cbiAgICAgICAgICAgICpuZ0lmPVwidGV4dEZpZWxkVHlwZSA9PSAndGV4dGFyZWEnXCI+PC90ZXh0YXJlYT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImljb25SaWdodFwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvbnNcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie2ljb25Qb3NpdGlvbjogJ3JpZ2h0J31cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjxwIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhciBzdXBwb3J0aW5nLXRleHQge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19IHt7c2l6ZX19XCJcbiAgIFtjbGFzcy5jdXN0b20tbGFiZWwtc2l6ZV09XCJzaXplID09ICdzbSdcIiAqbmdJZj1cInN1cHBvcnRUZXh0XCI+XG4gIDxncmF2aXR5LWljb24gW2ljb25OYW1lXT1cIidxdWVzdGlvbi1jaXJjbGUnXCIgKm5nSWY9XCJnZXRUZXh0RmllbGRTdGF0dXMoKSA9PSAndHlwZWQtZXJyb3InXCJcbiAgICAgICAgICAgICAgICBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICB7e3N1cHBvcnRUZXh0fX1cbjwvcD5cbjxwIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhciBzdXBwb3J0aW5nLXRleHQge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19IHt7c2l6ZX19XCJcbiAgIFtjbGFzcy5jdXN0b20tbGFiZWwtc2l6ZV09XCJzaXplID09ICdzbSdcIlxuICAgKm5nSWY9XCIhc3VwcG9ydFRleHQgJiYgZ2V0VGV4dEZpZWxkU3RhdHVzKCkgPT0gJ2FjdGl2ZScgJiYgaW5wdXRWYWx1ZSA9PSAnJyAmJiByZXF1aXJlZFwiPlxuICB7e2N1cnJlbnRMYW5nID09ICdlcycgPyAnUmVxdWVyaWRvJyA6ICdSZXF1aXJlZCd9fVxuPC9wPlxuXG48bmctdGVtcGxhdGUgI2ljb25zIGxldC1pY29uUG9zaXRpb249XCJpY29uUG9zaXRpb25cIj5cbiAgPGdyYXZpdHktaWNvbiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBoYW5kbGVJY29uQ2xpY2soaWNvblBvc2l0aW9uKVwiIGNsYXNzPVwie3tpY29uUG9zaXRpb259fVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnBvaW50ZXJdPVwiKGljb25Qb3NpdGlvbiA9PSAnbGVmdCcgJiYgY2xpY2tPbkxlZnRJY29uKSB8fCAoaWNvblBvc2l0aW9uID09ICdyaWdodCcgJiYgY2xpY2tPblJpZ2h0SWNvbilcIlxuICAgICAgICAgICAgICAgIFtpY29uTmFtZV09XCJpY29uUG9zaXRpb24gPT0gJ2xlZnQnID8gaWNvbkxlZnQgOiBpY29uUmlnaHRcIlxuICAgICAgICAgICAgICAgIFtpY29uU2l6ZV09XCJpc05ld0ljb24oaWNvblBvc2l0aW9uKSA/ICdtZC0xNicgOiBudWxsXCI+PC9ncmF2aXR5LWljb24+XG48L25nLXRlbXBsYXRlPlxuIl19
183
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3Jhdml0eS10ZXh0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dyYXZpdHktZGVzaWduLXN5c3RlbS9zcmMvbGliL2NvbXBvbmVudHMvZ3Jhdml0eS10ZXh0LWZpZWxkL2dyYXZpdHktdGV4dC1maWVsZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ncmF2aXR5LWRlc2lnbi1zeXN0ZW0vc3JjL2xpYi9jb21wb25lbnRzL2dyYXZpdHktdGV4dC1maWVsZC9ncmF2aXR5LXRleHQtZmllbGQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFxQixNQUFNLEVBQWlCLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsSCxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSx3Q0FBd0MsQ0FBQzs7OztBQU81RSxNQUFNLE9BQU8seUJBQXlCO0lBTHRDO1FBTWtDLHFCQUFnQixHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3pELHNCQUFpQixHQUF1QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2pFLDJCQUFzQixHQUF5QixJQUFJLFlBQVksRUFBRSxDQUFDO1FBSzdGLFlBQVk7UUFDSSxnQkFBVyxHQUFXLElBQUksQ0FBQztRQUUzQixnQkFBVyxHQUFrSSxTQUFTLENBQUM7UUFHdkosV0FBTSxHQUFXLEVBQUUsQ0FBQztRQUdwQixrQkFBYSxHQUF5QixPQUFPLENBQUM7UUFFOUQsUUFBUTtRQUNRLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBQ2pDLHFCQUFnQixHQUFZLEtBQUssQ0FBQztRQUlsRCxtQkFBbUI7UUFDSCxpQkFBWSxHQUFXLEtBQUssQ0FBQztRQUM3QixxQkFBZ0IsR0FBcUQsTUFBTSxDQUFDO1FBSTVGLFFBQVE7UUFDUSxTQUFJLEdB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LEtBQUssRUFBQztnQkFHN0IsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLO2dCQUNVLEtBQUs7c0JBQXBCLEtBQUs7Z0JBQ1UsTUFBTTtzQkFBckIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFHVSxlQUFlO3NCQUE5QixLQUFLO2dCQUNVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBR1UsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUdVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsS0FBSztzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtHcmF2aXR5SWNvbkNvbXBvbmVudH0gZnJvbSBcIi4uL2dyYXZpdHktaWNvbi9ncmF2aXR5LWljb24uY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dyYXZpdHktdGV4dC1maWVsZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9ncmF2aXR5LXRleHQtZmllbGQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ncmF2aXR5LXRleHQtZmllbGQuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBHcmF2aXR5VGV4dEZpZWxkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBAT3V0cHV0KCdjbGlja0ljb25MZWZ0JykgcHVibGljIGxlZnRJY29uUmVzcG9uc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgnY2xpY2tJY29uUmlnaHQnKSBwdWJsaWMgcmlnaHRJY29uUmVzcG9uc2U6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgncmVzcG9uc2UnKSBwdWJsaWMgdGV4dEZpZWxkVmFsdWVSZXNwb25zZTogRXZlbnRFbWl0dGVyPHN0cmluZz4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZCgnaW5wdXRFbGVtZW50Jywge3N0YXRpYzogZmFsc2V9KSBwcml2YXRlIGlucHV0RWxlbWVudDogYW55O1xuICBAVmlld0NoaWxkKCd0ZXh0QXJlYUVsZW1lbnQnLCB7c3RhdGljOiBmYWxzZX0pIHByaXZhdGUgdGV4dEFyZWFFbGVtZW50OiBhbnk7XG5cbiAgLy8gQ29tcG9uZW50XG4gIEBJbnB1dCgpIHB1YmxpYyBjdXJyZW50TGFuZzogc3RyaW5nID0gJ2VuJztcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUlucHV0VmFsdWU6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbVN0YXRlOiAnZGVmYXVsdCcgfCAnYWN0aXZlJyB8ICdob3ZlcicgfCAndHlwaW5nJyB8ICd0eXBlZCcgfCAndHlwZWQtZXJyb3InIHwgJ3R5cGVkLXBvc2l0aXZlJyB8ICdkaXNhYmxlZCcgfCAncmVhZG9ubHknIHwgJ2F1dG9maWxsJyA9ICdkZWZhdWx0JztcbiAgQElucHV0KCkgcHVibGljIGN5cHJlc3NUYWc6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyBwcmVmaXg6IHN0cmluZyA9IFwiXCI7XG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgcHVibGljIHN1cHBvcnRUZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHB1YmxpYyB0ZXh0RmllbGRUeXBlOiAnaW5wdXQnIHwgJ3RleHRhcmVhJyA9IFwiaW5wdXRcIjtcblxuICAvLyBJY29uc1xuICBASW5wdXQoKSBwdWJsaWMgY2xpY2tPbkxlZnRJY29uOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBjbGlja09uUmlnaHRJY29uOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHB1YmxpYyBpY29uTGVmdDogc3RyaW5nO1xuICBASW5wdXQoKSBwdWJsaWMgaWNvblJpZ2h0OiBzdHJpbmc7XG5cbiAgLy8gSW5wdXQgfCBUZXh0YXJlYVxuICBASW5wdXQoKSBwdWJsaWMgYXV0b2NvbXBsZXRlOiBzdHJpbmcgPSAnb2ZmJztcbiAgQElucHV0KCkgcHVibGljIGlucHV0Q29udGVudFR5cGU6ICdlbWFpbCcgfCAnbnVtYmVyJyB8ICdwYXNzd29yZCcgfCAndGVsJyB8ICd0ZXh0JyA9IFwidGV4dFwiO1xuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZztcbiAgQElucHV0KCkgcHVibGljIHZhbGlkYXRpb25zOiB7IG1heExlbmd0aD86IG51bWJlcjsgbWluTGVuZ3RoPzogbnVtYmVyIH07XG5cbiAgLy8gU2l6ZXNcbiAgQElucHV0KCkgcHVibGljIHNpemU6ICdzbScgfCAnbWQnID0gJ21kJztcbiAgQElucHV0KCkgcHVibGljIHdpZHRoOiAnc2hvcnQnIHwgJ21lZGl1bScgfCAnZnVsbCcgfCAnZml0JyA9ICdzaG9ydCc7XG5cbiAgcHVibGljIGZvY3VzSW5wdXQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGlucHV0VmFsdWU6IHN0cmluZyA9ICcnO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5wdXRWYWx1ZSA9IHRoaXMuY3VzdG9tSW5wdXRWYWx1ZSA/IHRoaXMuY3VzdG9tSW5wdXRWYWx1ZSA6ICcnO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydjdXN0b21JbnB1dFZhbHVlJ10pIHtcbiAgICAgIHRoaXMuaW5wdXRWYWx1ZSA9IGNoYW5nZXNbJ2N1c3RvbUlucHV0VmFsdWUnXS5jdXJyZW50VmFsdWUgPyBjaGFuZ2VzWydjdXN0b21JbnB1dFZhbHVlJ10uY3VycmVudFZhbHVlIDogJyc7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgaWYgKHRoaXMucGxhY2Vob2xkZXIgJiYgdGhpcy5wbGFjZWhvbGRlciAhPSAnJykge1xuICAgICAgcmV0dXJuIHRoaXMucGxhY2Vob2xkZXI7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmxhYmVsO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhcklucHV0KCk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlSW5wdXRWYWx1ZSh0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBjaGFuZ2VJbnB1dFZhbHVlKGNsZWFySW5wdXQ6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge1xuICAgIGlmIChjbGVhcklucHV0KSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSAnJztcbiAgICB9IGVsc2UgaWYgKHRoaXMudGV4dEZpZWxkVHlwZSA9PSAnaW5wdXQnKSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLmlucHV0RWxlbWVudC5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmlucHV0VmFsdWUgPSB0aGlzLnRleHRBcmVhRWxlbWVudC5uYXRpdmVFbGVtZW50LnZhbHVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmlucHV0VmFsdWUgPT0gJycpIHtcbiAgICAgIHRoaXMudGV4dEZpZWxkVmFsdWVSZXNwb25zZS5lbWl0KCcnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy50ZXh0RmllbGRWYWx1ZVJlc3BvbnNlLmVtaXQodGhpcy5wcmVmaXggKyB0aGlzLmlucHV0VmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVJY29uQ2xpY2soaWNvblBvc2l0aW9uOiAnbGVmdCcgfCAncmlnaHQnKTogdm9pZCB7XG4gICAgaWYgKGljb25Qb3NpdGlvbiA9PSAnbGVmdCcgJiYgdGhpcy5jbGlja09uTGVmdEljb24pIHtcbiAgICAgIHRoaXMubGVmdEljb25SZXNwb25zZS5lbWl0KCk7XG4gICAgfVxuXG4gICAgaWYgKGljb25Qb3NpdGlvbiA9PSAncmlnaHQnICYmIHRoaXMuY2xpY2tPblJpZ2h0SWNvbikge1xuICAgICAgdGhpcy5yaWdodEljb25SZXNwb25zZS5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldFRleHRGaWVsZFN0YXR1cygpOiBzdHJpbmcge1xuICAgIGlmICh0aGlzLmN1c3RvbVN0YXRlID09ICdkZWZhdWx0Jykge1xuICAgICAgaWYgKCF0aGlzLmZvY3VzSW5wdXQgJiYgIXRoaXMuaW5wdXRWYWx1ZSkge1xuICAgICAgICByZXR1cm4gJ2FjdGl2ZSc7XG4gICAgICB9IGVsc2UgaWYgKCF0aGlzLmZvY3VzSW5wdXQgJiYgdGhpcy5pbnB1dFZhbHVlKSB7XG4gICAgICAgIHJldHVybiAndHlwZWQnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuICd0eXBpbmcnO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy5jdXN0b21TdGF0ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VGV4dEZpZWxkSW5wdXRGb250U2l6ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnaHItbGFiZWwgJyArIHRoaXMuc2l6ZSArICctcmVndWxhcic7XG4gIH1cblxuICBwdWJsaWMgaXNOZXdJY29uKGljb25Qb3NpdGlvbjogJ2xlZnQnIHwgJ3JpZ2h0Jyk6IGJvb2xlYW4ge1xuICAgIGlmIChpY29uUG9zaXRpb24gPT0gJ2xlZnQnKSB7XG4gICAgICByZXR1cm4gR3Jhdml0eUljb25Db21wb25lbnQuaXNOZXdJY29uKHRoaXMuaWNvbkxlZnQpO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gR3Jhdml0eUljb25Db21wb25lbnQuaXNOZXdJY29uKHRoaXMuaWNvblJpZ2h0KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25LZXlEb3duRXZlbnQoJGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaW5wdXRDb250ZW50VHlwZSA9PSAnbnVtYmVyJykge1xuICAgICAgbGV0IG5hdmlnYXRpb25LZXlzID0gWydCYWNrc3BhY2UnLCAnRGVsZXRlJywgJ1RhYicsICdFc2NhcGUnLCAnRW50ZXInLCAnSG9tZScsICdFbmQnLCAnQXJyb3dMZWZ0JywgJ0Fycm93UmlnaHQnLCAnQ2xlYXInLCAnQ29weScsICdQYXN0ZSddO1xuXG4gICAgICBpZiAoXG4gICAgICAgIG5hdmlnYXRpb25LZXlzLmluZGV4T2YoJGV2ZW50LmtleSkgPiAtMSB8fCAvLyBBbGxvdzogbmF2aWdhdGlvbiBrZXlzOiBiYWNrc3BhY2UsIGRlbGV0ZSwgYXJyb3dzIGV0Yy5cbiAgICAgICAgKCRldmVudC5rZXkgPT09ICdhJyAmJiAkZXZlbnQuY3RybEtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IEN0cmwrQVxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ2MnICYmICRldmVudC5jdHJsS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ3RybCtDXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAndicgJiYgJGV2ZW50LmN0cmxLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDdHJsK1ZcbiAgICAgICAgKCRldmVudC5rZXkgPT09ICd4JyAmJiAkZXZlbnQuY3RybEtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IEN0cmwrWFxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ2EnICYmICRldmVudC5tZXRhS2V5ID09PSB0cnVlKSB8fCAvLyBBbGxvdzogQ21kK0EgKE1hYylcbiAgICAgICAgKCRldmVudC5rZXkgPT09ICdjJyAmJiAkZXZlbnQubWV0YUtleSA9PT0gdHJ1ZSkgfHwgLy8gQWxsb3c6IENtZCtDIChNYWMpXG4gICAgICAgICgkZXZlbnQua2V5ID09PSAndicgJiYgJGV2ZW50Lm1ldGFLZXkgPT09IHRydWUpIHx8IC8vIEFsbG93OiBDbWQrViAoTWFjKVxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJ3gnICYmICRldmVudC5tZXRhS2V5ID09PSB0cnVlKSB8fC8vIEFsbG93OiBDbWQrWCAoTWFjKVxuICAgICAgICAoJGV2ZW50LmtleSA9PT0gJy4nKSB8fCAoJGV2ZW50LmtleSA9PT0gJywnKSAvLyBBbGxvdzogZG90IGFuZCBjb21tYSBmb3IgZGVjaW1hbFxuICAgICAgKSB7XG4gICAgICAgIC8vIGxldCBpdCBoYXBwZW4sIGRvbid0IGRvIGFueXRoaW5nXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gRW5zdXJlIHRoYXQgaXQgaXMgYSBudW1iZXIgYW5kIHN0b3AgdGhlIGtleXByZXNzXG4gICAgICBpZiAoXG4gICAgICAgICgkZXZlbnQuc2hpZnRLZXkgfHwgKCRldmVudC5rZXlDb2RlIDwgNDggfHwgJGV2ZW50LmtleUNvZGUgPiA1NykpICYmXG4gICAgICAgICgkZXZlbnQua2V5Q29kZSA8IDk2IHx8ICRldmVudC5rZXlDb2RlID4gMTA1KVxuICAgICAgKSB7XG4gICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiPGxhYmVsIGNsYXNzPVwiaHItbGFiZWwgc20tYm9sZCB7e2dldFRleHRGaWVsZFN0YXR1cygpfX1cIiBbY2xhc3MuY3VzdG9tLWxhYmVsLXNpemVdPVwic2l6ZSA9PSAnc20nXCIgKm5nSWY9XCJsYWJlbFwiPlxuICB7e2xhYmVsfX0gPHNwYW4gKm5nSWY9XCJyZXF1aXJlZCB8fCBnZXRUZXh0RmllbGRTdGF0dXMoKSA9PSAndHlwZWQtZXJyb3InXCI+Kjwvc3Bhbj5cbjwvbGFiZWw+XG48ZGl2IGNsYXNzPVwiZ3Jhdml0eS1pbnB1dC1maWVsZCB7e3NpemV9fSB7e3dpZHRofX0td2lkdGgge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19XCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJpY29uTGVmdFwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvbnNcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie2ljb25Qb3NpdGlvbjogJ2xlZnQnfVwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbiAgPHNwYW4gY2xhc3M9XCJ7e2dldFRleHRGaWVsZElucHV0Rm9udFNpemUoKX19IHByZWZpeFwiPnt7cHJlZml4fX08L3NwYW4+XG4gIDxpbnB1dCBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWdcIlxuICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY3VzdG9tU3RhdGUgPT0gJ2Rpc2FibGVkJyA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgIFthdHRyLnJlYWRvbmx5XT1cImN1c3RvbVN0YXRlID09ICdyZWFkb25seScgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gICAgICAgICBbbWF4TGVuZ3RoXT1cInZhbGlkYXRpb25zPy5tYXhMZW5ndGggPyB2YWxpZGF0aW9ucz8ubWF4TGVuZ3RoIDogMTAwXCJcbiAgICAgICAgIFttaW5MZW5ndGhdPVwidmFsaWRhdGlvbnM/Lm1pbkxlbmd0aCA/IHZhbGlkYXRpb25zPy5taW5MZW5ndGggOiAwXCJcbiAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgIFt0eXBlXT1cImlucHV0Q29udGVudFR5cGUgIT0gJ251bWJlcicgPyBpbnB1dENvbnRlbnRUeXBlIDogJ3RleHQnXCJcbiAgICAgICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcblxuICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlSW5wdXRWYWx1ZSgpXCJcbiAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiXG4gICAgICAgICAoa2V5ZG93bik9XCJvbktleURvd25FdmVudCgkZXZlbnQpXCJcbiAgICAgICAgIChrZXl1cCk9XCJjaGFuZ2VJbnB1dFZhbHVlKClcIlxuXG4gICAgICAgICBjbGFzcz1cInt7Z2V0VGV4dEZpZWxkSW5wdXRGb250U2l6ZSgpfX1cIlxuXG4gICAgICAgICAjaW5wdXRFbGVtZW50XG5cbiAgICAgICAgICpuZ0lmPVwidGV4dEZpZWxkVHlwZSA9PSAnaW5wdXQnXCI+XG4gIDx0ZXh0YXJlYSBbYXR0ci5kYXRhLWN5XT1cImN5cHJlc3NUYWdcIlxuICAgICAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiY3VzdG9tU3RhdGUgPT0gJ2Rpc2FibGVkJyA/IHRydWUgOiBudWxsXCJcbiAgICAgICAgICAgIFthdHRyLnJlYWRvbmx5XT1cImN1c3RvbVN0YXRlID09ICdyZWFkb25seScgPyB0cnVlIDogbnVsbFwiXG4gICAgICAgICAgICBbbWF4TGVuZ3RoXT1cInZhbGlkYXRpb25zPy5tYXhMZW5ndGggPyB2YWxpZGF0aW9ucz8ubWF4TGVuZ3RoIDogMjAwXCJcbiAgICAgICAgICAgIFttaW5MZW5ndGhdPVwidmFsaWRhdGlvbnM/Lm1pbkxlbmd0aCA/IHZhbGlkYXRpb25zPy5taW5MZW5ndGggOiAwXCJcbiAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJnZXRQbGFjZWhvbGRlcigpXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJpbnB1dFZhbHVlXCJcblxuICAgICAgICAgICAgKGJsdXIpPVwiZm9jdXNJbnB1dCA9IGZhbHNlXCJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlSW5wdXRWYWx1ZSgpXCJcbiAgICAgICAgICAgIChmb2N1cyk9XCJmb2N1c0lucHV0ID0gdHJ1ZVwiXG4gICAgICAgICAgICAoa2V5ZG93bik9XCJvbktleURvd25FdmVudCgkZXZlbnQpXCJcbiAgICAgICAgICAgIChrZXl1cCk9XCJjaGFuZ2VJbnB1dFZhbHVlKClcIlxuXG4gICAgICAgICAgICBjbGFzcz1cInt7Z2V0VGV4dEZpZWxkSW5wdXRGb250U2l6ZSgpfX1cIlxuICAgICAgICAgICAgcm93cz1cIjFcIlxuXG4gICAgICAgICAgICAjdGV4dEFyZWFFbGVtZW50XG5cbiAgICAgICAgICAgICpuZ0lmPVwidGV4dEZpZWxkVHlwZSA9PSAndGV4dGFyZWEnXCI+PC90ZXh0YXJlYT5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImljb25SaWdodFwiPlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiaWNvbnNcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie2ljb25Qb3NpdGlvbjogJ3JpZ2h0J31cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbjxwIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhciBzdXBwb3J0aW5nLXRleHQge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19IHt7c2l6ZX19XCJcbiAgIFtjbGFzcy5jdXN0b20tbGFiZWwtc2l6ZV09XCJzaXplID09ICdzbSdcIiAqbmdJZj1cInN1cHBvcnRUZXh0XCI+XG4gIDxncmF2aXR5LWljb24gW2ljb25OYW1lXT1cIidxdWVzdGlvbi1jaXJjbGUnXCIgKm5nSWY9XCJnZXRUZXh0RmllbGRTdGF0dXMoKSA9PSAndHlwZWQtZXJyb3InXCJcbiAgICAgICAgICAgICAgICBbaWNvblNpemVdPVwiJ21kLTE2J1wiPjwvZ3Jhdml0eS1pY29uPlxuICB7e3N1cHBvcnRUZXh0fX1cbjwvcD5cbjxwIGNsYXNzPVwiaHItbGFiZWwgc20tcmVndWxhciBzdXBwb3J0aW5nLXRleHQge3tnZXRUZXh0RmllbGRTdGF0dXMoKX19IHt7c2l6ZX19XCJcbiAgIFtjbGFzcy5jdXN0b20tbGFiZWwtc2l6ZV09XCJzaXplID09ICdzbSdcIlxuICAgKm5nSWY9XCIhc3VwcG9ydFRleHQgJiYgZ2V0VGV4dEZpZWxkU3RhdHVzKCkgPT0gJ2FjdGl2ZScgJiYgaW5wdXRWYWx1ZSA9PSAnJyAmJiByZXF1aXJlZFwiPlxuICB7e2N1cnJlbnRMYW5nID09ICdlcycgPyAnUmVxdWVyaWRvJyA6ICdSZXF1aXJlZCd9fVxuPC9wPlxuXG48bmctdGVtcGxhdGUgI2ljb25zIGxldC1pY29uUG9zaXRpb249XCJpY29uUG9zaXRpb25cIj5cbiAgPGdyYXZpdHktaWNvbiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBoYW5kbGVJY29uQ2xpY2soaWNvblBvc2l0aW9uKVwiIGNsYXNzPVwie3tpY29uUG9zaXRpb259fVwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLnBvaW50ZXJdPVwiKGljb25Qb3NpdGlvbiA9PSAnbGVmdCcgJiYgY2xpY2tPbkxlZnRJY29uKSB8fCAoaWNvblBvc2l0aW9uID09ICdyaWdodCcgJiYgY2xpY2tPblJpZ2h0SWNvbilcIlxuICAgICAgICAgICAgICAgIFtpY29uTmFtZV09XCJpY29uUG9zaXRpb24gPT0gJ2xlZnQnID8gaWNvbkxlZnQgOiBpY29uUmlnaHRcIlxuICAgICAgICAgICAgICAgIFtpY29uU2l6ZV09XCJpc05ld0ljb24oaWNvblBvc2l0aW9uKSA/ICdtZC0xNicgOiBudWxsXCI+PC9ncmF2aXR5LWljb24+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -303,10 +303,14 @@ class GravityDropdownListComponent {
303
303
  this.dropdownOpened = !this.dropdownOpened;
304
304
  if (!this.dropdownOpened) {
305
305
  if (this.multiple) {
306
- this.selectedItemsResponse.emit(this.selectedItems);
306
+ if (this.selectedItems?.length > 0) {
307
+ this.selectedItemsResponse.emit(this.selectedItems);
308
+ }
307
309
  }
308
310
  else {
309
- this.selectedItemsResponse.emit(this.selectedItems[0]);
311
+ if (this.selectedItems[0]) {
312
+ this.selectedItemsResponse.emit(this.selectedItems[0]);
313
+ }
310
314
  }
311
315
  this.searchText = '';
312
316
  this.availableOptions = this.items;
@@ -325,7 +329,8 @@ class GravityDropdownListComponent {
325
329
  }
326
330
  else {
327
331
  this.selectedItems = [itemToAdd];
328
- this.selectedItemsResponse.emit(itemToAdd);
332
+ // this.selectedItemsResponse.emit(itemToAdd);
333
+ this.toggleDropdown();
329
334
  }
330
335
  }
331
336
  checkIfSelected(itemToFind) {
@@ -508,7 +513,8 @@ class GravityTextFieldComponent {
508
513
  ($event.key === 'a' && $event.metaKey === true) || // Allow: Cmd+A (Mac)
509
514
  ($event.key === 'c' && $event.metaKey === true) || // Allow: Cmd+C (Mac)
510
515
  ($event.key === 'v' && $event.metaKey === true) || // Allow: Cmd+V (Mac)
511
- ($event.key === 'x' && $event.metaKey === true) // Allow: Cmd+X (Mac)
516
+ ($event.key === 'x' && $event.metaKey === true) || // Allow: Cmd+X (Mac)
517
+ ($event.key === '.') || ($event.key === ',') // Allow: dot and comma for decimal
512
518
  ) {
513
519
  // let it happen, don't do anything
514
520
  return;