info-library 2.10.49 → 2.10.51

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.
@@ -16,6 +16,7 @@ export declare class InfoDateMonthComponent implements ControlValueAccessor {
16
16
  placeholder: string;
17
17
  disabled: boolean;
18
18
  required: boolean;
19
+ changeonlyonmonth: boolean;
19
20
  input: any;
20
21
  dateValue: any;
21
22
  dateMask: any;
@@ -98,6 +98,7 @@ export declare class InfoGridComponent implements OnInit, AfterViewInit {
98
98
  colunasHeaders: any[];
99
99
  colunasType: any[];
100
100
  colunasWidth: any[];
101
+ colunasTranslate: any[];
101
102
  currentUrl: string;
102
103
  url: string;
103
104
  paginator: InfoPaginatorComponent;
@@ -14,8 +14,10 @@ export declare class InfoSelectComponent implements OnInit, ControlValueAccessor
14
14
  blankItem: any;
15
15
  loading: boolean;
16
16
  disabled: boolean;
17
+ notranslate: any;
17
18
  onselecteditem: EventEmitter<any>;
18
19
  selectedValue: any;
20
+ translatValue: boolean;
19
21
  onChange: any;
20
22
  onTouched: any;
21
23
  private initialized;
@@ -21,7 +21,7 @@ export class InfoAutoCompleteComponent {
21
21
  this.selectfirst = false;
22
22
  this.disablednoregisters = false;
23
23
  this.getdataonchange = false;
24
- this.getdataonchangetime = 300;
24
+ this.getdataonchangetime = 500;
25
25
  this.api = null;
26
26
  this.method = 'getchavevalor';
27
27
  this.maxlist = 10;
@@ -383,4 +383,4 @@ if (false) {
383
383
  */
384
384
  InfoAutoCompleteComponent.prototype._dataAcess;
385
385
  }
386
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9kZXYvSW5mbyBVdGlsaXRpZXMvSW5mbyBMaWJyYXJ5IC0gQW5ndWxhci9wcm9qZWN0cy9pbmZvLWxpYnJhcnkvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxVQUFVLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsV0FBVyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFhbEMsTUFBTSxPQUFPLHlCQUF5Qjs7OztJQWtHbEMsWUFBb0IsVUFBMkI7UUFBM0IsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFqRy9DLFlBQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBRW5CLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLFNBQUksR0FBRyxFQUFFLENBQUM7UUFDVixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4Qix3QkFBbUIsR0FBRyxHQUFHLENBQUM7UUFDMUIsUUFBRyxHQUFRLElBQUksQ0FBQztRQUNoQixXQUFNLEdBQUcsZUFBZSxDQUFDO1FBQ3pCLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYixjQUFTLEdBQUcs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LFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsbzJCQUEwQztnQkFFMUMsU0FBUyxFQUFFLENBQUM7d0JBQ1IsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVU7Ozt3QkFBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBeUIsRUFBQzt3QkFDeEQsS0FBSyxFQUFFLElBQUk7cUJBQ2QsQ0FBQzs7YUFDTDs7OztZQWJRLGVBQWU7OzswQkFpQm5CLEtBQUs7bUJBQ0wsS0FBSzt1QkFDTCxLQUFLOzBCQUNMLEtBQUs7a0NBQ0wsS0FBSzs4QkFDTCxLQUFLO2tDQUNMLEtBQUs7a0JBQ0wsS0FBSztxQkFDTCxLQUFLO3NCQUNMLEtBQUs7d0JBQ0wsS0FBSztzQkFDTCxLQUFLOzZCQUVMLE1BQU07c0JBV04sS0FBSztxQkFtQkwsS0FBSzt1QkFhTCxLQUFLO21CQVlMLEtBQUs7Ozs7SUF0RU4sNENBQTRCOztJQUU1QixnREFBMEI7O0lBQzFCLHlDQUFtQjs7SUFDbkIsNkNBQTBCOztJQUMxQixnREFBNkI7O0lBQzdCLHdEQUFxQzs7SUFDckMsb0RBQWlDOztJQUNqQyx3REFBbUM7O0lBQ25DLHdDQUF5Qjs7SUFDekIsMkNBQWtDOztJQUNsQyw0Q0FBc0I7O0lBQ3RCLDhDQUEyQjs7SUFDM0IsNENBQXFCOztJQUVyQixtREFBOEM7O0lBRTlDLDRDQUFlOztJQUNmLGtEQUEwQjs7SUFFMUIsNkNBQWM7O0lBQ2QsOENBQWU7O0lBRWYsZ0RBQW9COztJQUVwQiw2Q0FBMEI7O0lBbUIxQiw0Q0FBdUI7O0lBYXZCLDhDQUEwQjs7SUFZMUIsMENBQWdCOzs7OztJQTRCSiwrQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIGZvcndhcmRSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN3aXRjaE1hcCwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEluZm9EYXRhU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2RhdGEuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgSW5mb0RhdGFBY2Nlc3NNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdpbmZvLWF1dG9jb21wbGV0ZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJ2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbmZvQXV0b0NvbXBsZXRlQ29tcG9uZW50KSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEluZm9BdXRvQ29tcGxldGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICAgIGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcclxuICAgIFxyXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnJztcclxuICAgIEBJbnB1dCgpIG5hbWUgPSAnJztcclxuICAgIEBJbnB1dCgpIHJlcXVpcmVkID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBzZWxlY3RmaXJzdCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgZGlzYWJsZWRub3JlZ2lzdGVycyA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgZ2V0ZGF0YW9uY2hhbmdlID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBnZXRkYXRhb25jaGFuZ2V0aW1lID0gMzAwO1xyXG4gICAgQElucHV0KCkgYXBpOiBhbnkgPSBudWxsO1xyXG4gICAgQElucHV0KCkgbWV0aG9kID0gJ2dldGNoYXZldmFsb3InO1xyXG4gICAgQElucHV0KCkgbWF4bGlzdCA9IDEwO1xyXG4gICAgQElucHV0KCkgc3RhcnR3aXRoID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBtaW5jaGFyID0gMTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25zZWxlY3RlZGl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgb3B0aW9uczogYW55W107XHJcbiAgICBzZWxlY3RlZFZhbHVlOiBhbnkgPSBudWxsO1xyXG5cclxuICAgIG9uQ2hhbmdlOiBhbnk7XHJcbiAgICBvblRvdWNoZWQ6IGFueTtcclxuICAgIFxyXG4gICAgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcclxuXHJcbiAgICBfbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBsb2FkaW5nKCl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvYWRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGxvYWRpbmcodmFsdWUpe1xyXG4gICAgICAgIHRoaXMuX2xvYWRpbmcgPSB2YWx1ZTtcclxuICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5fZGlzYWJsZWQgPT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy5fZGlzYWJsZWQudG9TdHJpbmcoKSA9PSAnJylcclxuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5fZGlzYWJsZWQgPT0gZmFsc2UpXHJcbiAgICAgICAgICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSh0aGlzLmxvYWRpbmcpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBfcGFyYW1zOiBzdHJpbmcgPSBudWxsO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBwYXJhbXMoKXtcclxuICAgICAgICByZXR1cm4gdGhpcy5fcGFyYW1zO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBwYXJhbXModmFsdWUpe1xyXG4gICAgICAgIHRoaXMuX3BhcmFtcyA9IHZhbHVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZClcclxuICAgICAgICAgICAgdGhpcy5nZXREYXRhKCkuc3Vic2NyaWJlKGEgPT4geyB0aGlzLmRhdGEgPSBhLmRhdGE7IHRoaXMubG9hZGluZyA9IGZhbHNlOyB9KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgX2Rpc2FibGVkOiBib29sZWFuID0gbnVsbDtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHsgICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5fZGlzYWJsZWQgPT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcclxuXHJcbiAgICAgICAgaWYgKHZhbHVlKVxyXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLmVuYWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIF9kYXRhOiBhbnkgPSBbXTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgZGF0YSgpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRhO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBkYXRhKHZhbHVlKXtcclxuICAgICAgICB0aGlzLl9kYXRhID0gdmFsdWU7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmdldGRhdGFvbmNoYW5nZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG5cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRWYWx1ZSAhPSBudWxsKVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2RhdGEgPT0gbnVsbCB8fCAodGhpcy5fZGF0YSAhPSBudWxsICYmIHRoaXMuX2RhdGEubGVuZ3RoID09IDApKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKG51bGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2VcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5zZWxlY3RlZFZhbHVlLklkID09IG51bGwgPyB0aGlzLnNlbGVjdGVkVmFsdWUgOiB0aGlzLnNlbGVjdGVkVmFsdWUuSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLnNlbGVjdGZpcnN0ICYmIHRoaXMuZGF0YSAhPSBudWxsICYmIHRoaXMuZGF0YS5sZW5ndGggPiAwKVxyXG4gICAgICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuZGF0YVswXS5JZCk7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5kaXNhYmxlZG5vcmVnaXN0ZXJzKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREaXNhYmxlZFN0YXRlKCh0aGlzLmRhdGEgPT0gbnVsbCB8fCB0aGlzLmRhdGEubGVuZ3RoID09IDApKTtcclxuICAgICAgICB9LCAxMDAwKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kYXRhQWNlc3M6IEluZm9EYXRhU2VydmljZSkgeyB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubWluY2hhciA9PSBudWxsIHx8IHRoaXMubWluY2hhciA8IDApIHRoaXMubWluY2hhciA9IDE7XHJcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy5wbGFjZWhvbGRlci5yZXBsYWNlKC8gL2csICcnKSArIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDApLnRvU3RyaW5nKCk7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5nZXRkYXRhb25jaGFuZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5nZXREYXRhKCkuc3Vic2NyaWJlKGEgPT4geyB0aGlzLmRhdGEgPSBhLmRhdGE7IHRoaXMubG9hZGluZyA9IGZhbHNlOyB9KTtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4geyB0aGlzLm9wdGlvbnMgPSB0aGlzLmZpbHRlcih2YWx1ZSl9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBkZWJvdW5jZVRpbWUodGhpcy5nZXRkYXRhb25jaGFuZ2V0aW1lKSwgXHJcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHZhbHVlID0+IHRoaXMuZ2V0RGF0YSh2YWx1ZSkpXHJcbiAgICAgICAgICAgICkuc3Vic2NyaWJlKGEgPT4gdGhpcy5kYXRhID0gdGhpcy5vcHRpb25zID0gYS5kYXRhKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZmlsdGVyKHZhbHVlOiBhbnkpOiBhbnlbXSB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUubGVuZ3RoIDwgdGhpcy5taW5jaGFyKSByZXR1cm4gW107XHJcbiAgICAgICAgbGV0IGZpbHRlclZhbHVlID0gdmFsdWUuTm9tZSA9PSBudWxsID8gdmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpIDogdmFsdWUuTm9tZTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuc3RhcnR3aXRoKVxyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLk5vbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA9PT0gMCB8fCAob3B0aW9uLkF1eCA9PSBudWxsID8gXCJcIiA6IG9wdGlvbi5BdXgudG9Mb3dlckNhc2UoKSA9PSBmaWx0ZXJWYWx1ZSkpLnNsaWNlKDAsIHRoaXMubWF4bGlzdCk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLk5vbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA+IC0xIHx8IChvcHRpb24uQXV4ID09IG51bGwgPyBcIlwiIDogb3B0aW9uLkF1eC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyVmFsdWUpID4gLTEpKS5zbGljZSgwLCB0aGlzLm1heGxpc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldERhdGEodmFsdWU6IGFueSA9IG51bGwpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5hcGkgPT0gbnVsbCB8fCB0aGlzLmFwaSA9PSAnJylcclxuICAgICAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+KCk7XHJcblxyXG4gICAgICAgIHRoaXMubG9hZGluZyA9ICF0aGlzLmdldGRhdGFvbmNoYW5nZTtcclxuICAgICAgICB0aGlzLmRhdGEgPSBbXTtcclxuICAgICAgICBsZXQgcGFyYW1ldGVycyA9IHRoaXMucGFyYW1zIHx8ICcnO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5nZXRkYXRhb25jaGFuZ2UpIHtcclxuICAgICAgICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gJycpXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4oKTtcclxuXHJcbiAgICAgICAgICAgIGlmIChwYXJhbWV0ZXJzICE9IG51bGwgJiYgcGFyYW1ldGVycyAhPSAnJylcclxuICAgICAgICAgICAgICAgIHBhcmFtZXRlcnMgKz0gJyYnO1xyXG5cclxuICAgICAgICAgICAgcGFyYW1ldGVycyArPSBgbm9tZT0ke3ZhbHVlLk5vbWUgPT0gbnVsbCA/IHZhbHVlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA6IHZhbHVlLk5vbWV9JnRha2U9JHt0aGlzLm1heGxpc3R9YDtcclxuXHJcbiAgICAgICAgICAgIGxldCBtb2RlbCA9IHBhcmFtZXRlcnMuc3BsaXQoXCImXCIpLm1hcChjID0+ICh7IFtjLnNwbGl0KFwiPVwiKVswXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGMuc3BsaXQoXCI9XCIpWzBdLnN1YnN0cmluZygxKV06IGMuc3BsaXQoXCI9XCIpWzFdIH0pKS5yZWR1Y2UoKGEsYikgPT4gKHsuLi5hLCAuLi5ifSkpO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZGF0YUFjZXNzLnBvc3QodGhpcy5hcGksIG1vZGVsLCB0aGlzLm1ldGhvZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YUFjZXNzLmdldCh0aGlzLmFwaSwgdGhpcy5tZXRob2QsIHBhcmFtZXRlcnMpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQmx1cih2YWx1ZSkge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFZhbHVlICE9IG51bGwgJiYgdGhpcy5zZWxlY3RlZFZhbHVlLklkICE9IG51bGwpXHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcblxyXG4gICAgICAgICAgICBpZiAoIXZhbHVlICYmIHRoaXMuc2VsZWN0ZWRWYWx1ZSAhPSBudWxsICYmIHRoaXMuc2VsZWN0ZWRWYWx1ZS50cmltKCkgPT0gJycpXHJcbiAgICAgICAgICAgICAgICB0aGlzLndyaXRlVmFsdWUobnVsbCk7XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbGV0IGZpcnN0ID0gdGhpcy5maWx0ZXIodmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGZpcnN0ICE9IG51bGwgJiYgZmlyc3QubGVuZ3RoID4gMClcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLndyaXRlVmFsdWUoZmlyc3RbMF0uSWQpO1xyXG4gICAgICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMud3JpdGVWYWx1ZShudWxsKTtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9LCAzMDApO1xyXG4gICAgfVxyXG5cclxuICAgIG9uRm9jdXModmFsdWUpIHtcclxuICAgICAgICBpZiAodGhpcy5taW5jaGFyICE9IG51bGwgJiYgdGhpcy5taW5jaGFyID09IDAgJiYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gJycpKVxyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgdGhpcy5jb250cm9sLnNldFZhbHVlKCcnKTsgfSwgMjAwKTtcclxuICAgIH1cclxuXHJcbiAgICBkaXNwbGF5Rm4obW9kZWwpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmIChtb2RlbCA9PSBudWxsIHx8IG1vZGVsLk5vbWUgPT0gbnVsbClcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG5cclxuICAgICAgICBsZXQgaW5kZXhTbWFsbCA9IG1vZGVsLk5vbWUuaW5kZXhPZignPHNtYWxsJyk7XHJcbiAgICAgICAgcmV0dXJuIGluZGV4U21hbGwgPiAtMSA/IG1vZGVsLk5vbWUuc3Vic3RyaW5nKDAsIGluZGV4U21hbGwpLnRyaW0oKSA6IG1vZGVsLk5vbWU7XHJcbiAgICB9XHJcblxyXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgbGV0IG9iaiA9IHRoaXMuZGF0YS5maW5kKHIgPT4gci5JZCA9PSB2YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKG9iaik7XHJcblxyXG4gICAgICAgIGlmICh2YWx1ZSAhPSBudWxsICYmIG9iaiA9PSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB2YWx1ZTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMub25DaGFuZ2UgIT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm9uc2VsZWN0ZWRpdGVtICE9IG51bGwpXHJcbiAgICAgICAgICAgIHRoaXMub25zZWxlY3RlZGl0ZW0uZW1pdCh0aGlzLmRhdGEgPT0gbnVsbCA/IG51bGwgOiB0aGlzLmRhdGEuZmluZChyID0+IHIuSWQgPT0gdmFsdWUpKTtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkbm9yZWdpc3RlcnMgJiYgKHRoaXMuZGF0YSA9PSBudWxsIHx8IHRoaXMuZGF0YS5sZW5ndGggPT0gMCkgPyB0cnVlIDogaXNEaXNhYmxlZDtcclxuICAgIH1cclxufSJdfQ==
386
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0b2NvbXBsZXRlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJEOi9kZXYvSW5mbyBVdGlsaXRpZXMvSW5mbyBMaWJyYXJ5IC0gQW5ndWxhci9wcm9qZWN0cy9pbmZvLWxpYnJhcnkvc3JjLyIsInNvdXJjZXMiOlsiY29udHJvbHMvYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxVQUFVLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsV0FBVyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDL0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFhbEMsTUFBTSxPQUFPLHlCQUF5Qjs7OztJQWtHbEMsWUFBb0IsVUFBMkI7UUFBM0IsZUFBVSxHQUFWLFVBQVUsQ0FBaUI7UUFqRy9DLFlBQU8sR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBRW5CLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLFNBQUksR0FBRyxFQUFFLENBQUM7UUFDVixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUM1QixvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUN4Qix3QkFBbUIsR0FBRyxHQUFHLENBQUM7UUFDMUIsUUFBRyxHQUFRLElBQUksQ0FBQztRQUNoQixXQUFNLEdBQUcsZUFBZSxDQUFDO1FBQ3pCLFlBQU8sR0FBRyxFQUFFLENBQUM7UUFDYixjQUFTLEdBQUcs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LFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsbzJCQUEwQztnQkFFMUMsU0FBUyxFQUFFLENBQUM7d0JBQ1IsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVU7Ozt3QkFBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBeUIsRUFBQzt3QkFDeEQsS0FBSyxFQUFFLElBQUk7cUJBQ2QsQ0FBQzs7YUFDTDs7OztZQWJRLGVBQWU7OzswQkFpQm5CLEtBQUs7bUJBQ0wsS0FBSzt1QkFDTCxLQUFLOzBCQUNMLEtBQUs7a0NBQ0wsS0FBSzs4QkFDTCxLQUFLO2tDQUNMLEtBQUs7a0JBQ0wsS0FBSztxQkFDTCxLQUFLO3NCQUNMLEtBQUs7d0JBQ0wsS0FBSztzQkFDTCxLQUFLOzZCQUVMLE1BQU07c0JBV04sS0FBSztxQkFtQkwsS0FBSzt1QkFhTCxLQUFLO21CQVlMLEtBQUs7Ozs7SUF0RU4sNENBQTRCOztJQUU1QixnREFBMEI7O0lBQzFCLHlDQUFtQjs7SUFDbkIsNkNBQTBCOztJQUMxQixnREFBNkI7O0lBQzdCLHdEQUFxQzs7SUFDckMsb0RBQWlDOztJQUNqQyx3REFBbUM7O0lBQ25DLHdDQUF5Qjs7SUFDekIsMkNBQWtDOztJQUNsQyw0Q0FBc0I7O0lBQ3RCLDhDQUEyQjs7SUFDM0IsNENBQXFCOztJQUVyQixtREFBOEM7O0lBRTlDLDRDQUFlOztJQUNmLGtEQUEwQjs7SUFFMUIsNkNBQWM7O0lBQ2QsOENBQWU7O0lBRWYsZ0RBQW9COztJQUVwQiw2Q0FBMEI7O0lBbUIxQiw0Q0FBdUI7O0lBYXZCLDhDQUEwQjs7SUFZMUIsMENBQWdCOzs7OztJQTRCSiwrQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIGZvcndhcmRSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHN3aXRjaE1hcCwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEluZm9EYXRhU2VydmljZSB9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL2RhdGEuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgSW5mb0RhdGFBY2Nlc3NNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdpbmZvLWF1dG9jb21wbGV0ZScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJ2F1dG9jb21wbGV0ZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9hdXRvY29tcGxldGUuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbmZvQXV0b0NvbXBsZXRlQ29tcG9uZW50KSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEluZm9BdXRvQ29tcGxldGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICAgIGNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woKTtcclxuICAgIFxyXG4gICAgQElucHV0KCkgcGxhY2Vob2xkZXIgPSAnJztcclxuICAgIEBJbnB1dCgpIG5hbWUgPSAnJztcclxuICAgIEBJbnB1dCgpIHJlcXVpcmVkID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBzZWxlY3RmaXJzdCA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgZGlzYWJsZWRub3JlZ2lzdGVycyA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgZ2V0ZGF0YW9uY2hhbmdlID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBnZXRkYXRhb25jaGFuZ2V0aW1lID0gNTAwO1xyXG4gICAgQElucHV0KCkgYXBpOiBhbnkgPSBudWxsO1xyXG4gICAgQElucHV0KCkgbWV0aG9kID0gJ2dldGNoYXZldmFsb3InO1xyXG4gICAgQElucHV0KCkgbWF4bGlzdCA9IDEwO1xyXG4gICAgQElucHV0KCkgc3RhcnR3aXRoID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBtaW5jaGFyID0gMTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25zZWxlY3RlZGl0ZW0gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgb3B0aW9uczogYW55W107XHJcbiAgICBzZWxlY3RlZFZhbHVlOiBhbnkgPSBudWxsO1xyXG5cclxuICAgIG9uQ2hhbmdlOiBhbnk7XHJcbiAgICBvblRvdWNoZWQ6IGFueTtcclxuICAgIFxyXG4gICAgaW5pdGlhbGl6ZWQgPSBmYWxzZTtcclxuXHJcbiAgICBfbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBsb2FkaW5nKCl7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvYWRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGxvYWRpbmcodmFsdWUpe1xyXG4gICAgICAgIHRoaXMuX2xvYWRpbmcgPSB2YWx1ZTtcclxuICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5fZGlzYWJsZWQgPT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy5fZGlzYWJsZWQudG9TdHJpbmcoKSA9PSAnJylcclxuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5fZGlzYWJsZWQgPT0gZmFsc2UpXHJcbiAgICAgICAgICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSh0aGlzLmxvYWRpbmcpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBfcGFyYW1zOiBzdHJpbmcgPSBudWxsO1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBwYXJhbXMoKXtcclxuICAgICAgICByZXR1cm4gdGhpcy5fcGFyYW1zO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBwYXJhbXModmFsdWUpe1xyXG4gICAgICAgIHRoaXMuX3BhcmFtcyA9IHZhbHVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZClcclxuICAgICAgICAgICAgdGhpcy5nZXREYXRhKCkuc3Vic2NyaWJlKGEgPT4geyB0aGlzLmRhdGEgPSBhLmRhdGE7IHRoaXMubG9hZGluZyA9IGZhbHNlOyB9KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgX2Rpc2FibGVkOiBib29sZWFuID0gbnVsbDtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHsgICAgICAgICBcclxuICAgICAgICBpZiAodGhpcy5fZGlzYWJsZWQgPT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5fZGlzYWJsZWQgPSB2YWx1ZTtcclxuXHJcbiAgICAgICAgaWYgKHZhbHVlKVxyXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLmVuYWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIF9kYXRhOiBhbnkgPSBbXTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgZGF0YSgpe1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9kYXRhO1xyXG4gICAgfVxyXG5cclxuICAgIHNldCBkYXRhKHZhbHVlKXtcclxuICAgICAgICB0aGlzLl9kYXRhID0gdmFsdWU7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLmdldGRhdGFvbmNoYW5nZSlcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG5cclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRWYWx1ZSAhPSBudWxsKVxyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2RhdGEgPT0gbnVsbCB8fCAodGhpcy5fZGF0YSAhPSBudWxsICYmIHRoaXMuX2RhdGEubGVuZ3RoID09IDApKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKG51bGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZSA9IG51bGw7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2VcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5zZWxlY3RlZFZhbHVlLklkID09IG51bGwgPyB0aGlzLnNlbGVjdGVkVmFsdWUgOiB0aGlzLnNlbGVjdGVkVmFsdWUuSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBlbHNlIGlmICh0aGlzLnNlbGVjdGZpcnN0ICYmIHRoaXMuZGF0YSAhPSBudWxsICYmIHRoaXMuZGF0YS5sZW5ndGggPiAwKVxyXG4gICAgICAgICAgICAgICAgdGhpcy53cml0ZVZhbHVlKHRoaXMuZGF0YVswXS5JZCk7XHJcblxyXG4gICAgICAgICAgICBpZiAodGhpcy5kaXNhYmxlZG5vcmVnaXN0ZXJzKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5zZXREaXNhYmxlZFN0YXRlKCh0aGlzLmRhdGEgPT0gbnVsbCB8fCB0aGlzLmRhdGEubGVuZ3RoID09IDApKTtcclxuICAgICAgICB9LCAxMDAwKTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kYXRhQWNlc3M6IEluZm9EYXRhU2VydmljZSkgeyB9XHJcblxyXG4gICAgbmdPbkluaXQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMubWluY2hhciA9PSBudWxsIHx8IHRoaXMubWluY2hhciA8IDApIHRoaXMubWluY2hhciA9IDE7XHJcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy5wbGFjZWhvbGRlci5yZXBsYWNlKC8gL2csICcnKSArIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDApLnRvU3RyaW5nKCk7XHJcblxyXG4gICAgICAgIGlmICghdGhpcy5nZXRkYXRhb25jaGFuZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5nZXREYXRhKCkuc3Vic2NyaWJlKGEgPT4geyB0aGlzLmRhdGEgPSBhLmRhdGE7IHRoaXMubG9hZGluZyA9IGZhbHNlOyB9KTtcclxuICAgICAgICAgICAgdGhpcy5jb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4geyB0aGlzLm9wdGlvbnMgPSB0aGlzLmZpbHRlcih2YWx1ZSl9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgICAgICAgICAgICBkZWJvdW5jZVRpbWUodGhpcy5nZXRkYXRhb25jaGFuZ2V0aW1lKSwgXHJcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxyXG4gICAgICAgICAgICAgICAgc3dpdGNoTWFwKHZhbHVlID0+IHRoaXMuZ2V0RGF0YSh2YWx1ZSkpXHJcbiAgICAgICAgICAgICkuc3Vic2NyaWJlKGEgPT4gdGhpcy5kYXRhID0gdGhpcy5vcHRpb25zID0gYS5kYXRhKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZmlsdGVyKHZhbHVlOiBhbnkpOiBhbnlbXSB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUubGVuZ3RoIDwgdGhpcy5taW5jaGFyKSByZXR1cm4gW107XHJcbiAgICAgICAgbGV0IGZpbHRlclZhbHVlID0gdmFsdWUuTm9tZSA9PSBudWxsID8gdmFsdWUudG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpIDogdmFsdWUuTm9tZTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuc3RhcnR3aXRoKVxyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLk5vbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA9PT0gMCB8fCAob3B0aW9uLkF1eCA9PSBudWxsID8gXCJcIiA6IG9wdGlvbi5BdXgudG9Mb3dlckNhc2UoKSA9PSBmaWx0ZXJWYWx1ZSkpLnNsaWNlKDAsIHRoaXMubWF4bGlzdCk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5kYXRhLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLk5vbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGZpbHRlclZhbHVlKSA+IC0xIHx8IChvcHRpb24uQXV4ID09IG51bGwgPyBcIlwiIDogb3B0aW9uLkF1eC50b0xvd2VyQ2FzZSgpLmluZGV4T2YoZmlsdGVyVmFsdWUpID4gLTEpKS5zbGljZSgwLCB0aGlzLm1heGxpc3QpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldERhdGEodmFsdWU6IGFueSA9IG51bGwpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSB0cnVlO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5hcGkgPT0gbnVsbCB8fCB0aGlzLmFwaSA9PSAnJylcclxuICAgICAgICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPEluZm9EYXRhQWNjZXNzTW9kZWw+KCk7XHJcblxyXG4gICAgICAgIHRoaXMubG9hZGluZyA9ICF0aGlzLmdldGRhdGFvbmNoYW5nZTtcclxuICAgICAgICB0aGlzLmRhdGEgPSBbXTtcclxuICAgICAgICBsZXQgcGFyYW1ldGVycyA9IHRoaXMucGFyYW1zIHx8ICcnO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5nZXRkYXRhb25jaGFuZ2UpIHtcclxuICAgICAgICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gJycpXHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8SW5mb0RhdGFBY2Nlc3NNb2RlbD4oKTtcclxuXHJcbiAgICAgICAgICAgIGlmIChwYXJhbWV0ZXJzICE9IG51bGwgJiYgcGFyYW1ldGVycyAhPSAnJylcclxuICAgICAgICAgICAgICAgIHBhcmFtZXRlcnMgKz0gJyYnO1xyXG5cclxuICAgICAgICAgICAgcGFyYW1ldGVycyArPSBgbm9tZT0ke3ZhbHVlLk5vbWUgPT0gbnVsbCA/IHZhbHVlLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA6IHZhbHVlLk5vbWV9JnRha2U9JHt0aGlzLm1heGxpc3R9YDtcclxuXHJcbiAgICAgICAgICAgIGxldCBtb2RlbCA9IHBhcmFtZXRlcnMuc3BsaXQoXCImXCIpLm1hcChjID0+ICh7IFtjLnNwbGl0KFwiPVwiKVswXS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGMuc3BsaXQoXCI9XCIpWzBdLnN1YnN0cmluZygxKV06IGMuc3BsaXQoXCI9XCIpWzFdIH0pKS5yZWR1Y2UoKGEsYikgPT4gKHsuLi5hLCAuLi5ifSkpO1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5fZGF0YUFjZXNzLnBvc3QodGhpcy5hcGksIG1vZGVsLCB0aGlzLm1ldGhvZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5fZGF0YUFjZXNzLmdldCh0aGlzLmFwaSwgdGhpcy5tZXRob2QsIHBhcmFtZXRlcnMpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQmx1cih2YWx1ZSkge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5zZWxlY3RlZFZhbHVlICE9IG51bGwgJiYgdGhpcy5zZWxlY3RlZFZhbHVlLklkICE9IG51bGwpXHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcblxyXG4gICAgICAgICAgICBpZiAoIXZhbHVlICYmIHRoaXMuc2VsZWN0ZWRWYWx1ZSAhPSBudWxsICYmIHRoaXMuc2VsZWN0ZWRWYWx1ZS50cmltKCkgPT0gJycpXHJcbiAgICAgICAgICAgICAgICB0aGlzLndyaXRlVmFsdWUobnVsbCk7XHJcbiAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgbGV0IGZpcnN0ID0gdGhpcy5maWx0ZXIodmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGZpcnN0ICE9IG51bGwgJiYgZmlyc3QubGVuZ3RoID4gMClcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLndyaXRlVmFsdWUoZmlyc3RbMF0uSWQpO1xyXG4gICAgICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMud3JpdGVWYWx1ZShudWxsKTtcclxuICAgICAgICAgICAgfSBcclxuICAgICAgICB9LCAzMDApO1xyXG4gICAgfVxyXG5cclxuICAgIG9uRm9jdXModmFsdWUpIHtcclxuICAgICAgICBpZiAodGhpcy5taW5jaGFyICE9IG51bGwgJiYgdGhpcy5taW5jaGFyID09IDAgJiYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gJycpKVxyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgdGhpcy5jb250cm9sLnNldFZhbHVlKCcnKTsgfSwgMjAwKTtcclxuICAgIH1cclxuXHJcbiAgICBkaXNwbGF5Rm4obW9kZWwpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmIChtb2RlbCA9PSBudWxsIHx8IG1vZGVsLk5vbWUgPT0gbnVsbClcclxuICAgICAgICAgICAgcmV0dXJuICcnO1xyXG5cclxuICAgICAgICBsZXQgaW5kZXhTbWFsbCA9IG1vZGVsLk5vbWUuaW5kZXhPZignPHNtYWxsJyk7XHJcbiAgICAgICAgcmV0dXJuIGluZGV4U21hbGwgPiAtMSA/IG1vZGVsLk5vbWUuc3Vic3RyaW5nKDAsIGluZGV4U21hbGwpLnRyaW0oKSA6IG1vZGVsLk5vbWU7XHJcbiAgICB9XHJcblxyXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgbGV0IG9iaiA9IHRoaXMuZGF0YS5maW5kKHIgPT4gci5JZCA9PSB2YWx1ZSk7XHJcbiAgICAgICAgdGhpcy5jb250cm9sLnNldFZhbHVlKG9iaik7XHJcblxyXG4gICAgICAgIGlmICh2YWx1ZSAhPSBudWxsICYmIG9iaiA9PSBudWxsKVxyXG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWUgPSB2YWx1ZTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMub25DaGFuZ2UgIT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLm9uc2VsZWN0ZWRpdGVtICE9IG51bGwpXHJcbiAgICAgICAgICAgIHRoaXMub25zZWxlY3RlZGl0ZW0uZW1pdCh0aGlzLmRhdGEgPT0gbnVsbCA/IG51bGwgOiB0aGlzLmRhdGEuZmluZChyID0+IHIuSWQgPT0gdmFsdWUpKTtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkbm9yZWdpc3RlcnMgJiYgKHRoaXMuZGF0YSA9PSBudWxsIHx8IHRoaXMuZGF0YS5sZW5ndGggPT0gMCkgPyB0cnVlIDogaXNEaXNhYmxlZDtcclxuICAgIH1cclxufSJdfQ==
@@ -26,6 +26,7 @@ export class InfoDateMonthComponent {
26
26
  constructor() {
27
27
  this.disabled = false;
28
28
  this.required = false;
29
+ this.changeonlyonmonth = false;
29
30
  }
30
31
  /**
31
32
  * @return {?}
@@ -97,6 +98,8 @@ export class InfoDateMonthComponent {
97
98
  * @return {?}
98
99
  */
99
100
  chosenYearHandler(value) {
101
+ if (this.changeonlyonmonth)
102
+ return;
100
103
  /** @type {?} */
101
104
  let aux = new Date(value.year(), new Date(this.dateValue).getMonth(), 1);
102
105
  this.dateValue = aux;
@@ -143,6 +146,7 @@ InfoDateMonthComponent.propDecorators = {
143
146
  placeholder: [{ type: Input }],
144
147
  disabled: [{ type: Input }],
145
148
  required: [{ type: Input }],
149
+ changeonlyonmonth: [{ type: Input }],
146
150
  input: [{ type: ViewChild, args: ['inputDate', { static: false },] }]
147
151
  };
148
152
  if (false) {
@@ -153,6 +157,8 @@ if (false) {
153
157
  /** @type {?} */
154
158
  InfoDateMonthComponent.prototype.required;
155
159
  /** @type {?} */
160
+ InfoDateMonthComponent.prototype.changeonlyonmonth;
161
+ /** @type {?} */
156
162
  InfoDateMonthComponent.prototype.input;
157
163
  /** @type {?} */
158
164
  InfoDateMonthComponent.prototype.dateValue;
@@ -164,4 +170,4 @@ if (false) {
164
170
  InfoDateMonthComponent.prototype.onTouched;
165
171
  }
166
172
  export { ɵ0 };
167
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1tb250aC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovZGV2L0luZm8gVXRpbGl0aWVzL0luZm8gTGlicmFyeSAtIEFuZ3VsYXIvcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy8iLCJzb3VyY2VzIjpbImNvbnRyb2xzL2RhdGUtbW9udGgvZGF0ZS1tb250aC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXRHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzlFLE9BQU8sMkJBQTJCLE1BQU0sbURBQW1ELENBQUM7O0FBRzVGLE1BQU0sT0FBTyx3QkFBd0IsR0FBRztJQUNwQyxLQUFLLEVBQUU7UUFDSCxTQUFTLEVBQUUsU0FBUztLQUN2QjtJQUNELE9BQU8sRUFBRTtRQUNMLFNBQVMsRUFBRSxTQUFTO1FBQ3BCLGNBQWMsRUFBRSxVQUFVO1FBQzFCLGFBQWEsRUFBRSxJQUFJO1FBQ25CLGtCQUFrQixFQUFFLFdBQVc7S0FDbEM7Q0FDSjtXQWF5RCxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7QUFFMUUsTUFBTSxPQUFPLHNCQUFzQjtJQWJuQztRQWdCYSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGFBQVEsR0FBWSxLQUFLLENBQUM7SUE0RXZDLENBQUM7Ozs7SUFuRUcsZUFBZTs7WUFFUCxNQUFNLEdBQUc7WUFDVCxJQUFJLEVBQUUsQ0FBQyxJQUFJLEVB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LGlCQUFpQjtnQkFDM0IscXBCQUEwQztnQkFDMUMsU0FBUyxFQUFFLENBQUM7d0JBQ1IsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVU7Ozt3QkFBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsRUFBQzt3QkFDckQsS0FBSyxFQUFFLElBQUk7cUJBQ2QsRUFDRCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtvQkFDL0MsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUMsRUFBRTtvQkFDOUUsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLHdCQUF3QixFQUFFLEVBQ2pFLEVBQUUsT0FBTyxFQUFFLCtCQUErQixFQUFFLFFBQVEsSUFBa0IsRUFBRSxDQUFDO2FBQzVFOzs7MEJBR0ksS0FBSzt1QkFDTCxLQUFLO3VCQUNMLEtBQUs7b0JBRUwsU0FBUyxTQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Ozs7SUFKekMsNkNBQTZCOztJQUM3QiwwQ0FBbUM7O0lBQ25DLDBDQUFtQzs7SUFFbkMsdUNBQWlEOztJQUVqRCwyQ0FBZTs7SUFDZiwwQ0FBYzs7SUFDZCwwQ0FBUzs7SUFDVCwyQ0FBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IE1BVF9EQVRFX0xPQ0FMRSwgRGF0ZUFkYXB0ZXIsIE1BVF9EQVRFX0ZPUk1BVFMgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZVwiO1xyXG5pbXBvcnQgeyBNb21lbnREYXRlQWRhcHRlciwgTUFUX01PTUVOVF9EQVRFX0FEQVBURVJfT1BUSU9OUyB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC1tb21lbnQtYWRhcHRlclwiO1xyXG5pbXBvcnQgeyBNYXREYXRlcGlja2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XHJcbmltcG9ydCB7IGNyZWF0ZVRleHRNYXNrSW5wdXRFbGVtZW50IH0gZnJvbSBcInRleHQtbWFzay1jb3JlL2Rpc3QvdGV4dE1hc2tDb3JlXCI7XHJcbmltcG9ydCBjcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVBpcGUgZnJvbSBcInRleHQtbWFzay1hZGRvbnMvZGlzdC9jcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVBpcGVcIjtcclxuaW1wb3J0IHsgTW9tZW50IH0gZnJvbSBcIm1vbWVudFwiO1xyXG5cclxuZXhwb3J0IGNvbnN0IFBUX0JSX0RBVEVfTU9OVEhfRk9STUFUUyA9IHtcclxuICAgIHBhcnNlOiB7XHJcbiAgICAgICAgZGF0ZUlucHV0OiAnTU0vWVlZWScsXHJcbiAgICB9LFxyXG4gICAgZGlzcGxheToge1xyXG4gICAgICAgIGRhdGVJbnB1dDogJ01NL1lZWVknLFxyXG4gICAgICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NIFlZWVknLFxyXG4gICAgICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXHJcbiAgICAgICAgbW9udGhZZWFyQTExeUxhYmVsOiAnTU1NTSBZWVlZJyxcclxuICAgIH0sXHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnaW5mby1kYXRlLW1vbnRoJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9kYXRlLW1vbnRoLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHByb3ZpZGVyczogW3tcclxuICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBJbmZvRGF0ZU1vbnRoQ29tcG9uZW50KSxcclxuICAgICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSxcclxuICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfTE9DQUxFLCB1c2VWYWx1ZTogJ3B0LUJSJyB9LFxyXG4gICAgeyBwcm92aWRlOiBEYXRlQWRhcHRlciwgdXNlQ2xhc3M6IE1vbWVudERhdGVBZGFwdGVyLCBkZXBzOiBbTUFUX0RBVEVfTE9DQUxFXSB9LFxyXG4gICAgeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogUFRfQlJfREFURV9NT05USF9GT1JNQVRTIH0sXHJcbiAgICB7IHByb3ZpZGU6IE1BVF9NT01FTlRfREFURV9BREFQVEVSX09QVElPTlMsIHVzZVZhbHVlOiB7IHVzZVV0YzogdHJ1ZSB9IH1dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJbmZvRGF0ZU1vbnRoQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xyXG5cclxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgQElucHV0KCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBAVmlld0NoaWxkKCdpbnB1dERhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSkgaW5wdXQ7XHJcblxyXG4gICAgZGF0ZVZhbHVlOiBhbnk7XHJcbiAgICBkYXRlTWFzazogYW55O1xyXG4gICAgb25DaGFuZ2U7XHJcbiAgICBvblRvdWNoZWQ7XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xyXG5cclxuICAgICAgICBsZXQgY29uZmlnID0ge1xyXG4gICAgICAgICAgICBtYXNrOiBbL1xcZC8sIC9cXGQvLCAnLycsIC9cXGQvLCAvXFxkLywgL1xcZC8sIC9cXGQvXSxcclxuICAgICAgICAgICAgZ3VpZGU6IHRydWUsXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyQ2hhcjogJ18nLFxyXG4gICAgICAgICAgICBwaXBlOiBjcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVBpcGUoUFRfQlJfREFURV9NT05USF9GT1JNQVRTLnBhcnNlLmRhdGVJbnB1dC50b0xvd2VyQ2FzZSgpKSxcclxuICAgICAgICAgICAgbW9kZWxDbGVhbjogdHJ1ZSxcclxuICAgICAgICAgICAga2VlcENoYXJQb3NpdGlvbnM6IGZhbHNlLFxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuZGF0ZU1hc2sgPSBjcmVhdGVUZXh0TWFza0lucHV0RWxlbWVudChcclxuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih7IGlucHV0RWxlbWVudDogdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50IH0sIGNvbmZpZylcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIG9uSW5wdXREYXRlKHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5kYXRlTWFzay51cGRhdGUodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQ2hhbmdlVmFsdWUoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMub25DaGFuZ2UgIT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmRhdGVWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gdW5kZWZpbmVkKVxyXG4gICAgICAgICAgICB0aGlzLmRhdGVWYWx1ZSA9IG51bGw7XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gbmV3IERhdGUodmFsdWUpO1xyXG4gICAgICAgICAgICB2YWx1ZS5zZXRNaW51dGVzKHZhbHVlLmdldE1pbnV0ZXMoKSArIHZhbHVlLmdldFRpbWV6b25lT2Zmc2V0KCkpO1xyXG4gICAgICAgICAgICB2YWx1ZSA9IG5ldyBEYXRlKHZhbHVlLmdldEZ1bGxZZWFyKCksIHZhbHVlLmdldE1vbnRoKCksIDEpO1xyXG4gICAgICAgICAgICB0aGlzLmRhdGVWYWx1ZSA9IHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlVmFsdWUoKTtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gICAgfVxyXG5cclxuICAgIGNob3NlblllYXJIYW5kbGVyKHZhbHVlOiBNb21lbnQpIHtcclxuICAgICAgICBsZXQgYXV4ID0gbmV3IERhdGUodmFsdWUueWVhcigpLCBuZXcgRGF0ZSh0aGlzLmRhdGVWYWx1ZSkuZ2V0TW9udGgoKSwgMSk7XHJcbiAgICAgICAgdGhpcy5kYXRlVmFsdWUgPSBhdXg7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZVZhbHVlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2hvc2VuTW9udGhIYW5kbGVyKHZhbHVlOiBNb21lbnQsIGRhdGVwaWNrZXI6IE1hdERhdGVwaWNrZXI8TW9tZW50Pikge1xyXG4gICAgICAgIGxldCBhdXggPSBuZXcgRGF0ZSh2YWx1ZS55ZWFyKCksIHZhbHVlLm1vbnRoKCksIDEpO1xyXG4gICAgICAgIHRoaXMuZGF0ZVZhbHVlID0gYXV4O1xyXG4gICAgICAgIHRoaXMub25DaGFuZ2VWYWx1ZSgpO1xyXG4gICAgICAgIGRhdGVwaWNrZXIuY2xvc2UoKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgb25LZXlQcmVzcyhlKXtcclxuICAgICAgICBpZiAoZS5rZXlDb2RlID09IDEzKVxyXG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlVmFsdWUoKTtcclxuICAgIH1cclxufSJdfQ==
173
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1tb250aC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiRDovZGV2L0luZm8gVXRpbGl0aWVzL0luZm8gTGlicmFyeSAtIEFuZ3VsYXIvcHJvamVjdHMvaW5mby1saWJyYXJ5L3NyYy8iLCJzb3VyY2VzIjpbImNvbnRyb2xzL2RhdGUtbW9udGgvZGF0ZS1tb250aC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RSxPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRXRHLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQzlFLE9BQU8sMkJBQTJCLE1BQU0sbURBQW1ELENBQUM7O0FBRzVGLE1BQU0sT0FBTyx3QkFBd0IsR0FBRztJQUNwQyxLQUFLLEVBQUU7UUFDSCxTQUFTLEVBQUUsU0FBUztLQUN2QjtJQUNELE9BQU8sRUFBRTtRQUNMLFNBQVMsRUFBRSxTQUFTO1FBQ3BCLGNBQWMsRUFBRSxVQUFVO1FBQzFCLGFBQWEsRUFBRSxJQUFJO1FBQ25CLGtCQUFrQixFQUFFLFdBQVc7S0FDbEM7Q0FDSjtXQWF5RCxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7QUFFMUUsTUFBTSxPQUFPLHNCQUFzQjtJQWJuQztRQWdCYSxhQUFRLEdBQVksS0FBSyxDQUFDO1FBQzFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsc0JBQWlCLEdBQVksS0FBSyxDQUFDO0lBOEVoRCxDQUFDOzs7O0lBckVHLGVBQWU7O1lBRVAsTUFBTSxHQUFH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SSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzdCLENBQUM7OztZQS9GSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IscXBCQUEwQztnQkFDMUMsU0FBUyxFQUFFLENBQUM7d0JBQ1IsT0FBTyxFQUFFLGlCQUFpQjt3QkFDMUIsV0FBVyxFQUFFLFVBQVU7Ozt3QkFBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsRUFBQzt3QkFDckQsS0FBSyxFQUFFLElBQUk7cUJBQ2QsRUFDRCxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRTtvQkFDL0MsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUUsQ0FBQyxlQUFlLENBQUMsRUFBRTtvQkFDOUUsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLHdCQUF3QixFQUFFLEVBQ2pFLEVBQUUsT0FBTyxFQUFFLCtCQUErQixFQUFFLFFBQVEsSUFBa0IsRUFBRSxDQUFDO2FBQzVFOzs7MEJBR0ksS0FBSzt1QkFDTCxLQUFLO3VCQUNMLEtBQUs7Z0NBQ0wsS0FBSztvQkFFTCxTQUFTLFNBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTs7OztJQUx6Qyw2Q0FBNkI7O0lBQzdCLDBDQUFtQzs7SUFDbkMsMENBQW1DOztJQUNuQyxtREFBNEM7O0lBRTVDLHVDQUFpRDs7SUFFakQsMkNBQWU7O0lBQ2YsMENBQWM7O0lBQ2QsMENBQVM7O0lBQ1QsMkNBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGZvcndhcmRSZWYsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBNQVRfREFURV9MT0NBTEUsIERhdGVBZGFwdGVyLCBNQVRfREFURV9GT1JNQVRTIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2NvcmVcIjtcclxuaW1wb3J0IHsgTW9tZW50RGF0ZUFkYXB0ZXIsIE1BVF9NT01FTlRfREFURV9BREFQVEVSX09QVElPTlMgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwtbW9tZW50LWFkYXB0ZXJcIjtcclxuaW1wb3J0IHsgTWF0RGF0ZXBpY2tlciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBjcmVhdGVUZXh0TWFza0lucHV0RWxlbWVudCB9IGZyb20gXCJ0ZXh0LW1hc2stY29yZS9kaXN0L3RleHRNYXNrQ29yZVwiO1xyXG5pbXBvcnQgY3JlYXRlQXV0b0NvcnJlY3RlZERhdGVQaXBlIGZyb20gXCJ0ZXh0LW1hc2stYWRkb25zL2Rpc3QvY3JlYXRlQXV0b0NvcnJlY3RlZERhdGVQaXBlXCI7XHJcbmltcG9ydCB7IE1vbWVudCB9IGZyb20gXCJtb21lbnRcIjtcclxuXHJcbmV4cG9ydCBjb25zdCBQVF9CUl9EQVRFX01PTlRIX0ZPUk1BVFMgPSB7XHJcbiAgICBwYXJzZToge1xyXG4gICAgICAgIGRhdGVJbnB1dDogJ01NL1lZWVknLFxyXG4gICAgfSxcclxuICAgIGRpc3BsYXk6IHtcclxuICAgICAgICBkYXRlSW5wdXQ6ICdNTS9ZWVlZJyxcclxuICAgICAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcclxuICAgICAgICBkYXRlQTExeUxhYmVsOiAnTEwnLFxyXG4gICAgICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWScsXHJcbiAgICB9LFxyXG59O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2luZm8tZGF0ZS1tb250aCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vZGF0ZS1tb250aC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBwcm92aWRlcnM6IFt7XHJcbiAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gSW5mb0RhdGVNb250aENvbXBvbmVudCksXHJcbiAgICAgICAgbXVsdGk6IHRydWVcclxuICAgIH0sXHJcbiAgICB7IHByb3ZpZGU6IE1BVF9EQVRFX0xPQ0FMRSwgdXNlVmFsdWU6ICdwdC1CUicgfSxcclxuICAgIHsgcHJvdmlkZTogRGF0ZUFkYXB0ZXIsIHVzZUNsYXNzOiBNb21lbnREYXRlQWRhcHRlciwgZGVwczogW01BVF9EQVRFX0xPQ0FMRV0gfSxcclxuICAgIHsgcHJvdmlkZTogTUFUX0RBVEVfRk9STUFUUywgdXNlVmFsdWU6IFBUX0JSX0RBVEVfTU9OVEhfRk9STUFUUyB9LFxyXG4gICAgeyBwcm92aWRlOiBNQVRfTU9NRU5UX0RBVEVfQURBUFRFUl9PUFRJT05TLCB1c2VWYWx1ZTogeyB1c2VVdGM6IHRydWUgfSB9XVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mb0RhdGVNb250aENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuXHJcbiAgICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xyXG4gICAgQElucHV0KCkgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpIHJlcXVpcmVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgICBASW5wdXQoKSBjaGFuZ2Vvbmx5b25tb250aDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgXHJcbiAgICBAVmlld0NoaWxkKCdpbnB1dERhdGUnLCB7IHN0YXRpYzogZmFsc2UgfSkgaW5wdXQ7XHJcblxyXG4gICAgZGF0ZVZhbHVlOiBhbnk7XHJcbiAgICBkYXRlTWFzazogYW55O1xyXG4gICAgb25DaGFuZ2U7XHJcbiAgICBvblRvdWNoZWQ7XHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCkge1xyXG5cclxuICAgICAgICBsZXQgY29uZmlnID0ge1xyXG4gICAgICAgICAgICBtYXNrOiBbL1xcZC8sIC9cXGQvLCAnLycsIC9cXGQvLCAvXFxkLywgL1xcZC8sIC9cXGQvXSxcclxuICAgICAgICAgICAgZ3VpZGU6IHRydWUsXHJcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyQ2hhcjogJ18nLFxyXG4gICAgICAgICAgICBwaXBlOiBjcmVhdGVBdXRvQ29ycmVjdGVkRGF0ZVBpcGUoUFRfQlJfREFURV9NT05USF9GT1JNQVRTLnBhcnNlLmRhdGVJbnB1dC50b0xvd2VyQ2FzZSgpKSxcclxuICAgICAgICAgICAgbW9kZWxDbGVhbjogdHJ1ZSxcclxuICAgICAgICAgICAga2VlcENoYXJQb3NpdGlvbnM6IGZhbHNlLFxyXG4gICAgICAgIH07XHJcblxyXG4gICAgICAgIHRoaXMuZGF0ZU1hc2sgPSBjcmVhdGVUZXh0TWFza0lucHV0RWxlbWVudChcclxuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih7IGlucHV0RWxlbWVudDogdGhpcy5pbnB1dC5uYXRpdmVFbGVtZW50IH0sIGNvbmZpZylcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIG9uSW5wdXREYXRlKHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5kYXRlTWFzay51cGRhdGUodmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uQ2hhbmdlVmFsdWUoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMub25DaGFuZ2UgIT0gbnVsbClcclxuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmRhdGVWYWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09IG51bGwgfHwgdmFsdWUgPT0gdW5kZWZpbmVkKVxyXG4gICAgICAgICAgICB0aGlzLmRhdGVWYWx1ZSA9IG51bGw7XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHZhbHVlID0gbmV3IERhdGUodmFsdWUpO1xyXG4gICAgICAgICAgICB2YWx1ZS5zZXRNaW51dGVzKHZhbHVlLmdldE1pbnV0ZXMoKSArIHZhbHVlLmdldFRpbWV6b25lT2Zmc2V0KCkpO1xyXG4gICAgICAgICAgICB2YWx1ZSA9IG5ldyBEYXRlKHZhbHVlLmdldEZ1bGxZZWFyKCksIHZhbHVlLmdldE1vbnRoKCksIDEpO1xyXG4gICAgICAgICAgICB0aGlzLmRhdGVWYWx1ZSA9IHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlVmFsdWUoKTtcclxuICAgIH1cclxuXHJcbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgICB9XHJcblxyXG4gICAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xyXG4gICAgfVxyXG5cclxuICAgIGNob3NlblllYXJIYW5kbGVyKHZhbHVlOiBNb21lbnQpIHtcclxuICAgICAgICBpZiAodGhpcy5jaGFuZ2Vvbmx5b25tb250aClcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIGxldCBhdXggPSBuZXcgRGF0ZSh2YWx1ZS55ZWFyKCksIG5ldyBEYXRlKHRoaXMuZGF0ZVZhbHVlKS5nZXRNb250aCgpLCAxKTtcclxuICAgICAgICB0aGlzLmRhdGVWYWx1ZSA9IGF1eDtcclxuICAgICAgICB0aGlzLm9uQ2hhbmdlVmFsdWUoKTtcclxuICAgIH1cclxuXHJcbiAgICBjaG9zZW5Nb250aEhhbmRsZXIodmFsdWU6IE1vbWVudCwgZGF0ZXBpY2tlcjogTWF0RGF0ZXBpY2tlcjxNb21lbnQ+KSB7XHJcbiAgICAgICAgbGV0IGF1eCA9IG5ldyBEYXRlKHZhbHVlLnllYXIoKSwgdmFsdWUubW9udGgoKSwgMSk7XHJcbiAgICAgICAgdGhpcy5kYXRlVmFsdWUgPSBhdXg7XHJcbiAgICAgICAgdGhpcy5vbkNoYW5nZVZhbHVlKCk7XHJcbiAgICAgICAgZGF0ZXBpY2tlci5jbG9zZSgpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBvbktleVByZXNzKGUpe1xyXG4gICAgICAgIGlmIChlLmtleUNvZGUgPT0gMTMpXHJcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2VWYWx1ZSgpO1xyXG4gICAgfVxyXG59Il19