barsa-novin-ray-core 1.0.324 → 1.0.326

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.
@@ -29,7 +29,7 @@ export class FormBaseComponent extends BaseComponent {
29
29
  this.hideTitle$ = this._formPanelService.hideTitle$;
30
30
  this.hidePin$ = this._formPanelService.hidePin$;
31
31
  this.toolbarVisible$ = this._formPanelService.toolbarVisible$;
32
- this.title$ = this._formPanelService.title$;
32
+ this.title$ = this._formPanelService.title$.pipe(map((title) => (!title ? '' : getDeviceIsMobile() ? title.split(':')[0] : title)));
33
33
  this.toolbarItems$ = this._formPanelService.toolbarItems$;
34
34
  this.workflowButtons$ = this._formPanelService.workflowButtons$;
35
35
  this.headerLayout$ = this._formPanelService.headerLayout$;
@@ -172,4 +172,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
172
172
  }], formClose: [{
173
173
  type: Output
174
174
  }] } });
175
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9hYnN0cmFjdC1jbGFzc2VzL2Zvcm0tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUdaLHVCQUF1QixFQUV2QixJQUFJLEVBRUosV0FBVyxFQUNkLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVl2QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7O0FBT3pFLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxhQUFhO0lBK0NoRCxZQUNjLGtCQUFxQyxFQUNyQyxjQUE2QixFQUM3QixPQUFlLEVBQ2YsR0FBZSxFQUNmLGNBQTZCLEVBQ3JCLGlCQUFtQyxFQUMzQyxlQUErQixFQUMvQixJQUF1QjtRQUVqQyxLQUFLLEVBQUUsQ0FBQztRQVRFLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDckMsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFDZixtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQzNDLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixT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QUFDLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBQ1MsWUFBWTtRQUNsQixNQUFNLFlBQVksR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUE0QixDQUFDLENBQUM7UUFDNUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBQ08sYUFBYTtRQUNqQixJQUFJLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9HLENBQUM7OzhHQXhNUSxpQkFBaUI7a0dBQWpCLGlCQUFpQixrTUFIaEIsRUFBRTsyRkFHSCxpQkFBaUI7a0JBTDdCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQ2xEOzswQkFzRFEsSUFBSTt5R0FwRGUsRUFBRTtzQkFBekIsV0FBVzt1QkFBQyxTQUFTO2dCQUNiLE9BQU87c0JBQWYsS0FBSztnQkFLSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBJbnB1dCxcbiAgICBDb21wb25lbnQsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBPbkluaXQsXG4gICAgT25EZXN0cm95LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgU2VsZixcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBIb3N0QmluZGluZ1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgbWFwLCB0YWtlVW50aWwsIG1lcmdlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi9iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBnZXREZXZpY2VJc01vYmlsZSwgZ2V0UGFyZW50SGVpZ2h0LCBnZXRVbmlxdWVJZCB9IGZyb20gJy4uL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBGb3JtUGFuZWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvZm9ybS1wYW5lbC5zZXJ2aWNlJztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9iYXJzYS1hcGknO1xuaW1wb3J0IHtcbiAgICBGb3JtU2V0dGluZyxcbiAgICBGb3JtVmlld1NldHRpbmcsXG4gICAgRm9ybVZpc2liaWxpdHlTdGF0dXMsXG4gICAgSUhlYWRlckxheW91dCxcbiAgICBMYXlvdXRTZXR0aW5nLFxuICAgIE1ldGFvYmplY3REYXRhTW9kZWxcbn0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgQnJlYWRjcnVtYlNlcnZpY2UsIFBvcnRhbFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcyc7XG5pbXBvcnQgeyBDb250cm9sVWlQaXBlIH0gZnJvbSAnLi4vcGlwZXMnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBmcm9tSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgfSBmcm9tICcuLi9mcm9tLWludGVyc2VjdGlvbi1vYnNlcnZlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYm5yYy1mb3JtLWJhc2UnLFxuICAgIHRlbXBsYXRlOiAnJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBGb3JtQmFzZUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJykgaWQgPSBgZm9ybV8ke2dldFVuaXF1ZUlkKDQpfWA7XG4gICAgQElucHV0KCkgY29udGV4dDoge1xuICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIGNvbmZpZzogYW55O1xuICAgICAgICBTZXR0aW5nOiBGb3JtU2V0dGluZztcbiAgICB9O1xuICAgIEBPdXRwdXQoKSBmb3JtQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgbGlzdEZpZWxkVWk6IGFueTtcbiAgICBpc1dpemFyZDogYm9vbGVhbjtcbiAgICBwYXJhbWV0ZXJzOiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xuICAgIGlzTW9iaWxlOiBib29sZWFuO1xuXG4gICAgdG9vbGJhclZpc2libGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGhpZGVDbG9zZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgaGlkZVRpdGxlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBoaWRlUGluJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICB0aXRsZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICB0b29sYmFySXRlbXMkOiBPYnNlcnZhYmxlPGFueVtdPjtcbiAgICB3b3JrZmxvd0J1dHRvbnMkOiBPYnNlcnZhYmxlPGFueVtdPjtcbiAgICBoZWFkZXJMYXlvdXQkOiBPYnNlcnZhYmxlPElIZWFkZXJMYXlvdXQgfCBudWxsPjtcbiAgICBsYXlvdXQ5NCQ6IE9ic2VydmFibGU8YW55PjtcbiAgICBsYXlvdXQ5NDogYW55O1xuICAgIG1heENvbnRlbnRXaWR0aCQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICBmb3JtV2lkdGgkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgaGVhZGVyRGVzY3JpcHRpb24kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgaGVhZGVyUmVtb3ZlQ29udGVudFBhZGRpbmckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGhlYWRlclN1YnRpdGxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGF2YXRhciQ6IE9ic2VydmFibGU8YW55PjtcbiAgICB3b3JrZmxvd1BhbmVsVWkkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgdmlldyQ6IE9ic2VydmFibGU8Rm9ybVZpZXdTZXR0aW5nPjtcbiAgICBtbyQ6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbCB8IG51bGw+O1xuICAgIGlzU2ltcGxlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBmaWVsZERpY3QkOiBPYnNlcnZhYmxlPHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gfCB1bmRlZmluZWQ+O1xuICAgIG1hc2skOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGlzU2VhcmNoUGFuZWw6IGJvb2xlYW47XG4gICAgaXNNb2RhbDogYm9vbGVhbjtcbiAgICBpc1N1YkZvcm06IGJvb2xlYW47XG4gICAgbW9kZXJuVGFicyQ6IE9ic2VydmFibGU8TGF5b3V0U2V0dGluZ1tdPjtcbiAgICBpc0Zvcm1SZXBvcnQ6IGJvb2xlYW47XG4gICAgbGFuZHNjYXBlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBzdGFuZGFsb25lJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBwcm90ZWN0ZWQgX3N0eWxlOiBIVE1MU3R5bGVFbGVtZW50O1xuICAgIHByb3RlY3RlZCBfc3RhbmRhbG9uZTogYm9vbGVhbjtcbiAgICBwcml2YXRlIF9mb3JtSW50ZXJzZWN0aW9uOiBhbnk7XG4gICAgZm9ybVZpc2liaWxpdHlTdGF0dXM6IEZvcm1WaXNpYmlsaXR5U3RhdHVzO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBfYnJlYWRjcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByb3RlY3RlZCBfZWw6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByb3RlY3RlZCBfY29udHJvbFVpUGlwZTogQ29udHJvbFVpUGlwZSxcbiAgICAgICAgQFNlbGYoKSBwcm90ZWN0ZWQgX2Zvcm1QYW5lbFNlcnZpY2U6IEZvcm1QYW5lbFNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBwcm90ZWN0ZWQgX2NkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS5pc1NlYXJjaFBhbmVsJC5zdWJzY3JpYmUoKGlzU2VhcmNoUGFuZWwpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNTZWFyY2hQYW5lbCA9IGlzU2VhcmNoUGFuZWw7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmhpZGVDbG9zZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVDbG9zZSQ7XG4gICAgICAgIHRoaXMuaGlkZVRpdGxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGlkZVRpdGxlJDtcbiAgICAgICAgdGhpcy5oaWRlUGluJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGlkZVBpbiQ7XG4gICAgICAgIHRoaXMudG9vbGJhclZpc2libGUkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS50b29sYmFyVmlzaWJsZSQ7XG4gICAgICAgIHRoaXMudGl0bGUkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS50aXRsZSQ7XG4gICAgICAgIHRoaXMudG9vbGJhckl0ZW1zJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudG9vbGJhckl0ZW1zJDtcbiAgICAgICAgdGhpcy53b3JrZmxvd0J1dHRvbnMkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS53b3JrZmxvd0J1dHRvbnMkO1xuICAgICAgICB0aGlzLmhlYWRlckxheW91dCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhlYWRlckxheW91dCQ7XG4gICAgICAgIHRoaXMubGF5b3V0OTQkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5sYXlvdXQkO1xuICAgICAgICB0aGlzLm1heENvbnRlbnRXaWR0aCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLm1heENvbnRlbnRXaWR0aCQ7XG4gICAgICAgIHRoaXMuZm9ybVdpZHRoJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZm9ybVdpZHRoJDtcbiAgICAgICAgdGhpcy5oZWFkZXJTdWJ0aXRsZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhlYWRlclN1YnRpdGxlJDtcbiAgICAgICAgdGhpcy5hdmF0YXIkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5hdmF0YXIkO1xuICAgICAgICB0aGlzLndvcmtmbG93UGFuZWxVaSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLndvcmtmbG93UGFuZWxVaSQ7XG4gICAgICAgIHRoaXMudmlldyQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLnZpZXckO1xuICAgICAgICB0aGlzLm1vJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubW8kO1xuICAgICAgICB0aGlzLmZpZWxkRGljdCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmZpZWxkRGljdCQ7XG4gICAgICAgIHRoaXMuaXNTaW1wbGUkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5pc1NpbXBsZUZvcm0kO1xuICAgICAgICB0aGlzLm1hc2skID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5tYXNrJDtcbiAgICAgICAgdGhpcy5oZWFkZXJEZXNjcmlwdGlvbiQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhlYWRlckRlc2NyaXB0aW9uJDtcbiAgICAgICAgdGhpcy5oZWFkZXJSZW1vdmVDb250ZW50UGFkZGluZyQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJDtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS5jb250ZXh0JC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudmlldyQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLmxhbmRzY2FwZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmxhbmRzY2FwZSQ7XG4gICAgICAgIHRoaXMuc3RhbmRhbG9uZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLnN0YW5kYWxvbmUkO1xuICAgICAgICB0aGlzLl9wb3J0YWxTZXJ2aWNlLnN0YW5kYWxvbmUkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGMpID0+ICh0aGlzLl9zdGFuZGFsb25lID0gYykpO1xuICAgIH1cbiAgICBnZXQgZm9yY2VDbG9zZSQoKTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmZvcmNlQ2xvc2UkO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmNvbnRleHQgPSB0aGlzLmNvbnRleHQ7XG4gICAgICAgIHRoaXMuaXNNb2JpbGUgPSBnZXREZXZpY2VJc01vYmlsZSgpO1xuICAgICAgICB0aGlzLmxpc3RGaWVsZFVpID0gdGhpcy5jb250ZXh0Ll9kaWN0RmllbGRVaTtcblxuICAgICAgICB0aGlzLmlzTW9kYWwgPSB0aGlzLmNvbnRleHQuU2V0dGluZz8uSXNNb2RhbDtcbiAgICAgICAgdGhpcy5pc1N1YkZvcm0gPSB0aGlzLmNvbnRleHQuSXNTdWJGb3JtO1xuICAgICAgICB0aGlzLmlzRm9ybVJlcG9ydCA9IHRoaXMuY29udGV4dC5Jc0Zvcm1SZXBvcnQ7XG4gICAgICAgIHRoaXMuX3NldFBhcmFtdGVycygpO1xuICAgICAgICB0aGlzLl9hZGREeW5hbWljRm9ybVN0eWxlcyh0aGlzLnBhcmFtZXRlcnM/LkNzc1N0eWxlcyk7XG4gICAgICAgIHRoaXMubW9kZXJuVGFicyQgPSB0aGlzLmxheW91dDk0JC5waXBlKFxuICAgICAgICAgICAgZmlsdGVyKChjKSA9PiBjKSxcbiAgICAgICAgICAgIG1hcCgobGF5b3V0OTQpID0+ICh0aGlzLmxheW91dDk0ID0gbGF5b3V0OTQpKSxcbiAgICAgICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXG4gICAgICAgICAgICBtZXJnZSh0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmdyb3VwTGF5b3V0JCksXG4gICAgICAgICAgICBtYXAoKF8pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5sYXlvdXQ5NC5pdGVtc1swXS54dHlwZSAhPT0gJ0x5LkxheW91dFRhYlBhbmVsJykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gW107XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGNvbnN0IHRhYnM6IExheW91dFNldHRpbmdbXSA9IHRoaXMubGF5b3V0OTQuaXRlbXNbMF0uaXRlbXM7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRhYnMuZmlsdGVyKChjKSA9PiBjLlZpc2libGUgIT09IGZhbHNlKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vYnRhaW5IZWlnaHQoKTtcbiAgICAgICAgfSwgMCk7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2Uud2luZG93UmVzaXplJC5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgICAgICAgIHRoaXMub2J0YWluSGVpZ2h0KCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9mb3JtSW50ZXJzZWN0aW9uID0gZnJvbUludGVyc2VjdGlvbk9ic2VydmVyKFxuICAgICAgICAgICAgdGhpcy5fZWwubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICByb290OiBudWxsLFxuICAgICAgICAgICAgICAgIHJvb3RNYXJnaW46ICcwcHgnLFxuICAgICAgICAgICAgICAgIHRocmVzaG9sZDogMFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIDEwMCxcbiAgICAgICAgICAgIGZhbHNlXG4gICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGUpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9vbkluVmlldyhlKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX29uSW5WaWV3KGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybVZpc2liaWxpdHlTdGF0dXMgPSBlO1xuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5fZm9ybUludGVyc2VjdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5fcmVtb3ZlRHluYW1pY0Zvcm1TdHlsZXMoKTtcbiAgICB9XG4gICAgb25DbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250ZXh0LmZpcmVFdmVudCgnUmVxdWVzdEZvckNsb3NlJywgdGhpcy5jb250ZXh0KTtcbiAgICB9XG4gICAgb25Ub29sYmFyQ2xpY2soYnRuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudG9vbGJhckNsaWNrKGJ0bik7XG4gICAgfVxuICAgIG9uV29ya2Zsb3dDaG9pY2VDbGljayh3ZkNob2ljZSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLndmQ2hvaWNlKHdmQ2hvaWNlKTtcbiAgICB9XG4gICAgZmllbGRDaGFuZ2UoZmllbGROYW1lLCB2YWx1ZSk6IHZvaWQge1xuICAgICAgICBjb25zdCBmaWVsZFVpID0gdGhpcy5jb250ZXh0Ll9saXN0RmllbGRVaS5maW5kKChjKSA9PiBjLlNldHRpbmcuQ29udHJvbE5hbWUgPT09IGZpZWxkTmFtZSk7XG4gICAgICAgIGZpZWxkVWkudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgZmllbGRVaS5maXJlRXZlbnQoJ2NoYW5nZScsIGZpZWxkVWkpO1xuICAgIH1cbiAgICBzZWFyY2hDbGljaygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmllbGRVaSA9IHRoaXMuY29udGV4dC5fbGlzdEZpZWxkVWkuZmluZCgoYykgPT4gYy5vcmlnaW5hbFh0eXBlID09PSAnVWkuU2VhcmNoQ29tbWFuZEluZm9VaScpO1xuXG4gICAgICAgIGZpZWxkVWkuZmlyZUV2ZW50KEJhcnNhQXBpLlVsLkZvcm1QYW5lbEN0cmxyLkV2ZW50RW51bS5TZWFyY2hDbGljaywgZmllbGRVaSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfYWRkRHluYW1pY0Zvcm1TdHlsZXMoY3NzU3R5bGVzOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFjc3NTdHlsZXMpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjc3NTdHlsZXMgPSBjc3NTdHlsZXMucmVwbGFjZSgvOnJvb3QvZ2ksIGAjJHt0aGlzLmlkfWApO1xuICAgICAgICBjb25zdCBoZWFkID0gZG9jdW1lbnQuaGVhZCB8fCBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdO1xuICAgICAgICBjb25zdCBzdHlsZTogYW55ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcblxuICAgICAgICBoZWFkLmFwcGVuZENoaWxkKHN0eWxlKTtcblxuICAgICAgICBzdHlsZS50eXBlID0gJ3RleHQvY3NzJztcbiAgICAgICAgaWYgKHN0eWxlLnN0eWxlU2hlZXQpIHtcbiAgICAgICAgICAgIC8vIFRoaXMgaXMgcmVxdWlyZWQgZm9yIElFOCBhbmQgYmVsb3cuXG4gICAgICAgICAgICBzdHlsZS5zdHlsZVNoZWV0LmNzc1RleHQgPSBjc3NTdHlsZXM7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzdHlsZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3NTdHlsZXMpKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zdHlsZSA9IHN0eWxlO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX3JlbW92ZUR5bmFtaWNGb3JtU3R5bGVzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuX3N0eWxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgaGVhZCA9IGRvY3VtZW50LmhlYWQgfHwgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXTtcbiAgICAgICAgaGVhZC5yZW1vdmVDaGlsZCh0aGlzLl9zdHlsZSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBvYnRhaW5IZWlnaHQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHBhcmVudEhlaWdodCA9IGdldFBhcmVudEhlaWdodCh0aGlzLl9lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KTtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS5zZXRGb3JtSGVpZ2h0KHBhcmVudEhlaWdodCk7XG4gICAgfVxuICAgIHByaXZhdGUgX3NldFBhcmFtdGVycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wYXJhbWV0ZXJzID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUodGhpcy5jb250ZXh0LCAnU2V0dGluZy5WaWV3LkN1c3RvbVVpLlBhcmFtZXRlcnMnLCBudWxsKTtcbiAgICB9XG59XG4iXX0=
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9hYnN0cmFjdC1jbGFzc2VzL2Zvcm0tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUdaLHVCQUF1QixFQUV2QixJQUFJLEVBRUosV0FBVyxFQUNkLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVl2QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7O0FBT3pFLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxhQUFhO0lBK0NoRCxZQUNjLGtCQUFxQyxFQUNyQyxjQUE2QixFQUM3QixPQUFlLEVBQ2YsR0FBZSxFQUNmLGNBQTZCLEVBQ3JCLGlCQUFtQyxFQUMzQyxlQUErQixFQUMvQixJQUF1QjtRQUVqQyxLQUFLLEVBQUUsQ0FBQztRQVRFLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDckMsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFDZixtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQzNDLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQXREYixPQUFFLEdBQUcsUUFBUSxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQU01QyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQW1EckMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxhQUFhLEVBQUUsRUFBRTtZQUM5RCxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsQ0FBQztRQUNwRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7UUFDcEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDO1FBQ2hELElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQztRQUM5RCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUM1QyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDcEYsQ0FBQztRQUNGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQztRQUMxRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDO1FBQ2hFLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQztRQUMxRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUM7UUFDaEQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBZ0IsQ0FBQztRQUNoRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUM7UUFDcEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDO1FBQzlELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQztRQUM5QyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDO1FBQ2hFLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQztRQUMxQyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLENBQUM7UUFDdEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxDQUFDO1FBQ3BELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGFBQWEsQ0FBQztRQUN0RCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUM7UUFDMUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQztRQUNwRSxJQUFJLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLDJCQUEyQixDQUFDO1FBQ3RGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUM5RSxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDM0UsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQztRQUNqRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDO1FBQ25ELElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMvRyxDQUFDO0lBQ0QsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxDQUFDO0lBQzlDLENBQUM7SUFFRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM5QyxJQUFJLENBQUMsUUFBUSxHQUFHLGlCQUFpQixFQUFFLENBQUM7UUFDcEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQztRQUU3QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQztRQUM3QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDOUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQ2xDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQ2hCLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQyxDQUFDO1FBQzdDLG9CQUFvQjtRQUNwQixLQUFLLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxFQUMxQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNOLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLG1CQUFtQixFQUFFO2dCQUN0RCxPQUFPLEVBQUUsQ0FBQzthQUNiO1lBQ0QsTUFBTSxJQUFJLEdBQW9CLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztZQUMzRCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLEtBQUssS0FBSyxDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQ0wsQ0FBQztRQUNGLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ04sSUFBSSxDQUFDLGNBQWMsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDOUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHdCQUF3QixDQUM3QyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFDdEI7WUFDSSxJQUFJLEVBQUUsSUFBSTtZQUNWLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLFNBQVMsRUFBRSxDQUFDO1NBQ2YsRUFDRCxHQUFHLEVBQ0gsS0FBSyxDQUNSO2FBQ0ksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDakMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RCLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUNTLFNBQVMsQ0FBQyxDQUFDO1FBQ2pCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNmLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUM3QjtJQUNMLENBQUM7SUFDRCxXQUFXO1FBQ1AsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNyQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDakMsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUNELE9BQU87UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUNELGNBQWMsQ0FBQyxHQUFHO1FBQ2QsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0QscUJBQXFCLENBQUMsUUFBUTtRQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFDRCxXQUFXLENBQUMsU0FBUyxFQUFFLEtBQUs7UUFDeEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFdBQVcsS0FBSyxTQUFTLENBQUMsQ0FBQztRQUMzRixPQUFPLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUN0QixPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBQ0QsV0FBVztRQUNQLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLGFBQWEsS0FBSyx3QkFBd0IsQ0FBQyxDQUFDO1FBRXBHLE9BQU8sQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBQ1MscUJBQXFCLENBQUMsU0FBaUI7UUFDN0MsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNaLE9BQU87U0FDVjtRQUNELFNBQVMsR0FBRyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxJQUFJLElBQUksUUFBUSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZFLE1BQU0sS0FBSyxHQUFRLFFBQVEsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFbkQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV4QixLQUFLLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztRQUN4QixJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUU7WUFDbEIsc0NBQXNDO1lBQ3RDLEtBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxHQUFHLFNBQVMsQ0FBQztTQUN4QzthQUFNO1lBQ0gsS0FBSyxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDekQ7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBQ1Msd0JBQXdCO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2QsT0FBTztTQUNWO1FBQ0QsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUNTLFlBQVk7UUFDbEIsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBNEIsQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUNPLGFBQWE7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvRyxDQUFDOzs4R0ExTVEsaUJBQWlCO2tHQUFqQixpQkFBaUIsa01BSGhCLEVBQUU7MkZBR0gsaUJBQWlCO2tCQUw3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs7MEJBc0RRLElBQUk7eUdBcERlLEVBQUU7c0JBQXpCLFdBQVc7dUJBQUMsU0FBUztnQkFDYixPQUFPO3NCQUFmLEtBQUs7Z0JBS0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgSW5wdXQsXG4gICAgQ29tcG9uZW50LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgT25Jbml0LFxuICAgIE9uRGVzdHJveSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBFbGVtZW50UmVmLFxuICAgIFNlbGYsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgSG9zdEJpbmRpbmdcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFrZVVudGlsLCBtZXJnZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgZ2V0RGV2aWNlSXNNb2JpbGUsIGdldFBhcmVudEhlaWdodCwgZ2V0VW5pcXVlSWQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRm9ybVBhbmVsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm0tcGFuZWwuc2VydmljZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSB9IGZyb20gJy4vYmFyc2EtYXBpJztcbmltcG9ydCB7XG4gICAgRm9ybVNldHRpbmcsXG4gICAgRm9ybVZpZXdTZXR0aW5nLFxuICAgIEZvcm1WaXNpYmlsaXR5U3RhdHVzLFxuICAgIElIZWFkZXJMYXlvdXQsXG4gICAgTGF5b3V0U2V0dGluZyxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsXG59IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEJyZWFkY3J1bWJTZXJ2aWNlLCBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ29udHJvbFVpUGlwZSB9IGZyb20gJy4uL3BpcGVzJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZnJvbUludGVyc2VjdGlvbk9ic2VydmVyIH0gZnJvbSAnLi4vZnJvbS1pbnRlcnNlY3Rpb24tb2JzZXJ2ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JucmMtZm9ybS1iYXNlJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUJhc2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5pZCcpIGlkID0gYGZvcm1fJHtnZXRVbmlxdWVJZCg0KX1gO1xuICAgIEBJbnB1dCgpIGNvbnRleHQ6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICBjb25maWc6IGFueTtcbiAgICAgICAgU2V0dGluZzogRm9ybVNldHRpbmc7XG4gICAgfTtcbiAgICBAT3V0cHV0KCkgZm9ybUNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIGxpc3RGaWVsZFVpOiBhbnk7XG4gICAgaXNXaXphcmQ6IGJvb2xlYW47XG4gICAgcGFyYW1ldGVyczogTWV0YW9iamVjdERhdGFNb2RlbDtcbiAgICBpc01vYmlsZTogYm9vbGVhbjtcblxuICAgIHRvb2xiYXJWaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBoaWRlQ2xvc2UkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGhpZGVUaXRsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgaGlkZVBpbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgdGl0bGUkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgdG9vbGJhckl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgd29ya2Zsb3dCdXR0b25zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgaGVhZGVyTGF5b3V0JDogT2JzZXJ2YWJsZTxJSGVhZGVyTGF5b3V0IHwgbnVsbD47XG4gICAgbGF5b3V0OTQkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgbGF5b3V0OTQ6IGFueTtcbiAgICBtYXhDb250ZW50V2lkdGgkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgZm9ybVdpZHRoJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGhlYWRlckRlc2NyaXB0aW9uJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBoZWFkZXJTdWJ0aXRsZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICBhdmF0YXIkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgd29ya2Zsb3dQYW5lbFVpJDogT2JzZXJ2YWJsZTxhbnk+O1xuICAgIHZpZXckOiBPYnNlcnZhYmxlPEZvcm1WaWV3U2V0dGluZz47XG4gICAgbW8kOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWwgfCBudWxsPjtcbiAgICBpc1NpbXBsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgZmllbGREaWN0JDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkPjtcbiAgICBtYXNrJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBpc1NlYXJjaFBhbmVsOiBib29sZWFuO1xuICAgIGlzTW9kYWw6IGJvb2xlYW47XG4gICAgaXNTdWJGb3JtOiBib29sZWFuO1xuICAgIG1vZGVyblRhYnMkOiBPYnNlcnZhYmxlPExheW91dFNldHRpbmdbXT47XG4gICAgaXNGb3JtUmVwb3J0OiBib29sZWFuO1xuICAgIGxhbmRzY2FwZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgc3RhbmRhbG9uZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF9zdHlsZTogSFRNTFN0eWxlRWxlbWVudDtcbiAgICBwcm90ZWN0ZWQgX3N0YW5kYWxvbmU6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfZm9ybUludGVyc2VjdGlvbjogYW55O1xuICAgIGZvcm1WaXNpYmlsaXR5U3RhdHVzOiBGb3JtVmlzaWJpbGl0eVN0YXR1cztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2JyZWFkY3J1bWJTZXJ2aWNlOiBCcmVhZGNydW1iU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX3JvdXRlcjogUm91dGVyLFxuICAgICAgICBwcm90ZWN0ZWQgX2VsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcm90ZWN0ZWQgX2NvbnRyb2xVaVBpcGU6IENvbnRyb2xVaVBpcGUsXG4gICAgICAgIEBTZWxmKCkgcHJvdGVjdGVkIF9mb3JtUGFuZWxTZXJ2aWNlOiBGb3JtUGFuZWxTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaXNTZWFyY2hQYW5lbCQuc3Vic2NyaWJlKChpc1NlYXJjaFBhbmVsKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzU2VhcmNoUGFuZWwgPSBpc1NlYXJjaFBhbmVsO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5oaWRlQ2xvc2UkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5oaWRlQ2xvc2UkO1xuICAgICAgICB0aGlzLmhpZGVUaXRsZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVUaXRsZSQ7XG4gICAgICAgIHRoaXMuaGlkZVBpbiQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVQaW4kO1xuICAgICAgICB0aGlzLnRvb2xiYXJWaXNpYmxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudG9vbGJhclZpc2libGUkO1xuICAgICAgICB0aGlzLnRpdGxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudGl0bGUkLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHRpdGxlKSA9PiAoIXRpdGxlID8gJycgOiBnZXREZXZpY2VJc01vYmlsZSgpID8gdGl0bGUuc3BsaXQoJzonKVswXSA6IHRpdGxlKSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy50b29sYmFySXRlbXMkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS50b29sYmFySXRlbXMkO1xuICAgICAgICB0aGlzLndvcmtmbG93QnV0dG9ucyQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLndvcmtmbG93QnV0dG9ucyQ7XG4gICAgICAgIHRoaXMuaGVhZGVyTGF5b3V0JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyTGF5b3V0JDtcbiAgICAgICAgdGhpcy5sYXlvdXQ5NCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmxheW91dCQ7XG4gICAgICAgIHRoaXMubWF4Q29udGVudFdpZHRoJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubWF4Q29udGVudFdpZHRoJDtcbiAgICAgICAgdGhpcy5mb3JtV2lkdGgkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5mb3JtV2lkdGgkO1xuICAgICAgICB0aGlzLmhlYWRlclN1YnRpdGxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyU3VidGl0bGUkO1xuICAgICAgICB0aGlzLmF2YXRhciQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmF2YXRhciQ7XG4gICAgICAgIHRoaXMud29ya2Zsb3dQYW5lbFVpJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2Uud29ya2Zsb3dQYW5lbFVpJDtcbiAgICAgICAgdGhpcy52aWV3JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudmlldyQ7XG4gICAgICAgIHRoaXMubW8kID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5tbyQ7XG4gICAgICAgIHRoaXMuZmllbGREaWN0JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZmllbGREaWN0JDtcbiAgICAgICAgdGhpcy5pc1NpbXBsZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmlzU2ltcGxlRm9ybSQ7XG4gICAgICAgIHRoaXMubWFzayQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLm1hc2skO1xuICAgICAgICB0aGlzLmhlYWRlckRlc2NyaXB0aW9uJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyRGVzY3JpcHRpb24kO1xuICAgICAgICB0aGlzLmhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyUmVtb3ZlQ29udGVudFBhZGRpbmckO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmNvbnRleHQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS52aWV3JC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMubGFuZHNjYXBlJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UubGFuZHNjYXBlJDtcbiAgICAgICAgdGhpcy5zdGFuZGFsb25lJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2Uuc3RhbmRhbG9uZSQ7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2Uuc3RhbmRhbG9uZSQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoYykgPT4gKHRoaXMuX3N0YW5kYWxvbmUgPSBjKSk7XG4gICAgfVxuICAgIGdldCBmb3JjZUNsb3NlJCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZm9yY2VDbG9zZSQ7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuY29udGV4dCA9IHRoaXMuY29udGV4dDtcbiAgICAgICAgdGhpcy5pc01vYmlsZSA9IGdldERldmljZUlzTW9iaWxlKCk7XG4gICAgICAgIHRoaXMubGlzdEZpZWxkVWkgPSB0aGlzLmNvbnRleHQuX2RpY3RGaWVsZFVpO1xuXG4gICAgICAgIHRoaXMuaXNNb2RhbCA9IHRoaXMuY29udGV4dC5TZXR0aW5nPy5Jc01vZGFsO1xuICAgICAgICB0aGlzLmlzU3ViRm9ybSA9IHRoaXMuY29udGV4dC5Jc1N1YkZvcm07XG4gICAgICAgIHRoaXMuaXNGb3JtUmVwb3J0ID0gdGhpcy5jb250ZXh0LklzRm9ybVJlcG9ydDtcbiAgICAgICAgdGhpcy5fc2V0UGFyYW10ZXJzKCk7XG4gICAgICAgIHRoaXMuX2FkZER5bmFtaWNGb3JtU3R5bGVzKHRoaXMucGFyYW1ldGVycz8uQ3NzU3R5bGVzKTtcbiAgICAgICAgdGhpcy5tb2Rlcm5UYWJzJCA9IHRoaXMubGF5b3V0OTQkLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGMpID0+IGMpLFxuICAgICAgICAgICAgbWFwKChsYXlvdXQ5NCkgPT4gKHRoaXMubGF5b3V0OTQgPSBsYXlvdXQ5NCkpLFxuICAgICAgICAgICAgLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAgICAgICAgIG1lcmdlKHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZ3JvdXBMYXlvdXQkKSxcbiAgICAgICAgICAgIG1hcCgoXykgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmxheW91dDk0Lml0ZW1zWzBdLnh0eXBlICE9PSAnTHkuTGF5b3V0VGFiUGFuZWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgdGFiczogTGF5b3V0U2V0dGluZ1tdID0gdGhpcy5sYXlvdXQ5NC5pdGVtc1swXS5pdGVtcztcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFicy5maWx0ZXIoKGMpID0+IGMuVmlzaWJsZSAhPT0gZmFsc2UpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9idGFpbkhlaWdodCgpO1xuICAgICAgICB9LCAwKTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS53aW5kb3dSZXNpemUkLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vYnRhaW5IZWlnaHQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2Zvcm1JbnRlcnNlY3Rpb24gPSBmcm9tSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoXG4gICAgICAgICAgICB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHJvb3Q6IG51bGwsXG4gICAgICAgICAgICAgICAgcm9vdE1hcmdpbjogJzBweCcsXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAwXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTAwLFxuICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX29uSW5WaWV3KGUpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfb25JblZpZXcoZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtVmlzaWJpbGl0eVN0YXR1cyA9IGU7XG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9mb3JtSW50ZXJzZWN0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9yZW1vdmVEeW5hbWljRm9ybVN0eWxlcygpO1xuICAgIH1cbiAgICBvbkNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdSZXF1ZXN0Rm9yQ2xvc2UnLCB0aGlzLmNvbnRleHQpO1xuICAgIH1cbiAgICBvblRvb2xiYXJDbGljayhidG4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS50b29sYmFyQ2xpY2soYnRuKTtcbiAgICB9XG4gICAgb25Xb3JrZmxvd0Nob2ljZUNsaWNrKHdmQ2hvaWNlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2Uud2ZDaG9pY2Uod2ZDaG9pY2UpO1xuICAgIH1cbiAgICBmaWVsZENoYW5nZShmaWVsZE5hbWUsIHZhbHVlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGZpZWxkVWkgPSB0aGlzLmNvbnRleHQuX2xpc3RGaWVsZFVpLmZpbmQoKGMpID0+IGMuU2V0dGluZy5Db250cm9sTmFtZSA9PT0gZmllbGROYW1lKTtcbiAgICAgICAgZmllbGRVaS52YWx1ZSA9IHZhbHVlO1xuICAgICAgICBmaWVsZFVpLmZpcmVFdmVudCgnY2hhbmdlJywgZmllbGRVaSk7XG4gICAgfVxuICAgIHNlYXJjaENsaWNrKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBmaWVsZFVpID0gdGhpcy5jb250ZXh0Ll9saXN0RmllbGRVaS5maW5kKChjKSA9PiBjLm9yaWdpbmFsWHR5cGUgPT09ICdVaS5TZWFyY2hDb21tYW5kSW5mb1VpJyk7XG5cbiAgICAgICAgZmllbGRVaS5maXJlRXZlbnQoQmFyc2FBcGkuVWwuRm9ybVBhbmVsQ3RybHIuRXZlbnRFbnVtLlNlYXJjaENsaWNrLCBmaWVsZFVpKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9hZGREeW5hbWljRm9ybVN0eWxlcyhjc3NTdHlsZXM6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoIWNzc1N0eWxlcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNzc1N0eWxlcyA9IGNzc1N0eWxlcy5yZXBsYWNlKC86cm9vdC9naSwgYCMke3RoaXMuaWR9YCk7XG4gICAgICAgIGNvbnN0IGhlYWQgPSBkb2N1bWVudC5oZWFkIHx8IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07XG4gICAgICAgIGNvbnN0IHN0eWxlOiBhbnkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuXG4gICAgICAgIGhlYWQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXG4gICAgICAgIHN0eWxlLnR5cGUgPSAndGV4dC9jc3MnO1xuICAgICAgICBpZiAoc3R5bGUuc3R5bGVTaGVldCkge1xuICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJlZCBmb3IgSUU4IGFuZCBiZWxvdy5cbiAgICAgICAgICAgIHN0eWxlLnN0eWxlU2hlZXQuY3NzVGV4dCA9IGNzc1N0eWxlcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzc1N0eWxlcykpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3N0eWxlID0gc3R5bGU7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfcmVtb3ZlRHluYW1pY0Zvcm1TdHlsZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5fc3R5bGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBoZWFkID0gZG9jdW1lbnQuaGVhZCB8fCBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdO1xuICAgICAgICBoZWFkLnJlbW92ZUNoaWxkKHRoaXMuX3N0eWxlKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIG9idGFpbkhlaWdodCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGFyZW50SGVpZ2h0ID0gZ2V0UGFyZW50SGVpZ2h0KHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLnNldEZvcm1IZWlnaHQocGFyZW50SGVpZ2h0KTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfc2V0UGFyYW10ZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhcmFtZXRlcnMgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmNvbnRleHQsICdTZXR0aW5nLlZpZXcuQ3VzdG9tVWkuUGFyYW1ldGVycycsIG51bGwpO1xuICAgIH1cbn1cbiJdfQ==
@@ -5,6 +5,7 @@ import { ContainerService, FormService } from '../services';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "@angular/router";
7
7
  import * as i2 from "../form/form.component";
8
+ import * as i3 from "../directives/form-close.directive";
8
9
  export class FormPageComponent extends FormPageBaseComponent {
9
10
  constructor() {
10
11
  super(...arguments);
@@ -25,7 +26,7 @@ FormPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
25
26
  (formClose)="onFormClose()"
26
27
  ></bnrc-form>
27
28
  <router-outlet></router-outlet>
28
- `, isInline: true, styles: [":host{display:block;background:var(--sapBackgroundColor)}\n"], dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i2.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "formPanelCtrlId"], outputs: ["titleChanged", "moChanged", "formClose", "formRendered"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
+ `, isInline: true, styles: [":host{display:block;background:var(--sapBackgroundColor)}\n"], dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i2.FormComponent, selector: "bnrc-form", inputs: ["params", "customFormPanelUi", "formPanelCtrl", "formPanelCtrlId"], outputs: ["titleChanged", "moChanged", "formClose", "formRendered"] }, { kind: "directive", type: i3.FormCloseDirective, selector: "[formClose]", inputs: ["isMobile"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: FormPageComponent, decorators: [{
30
31
  type: Component,
31
32
  args: [{ selector: 'bnrc-form-page', template: `
@@ -49,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
49
50
  type: HostBinding,
50
51
  args: ['class.absolute-page']
51
52
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvYWJzdHJhY3QtY2xhc3Nlcy9mb3JtLXBhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUF3QjVELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxxQkFBcUI7SUF0QjVEOztRQXlCa0MsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDZCxzQkFBaUIsR0FBRyxJQUFJLENBQUM7S0FVaEU7SUFKRyxRQUFRO1FBQ0osSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGtEQUFrRDtRQUN4RixLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckIsQ0FBQzs7OEdBYlEsaUJBQWlCO2tHQUFqQixpQkFBaUIsd01BSGYsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsbUVBSS9CLGFBQWEscUZBckJkOzs7Ozs7OztLQVFUOzJGQVlRLGlCQUFpQjtrQkF0QjdCLFNBQVM7K0JBQ0ksZ0JBQWdCLFlBQ2hCOzs7Ozs7OztLQVFULGFBU1UsQ0FBQyxXQUFXLEVBQUUsZ0JBQWdCLENBQUMsbUJBQ3pCLHVCQUF1QixDQUFDLE1BQU07OEJBR0gsT0FBTztzQkFBbEQsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNqQyxjQUFjO3NCQUF0QixLQUFLO2dCQUN3QixZQUFZO3NCQUF6QyxXQUFXO3VCQUFDLGVBQWU7Z0JBQ1EsaUJBQWlCO3NCQUFwRCxXQUFXO3VCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1QYWdlQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uL2Fic3RyYWN0LWNsYXNzZXMnO1xyXG5pbXBvcnQgeyBGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9ybS9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbnRhaW5lclNlcnZpY2UsIEZvcm1TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JucmMtZm9ybS1wYWdlJyxcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPGJucmMtZm9ybVxyXG4gICAgICAgICAgICBbZm9ybVBhbmVsQ3RybF09XCJmb3JtUGFuZWxDdHJsclwiXHJcbiAgICAgICAgICAgIFtmb3JtUGFuZWxDdHJsSWRdPVwiZm9ybXBhbmVsQ3RybHJJZFwiXHJcbiAgICAgICAgICAgIFtwYXJhbXNdPVwicGFyYW1zXCJcclxuICAgICAgICAgICAgKGZvcm1DbG9zZSk9XCJvbkZvcm1DbG9zZSgpXCJcclxuICAgICAgICA+PC9ibnJjLWZvcm0+XHJcbiAgICAgICAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxyXG4gICAgYCxcclxuICAgIHN0eWxlczogW1xyXG4gICAgICAgIGBcclxuICAgICAgICAgICAgOmhvc3Qge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zYXBCYWNrZ3JvdW5kQ29sb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgYFxyXG4gICAgXSxcclxuICAgIHByb3ZpZGVyczogW0Zvcm1TZXJ2aWNlLCBDb250YWluZXJTZXJ2aWNlXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtUGFnZUNvbXBvbmVudCBleHRlbmRzIEZvcm1QYWdlQmFzZUNvbXBvbmVudCB7XHJcbiAgICBAVmlld0NoaWxkKEZvcm1Db21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIGZvcm1SZWY6IEZvcm1Db21wb25lbnQ7XHJcbiAgICBASW5wdXQoKSBmb3JtUGFuZWxDdHJscjogYW55O1xyXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zZWN0aW9uJykgc2VjdGlvbkNsYXNzID0gdHJ1ZTtcclxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuYWJzb2x1dGUtcGFnZScpIGFic29sdXRlUGFnZUNsYXNzID0gdHJ1ZTtcclxuICAgIG1vSWQ6IHN0cmluZztcclxuICAgIHR5cGVEZWZJZDogc3RyaW5nO1xyXG4gICAgcmVwb3J0SWQ6IHN0cmluZztcclxuICAgIHZpZXdJZDogc3RyaW5nO1xyXG4gICAgZm9ybXBhbmVsQ3RybHJJZDogc3RyaW5nO1xyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5jb250YWluZXJSZWYgPSB0aGlzLmZvcm1SZWYudmNyOyAvLyBpdCBtdXN0IGJlIGZpcnN0IGJlY2F1c2Ugd2UgY2hhbmdlIGNvbnRhaW5lclJlZlxyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICB9XHJcbn1cclxuIl19
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvYWJzdHJhY3QtY2xhc3Nlcy9mb3JtLXBhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7O0FBd0I1RCxNQUFNLE9BQU8saUJBQWtCLFNBQVEscUJBQXFCO0lBdEI1RDs7UUF5QmtDLGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ2Qsc0JBQWlCLEdBQUcsSUFBSSxDQUFDO0tBVWhFO0lBSkcsUUFBUTtRQUNKLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxrREFBa0Q7UUFDeEYsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3JCLENBQUM7OzhHQWJRLGlCQUFpQjtrR0FBakIsaUJBQWlCLHdNQUhmLENBQUMsV0FBVyxFQUFFLGdCQUFnQixDQUFDLG1FQUkvQixhQUFhLHFGQXJCZDs7Ozs7Ozs7S0FRVDsyRkFZUSxpQkFBaUI7a0JBdEI3QixTQUFTOytCQUNJLGdCQUFnQixZQUNoQjs7Ozs7Ozs7S0FRVCxhQVNVLENBQUMsV0FBVyxFQUFFLGdCQUFnQixDQUFDLG1CQUN6Qix1QkFBdUIsQ0FBQyxNQUFNOzhCQUdILE9BQU87c0JBQWxELFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFDakMsY0FBYztzQkFBdEIsS0FBSztnQkFDd0IsWUFBWTtzQkFBekMsV0FBVzt1QkFBQyxlQUFlO2dCQUNRLGlCQUFpQjtzQkFBcEQsV0FBVzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBIb3N0QmluZGluZywgSW5wdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtUGFnZUJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9hYnN0cmFjdC1jbGFzc2VzJztcclxuaW1wb3J0IHsgRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb250YWluZXJTZXJ2aWNlLCBGb3JtU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdibnJjLWZvcm0tcGFnZScsXHJcbiAgICB0ZW1wbGF0ZTogYFxyXG4gICAgICAgIDxibnJjLWZvcm1cclxuICAgICAgICAgICAgW2Zvcm1QYW5lbEN0cmxdPVwiZm9ybVBhbmVsQ3RybHJcIlxyXG4gICAgICAgICAgICBbZm9ybVBhbmVsQ3RybElkXT1cImZvcm1wYW5lbEN0cmxySWRcIlxyXG4gICAgICAgICAgICBbcGFyYW1zXT1cInBhcmFtc1wiXHJcbiAgICAgICAgICAgIChmb3JtQ2xvc2UpPVwib25Gb3JtQ2xvc2UoKVwiXHJcbiAgICAgICAgPjwvYm5yYy1mb3JtPlxyXG4gICAgICAgIDxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cclxuICAgIGAsXHJcbiAgICBzdHlsZXM6IFtcclxuICAgICAgICBgXHJcbiAgICAgICAgICAgIDpob3N0IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tc2FwQmFja2dyb3VuZENvbG9yKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIGBcclxuICAgIF0sXHJcbiAgICBwcm92aWRlcnM6IFtGb3JtU2VydmljZSwgQ29udGFpbmVyU2VydmljZV0sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybVBhZ2VDb21wb25lbnQgZXh0ZW5kcyBGb3JtUGFnZUJhc2VDb21wb25lbnQge1xyXG4gICAgQFZpZXdDaGlsZChGb3JtQ29tcG9uZW50LCB7IHN0YXRpYzogdHJ1ZSB9KSBmb3JtUmVmOiBGb3JtQ29tcG9uZW50O1xyXG4gICAgQElucHV0KCkgZm9ybVBhbmVsQ3RybHI6IGFueTtcclxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2VjdGlvbicpIHNlY3Rpb25DbGFzcyA9IHRydWU7XHJcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLmFic29sdXRlLXBhZ2UnKSBhYnNvbHV0ZVBhZ2VDbGFzcyA9IHRydWU7XHJcbiAgICBtb0lkOiBzdHJpbmc7XHJcbiAgICB0eXBlRGVmSWQ6IHN0cmluZztcclxuICAgIHJlcG9ydElkOiBzdHJpbmc7XHJcbiAgICB2aWV3SWQ6IHN0cmluZztcclxuICAgIGZvcm1wYW5lbEN0cmxySWQ6IHN0cmluZztcclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY29udGFpbmVyUmVmID0gdGhpcy5mb3JtUmVmLnZjcjsgLy8gaXQgbXVzdCBiZSBmaXJzdCBiZWNhdXNlIHdlIGNoYW5nZSBjb250YWluZXJSZWZcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -227,4 +227,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
227
227
  }], pageSizeChange: [{
228
228
  type: Output
229
229
  }] } });
230
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvcmVwb3J0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILEtBQUssRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFJTix1QkFBdUIsRUFDMUIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUF3QnZDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxhQUFhO0lBc0RsRCxZQUFzQixjQUE2QixFQUFZLGVBQStCO1FBQzFGLEtBQUssRUFBRSxDQUFDO1FBRFUsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFBWSxvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUEvQ3BGLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3hDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV0RCx1QkFBa0IsR0FBRztZQUNqQixjQUFjLEVBQUUsRUFBRTtZQUNsQixlQUFlLEVBQUUsS0FBSztZQUN0QixlQUFlLEVBQUUsRUFBRTtZQUNuQixNQUFNLEVBQUUsSUFBSTtTQUNmLENBQUM7UUFLRixpQkFBWSxHQUF5RSxJQUFJLENBQUM7UUE0QmhGLDBCQUFxQixHQUFHLElBQUksZUFB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a0JBQWtCO29CQUM1QixRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7aUlBRVksT0FBTztzQkFBZixLQUFLO2dCQUlHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBJbnB1dCxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIE91dHB1dCxcbiAgICBPbkluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtYXAsIHBsdWNrLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR2V0QWxsQ29sdW1uc1NvcnRlZCwgZ2V0VW5pcXVlSWQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgUG9ydGFsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3BvcnRhbC5zZXJ2aWNlJztcbmltcG9ydCB7IFVsdk1haW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdWx2bWFpbi5zZXJ2aWNlJztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9iYXJzYS1hcGknO1xuaW1wb3J0IHtcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxuICAgIEdyaWRTZXR0aW5nLFxuICAgIENvbFNldHRpbmcsXG4gICAgUmVwb3J0Vmlld0NvbHVtbixcbiAgICBTb3J0U2V0dGluZyxcbiAgICBNZW51SXRlbSxcbiAgICBQYWdpbmdTZXR0aW5nLFxuICAgIEFiYnJldmF0aW9uRGV2aWNlU2l6ZSxcbiAgICBjb2x1bW5zUmVzaXplZEV2ZW50QXJncyxcbiAgICBGb3JtU2V0dGluZ1xufSBmcm9tICcuL21vZGVscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVwb3J0U2V0dGluZyB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgIElkOiBzdHJpbmc7XG4gICAgRXh0cmE6IGFueTtcbn1cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYm5yYy1yZXBvcnQtYmFzZScsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFJlcG9ydEJhc2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIGNvbnRleHQ6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICBTZXR0aW5nOiBSZXBvcnRTZXR0aW5nO1xuICAgIH07XG4gICAgQElucHV0KCkgY3VycmVudFBhZ2U6IG51bWJlcjtcblxuICAgIEBPdXRwdXQoKSBwYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gICAgQE91dHB1dCgpIHBhZ2VTaXplQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBkZWZhdWx0R3JpZFNldHRpbmcgPSB7XG4gICAgICAgIENvbFNldHRpbmdMaXN0OiBbXSxcbiAgICAgICAgQXV0b1NpemVDb2x1bW5zOiBmYWxzZSxcbiAgICAgICAgU29ydFNldHRpbmdMaXN0OiBbXSxcbiAgICAgICAgSGlkZGVuOiB0cnVlXG4gICAgfTtcbiAgICBpdGVtU2VsZWN0b3I6IHN0cmluZztcbiAgICBhbGxDb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW107XG4gICAgaWQ6IHN0cmluZztcblxuICAgIHNvcnRTZXR0aW5nczogeyBJc0dyb3VwZWQ6IGJvb2xlYW47IE5hbWU6IHN0cmluZzsgU29ydERpcmVjdGlvbjogc3RyaW5nIH1bXSB8IG51bGwgPSBudWxsO1xuICAgIHBhcmFtZXRlcnM6IGFueTtcbiAgICBmaWVsZHM6IGFueTtcblxuICAgIHZpc2libGVDb2x1bW5zJDogT2JzZXJ2YWJsZTxSZXBvcnRWaWV3Q29sdW1uW10+O1xuICAgIHNlYXJjaFRlcm0kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgbW9EYXRhTGlzdCQ6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbFtdPjtcbiAgICBncmlkU2V0dGluZyQ6IE9ic2VydmFibGU8R3JpZFNldHRpbmc+O1xuICAgIGdyb3VwYnkkOiBPYnNlcnZhYmxlPFNvcnRTZXR0aW5nW10+O1xuICAgIGFsbENoZWNrZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHBhZ2luZ1NldHRpbmckOiBPYnNlcnZhYmxlPFBhZ2luZ1NldHRpbmcgfCBudWxsPjtcbiAgICBkZXZpY2VTaXplJDogT2JzZXJ2YWJsZTxBYmJyZXZhdGlvbkRldmljZVNpemU+O1xuICAgIG1hc2skOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHRpdGxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGluRGlhbG9nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBpc011bHRpU2VsZWN0JDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBmdWxsc2NyZWVuJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBtZW51SXRlbXMkOiBPYnNlcnZhYmxlPE1lbnVJdGVtW10+O1xuICAgIHRvb2xiYXJCdXR0b25zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgdG9vbGJhckVuYWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgaGlkZVRvb2xiYXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHNlbGVjdGVkTW8kOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWwgfCB1bmRlZmluZWQ+O1xuICAgIGNvbmRpdGlvbmFsRm9ybWF0cyQ6IE9ic2VydmFibGU8YW55W10+O1xuICAgIG5ld0lubGluZUVkaXRNbyQ6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbCB8IG51bGw+O1xuICAgIGNhcnRhYmxlVGVtcGxhdGVzJDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IEZvcm1TZXR0aW5nIH0gfCBudWxsPjtcbiAgICBjYXJ0YWJsZUNoaWxkc01vJDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IE1ldGFvYmplY3REYXRhTW9kZWwgfSB8IG51bGw+O1xuICAgIHNlbGVjdGVkQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgICBwcm90ZWN0ZWQgX3Zpc2libGVDb2x1bW5zU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxSZXBvcnRWaWV3Q29sdW1uW10+KFtdKTtcbiAgICBwcm90ZWN0ZWQgc2VhcmNoVGVybVNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gICAgcHJvdGVjdGVkIGdyaWRTZXR0aW5nU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxHcmlkU2V0dGluZz4odGhpcy5kZWZhdWx0R3JpZFNldHRpbmcpO1xuICAgIHByb3RlY3RlZCBncm91cGJ5U291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTb3J0U2V0dGluZ1tdPihbXSk7XG4gICAgcHJpdmF0ZSBfYWxsQ2hlY2tlZFNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLCBwcm90ZWN0ZWQgX3Vsdk1haW5TZXJ2aWNlOiBVbHZNYWluU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnZpc2libGVDb2x1bW5zJCA9IHRoaXMuX3Zpc2libGVDb2x1bW5zU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLnNlYXJjaFRlcm0kID0gdGhpcy5zZWFyY2hUZXJtU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLmdyaWRTZXR0aW5nJCA9IHRoaXMuZ3JpZFNldHRpbmdTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG4gICAgICAgIHRoaXMuZ3JvdXBieSQgPSB0aGlzLmdyb3VwYnlTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG4gICAgICAgIHRoaXMuYWxsQ2hlY2tlZCQgPSB0aGlzLl9hbGxDaGVja2VkU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLmZpZWxkcyA9IHt9O1xuICAgICAgICB0aGlzLnRvb2xiYXJCdXR0b25zJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnRvb2xiYXJCdXR0b25zJDtcbiAgICB9XG4gICAgZ2V0IG1vRGF0YUxpc3QoKTogTWV0YW9iamVjdERhdGFNb2RlbFtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLm1vRGF0YUxpc3RTb3VyY2UuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuY29udGV4dC5yZW5kZXJlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuaW5EaWFsb2ckID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaW5EaWFsb2ckO1xuICAgICAgICB0aGlzLmlzTXVsdGlTZWxlY3QkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaXNNdWx0aVNlbGVjdCQ7XG4gICAgICAgIHRoaXMuZnVsbHNjcmVlbiQgPSB0aGlzLl91bHZNYWluU2VydmljZS5mdWxsc2NyZWVuJDtcbiAgICAgICAgdGhpcy5kZXZpY2VTaXplJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZSQ7XG4gICAgICAgIHRoaXMuaGlkZVRvb2xiYXIkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVRvb2xiYXIkO1xuICAgICAgICB0aGlzLm5ld0lubGluZUVkaXRNbyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5uZXdJbmxpbmVFZGl0TW8kO1xuICAgICAgICB0aGlzLmNvbmRpdGlvbmFsRm9ybWF0cyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5jb25kaXRpb25hbEZvcm1hdHMkO1xuICAgICAgICB0aGlzLmNhcnRhYmxlVGVtcGxhdGVzJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNhcnRhYmxlVGVtcGxhdGVzJDtcbiAgICAgICAgdGhpcy5jYXJ0YWJsZUNoaWxkc01vJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNhcnRhYmxlQ2hpbGRzTW8kO1xuICAgICAgICB0aGlzLnRpdGxlJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnRpdGxlJC5waXBlKHBsdWNrKCd0ZXh0JykpO1xuICAgICAgICB0aGlzLm1lbnVJdGVtcyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5tZW51SXRlbXMkO1xuICAgICAgICB0aGlzLnBhZ2luZ1NldHRpbmckID0gdGhpcy5fdWx2TWFpblNlcnZpY2UucGFnaW5nU2V0dGluZyQ7XG4gICAgICAgIHRoaXMudG9vbGJhckVuYWJsZSQgPSB0aGlzLl91bHZNYWluU2VydmljZS5lbmFibGUkO1xuICAgICAgICB0aGlzLm1hc2skID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uudml3ZXJNYXNrJC5waXBlKGRlYm91bmNlVGltZSgyMDApKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE1vJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLm1vRGF0YUxpc3QkLnBpcGUobWFwKChpdGVtcykgPT4gaXRlbXMuZmluZCgoYykgPT4gYy4kSXNDaGVja2VkKSkpO1xuICAgICAgICB0aGlzLm1vRGF0YUxpc3QkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UubW9EYXRhTGlzdCQucGlwZSh0YXAoKGl0ZW1zKSA9PiB0aGlzLl9zZXRBbGxDaGVja2VkKGl0ZW1zKSkpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ291bnQkID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2VsZWN0ZWRDb3VudCQ7XG5cbiAgICAgICAgdGhpcy5jb250ZXh0Lm9uKHtcbiAgICAgICAgICAgIE1vRGF0YUxpc3RDaGFuZ2VkOiB0aGlzLl9tb0RhdGFMaXN0Q2hhbmdlZC5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgR3JpZFNldHRpbmdDaGFuZ2VkOiB0aGlzLl9ncmlkU2V0dGluZ0NoYW5nZWQuYmluZCh0aGlzKVxuICAgICAgICB9KTtcbiAgICAgICAgLy8gaW4gZ2hlaXJlIGZhYWwgYm9vZCBjaG9uIG1vc2hrZWwgZWlqYWQgbWlrYXJkXG4gICAgICAgIC8vIHZhIGRhciB1bHYgZXZlbnQgYmFpYWQgcmFpc2Ugc2hhdmFkXG4gICAgICAgIC8vIGtlIGRhdGEgYW1hZGUgc2hvZGUgdmEgdWx2bWFpbnNlcnZpY2UgYW4gcmEgYmVnaXJhZC5nb3phcmVzaCBtb3J0YWJldFxuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5yZVNldE1vRGF0YUxpc3QodGhpcy5jb250ZXh0Lm1vRGF0YUxpc3QpO1xuICAgICAgICBsZXQgZ3JpZFNldHRpbmcgPSB0aGlzLmRlZmF1bHRHcmlkU2V0dGluZztcbiAgICAgICAgaWYgKHRoaXMuY29udGV4dC5HZXRHcmlkU2V0dGluZykge1xuICAgICAgICAgICAgZ3JpZFNldHRpbmcgPSB0aGlzLmNvbnRleHQuR2V0R3JpZFNldHRpbmcoKSB8fCB0aGlzLmRlZmF1bHRHcmlkU2V0dGluZztcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3NldFZpc2libGVDb2x1bW5zKCk7XG5cbiAgICAgICAgZ3JpZFNldHRpbmcuU29ydFNldHRpbmdMaXN0IHx8PSBbXTtcbiAgICAgICAgdGhpcy5hbGxDb2x1bW5zID0gdGhpcy5jb250ZXh0LmFsbENvbHVtbnMgfHwgW107XG4gICAgICAgIHRoaXMudXBkYXRlR3JpZFNldHRpbmcoZ3JpZFNldHRpbmcsIGZhbHNlLCBmYWxzZSk7XG4gICAgICAgIHRoaXMucGFyYW1ldGVycyA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKFxuICAgICAgICAgICAgdGhpcy5jb250ZXh0LFxuICAgICAgICAgICAgJ1NldHRpbmcuQ2xhc3NOYW1lcy5DdXN0b21VaS5QYXJhbWV0ZXJzJyxcbiAgICAgICAgICAgIG51bGxcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5pZCA9IGdldFVuaXF1ZUlkKDQpO1xuXG4gICAgICAgIHRoaXMuaXRlbVNlbGVjdG9yID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUodGhpcy5jb250ZXh0LCAnU2V0dGluZy5DbGFzc05hbWVzLkN1c3RvbVVpUm93LlNlbGVjdG9yJyk7XG5cbiAgICAgICAgdGhpcy5wYXJhbWV0ZXJzID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUodGhpcy5jb250ZXh0LCAnU2V0dGluZy5DbGFzc05hbWVzLkN1c3RvbVVpLlBhcmFtZXRlcnMnKTtcbiAgICAgICAgY29uc3QgZmllbGRTZXR0aW5ncyA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKHRoaXMucGFyYW1ldGVycywgJ0ZpZWxkU2V0dGluZ3MuTW9EYXRhTGlzdCcsIFtdKTtcblxuICAgICAgICBmaWVsZFNldHRpbmdzLmZvckVhY2goKGMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmllbGRzW2MuQ29tcG9uZW50UGFyYW1ldGVyLiRDYXB0aW9uXSA9IGMuJENhcHRpb247XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG5cbiAgICAgICAgdGhpcy5kZXZpY2VTaXplJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxuICAgICAgICAgICAgICAgIHRhcCgoZGV2aWNlU2l6ZSkgPT4gdGhpcy5fZGV2aWNlU2l6ZUNoYW5nZWQoZGV2aWNlU2l6ZSkpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2Uud2luZG93UmVzaXplJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuX3dpbmRvd1Jlc2l6ZWQoKSk7XG4gICAgICAgIHRoaXMuY29udGV4dD8uZmlyZUV2ZW50KCdhZnRlcnJlbmRlcicsIHRoaXMpO1xuICAgIH1cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5jb250ZXh0LnVuKCdNb0RhdGFMaXN0Q2hhbmdlZCcsIHRoaXMuX21vRGF0YUxpc3RDaGFuZ2VkKTtcbiAgICAgICAgdGhpcy5jb250ZXh0LnVuKCdHcmlkU2V0dGluZ0NoYW5nZWQnLCB0aGlzLl9ncmlkU2V0dGluZ0NoYW5nZWQpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX2dyaWRTZXR0aW5nQ2hhbmdlZChzZXR0aW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ3JpZFNldHRpbmdTb3VyY2UubmV4dChzZXR0aW5nKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9tb0RhdGFMaXN0Q2hhbmdlZChtb0RhdGFMaXN0KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnJlU2V0TW9EYXRhTGlzdChtb0RhdGFMaXN0KTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRBbGxDaGVja2VkKGl0ZW1zOiBNZXRhb2JqZWN0RGF0YU1vZGVsW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fYWxsQ2hlY2tlZFNvdXJjZS5uZXh0KCFpdGVtcy5zb21lKChjKSA9PiAhYy4kSXNDaGVja2VkKSk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF9oYW5kbGVDb2x1bW5zUmVzaXplZChlOiBjb2x1bW5zUmVzaXplZEV2ZW50QXJncyk6IHZvaWQge1xuICAgICAgICBjb25zdCBncmlkU2V0dGluZzogR3JpZFNldHRpbmcgPSB0aGlzLmdyaWRTZXR0aW5nU291cmNlLmdldFZhbHVlKCk7XG4gICAgICAgIGNvbnN0IHsgY29sdW1ucywgcmVzaXplZCB9ID0gZTtcbiAgICAgICAgY29uc3QgY29sTGlzdDogQ29sU2V0dGluZ1tdID0gZ3JpZFNldHRpbmcuQ29sU2V0dGluZ0xpc3Q7XG4gICAgICAgIHJlc2l6ZWQuZm9yRWFjaCgoY29sdW1uMSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcmVzaXplZENvbHVtbiA9IGNvbHVtbnMuZmluZCgoYykgPT4gYy5OYW1lID09PSBjb2x1bW4xLm5hbWUpO1xuICAgICAgICAgICAgY29uc3QgY29sdW1uID0gY29sTGlzdC5maW5kKChjKSA9PiBjLk5hbWUgPT09IHJlc2l6ZWRDb2x1bW4/Lk5hbWUpO1xuICAgICAgICAgICAgaWYgKGNvbHVtbikge1xuICAgICAgICAgICAgICAgIGNvbHVtbi5XaWR0aCA9IGNvbHVtbjEud2lkdGg7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHJlc2l6ZWRDb2x1bW4pIHtcbiAgICAgICAgICAgICAgICBjb2xMaXN0LnB1c2goeyBJc0hpZGRlbjogcmVzaXplZENvbHVtbi5IaWRkZW4sIE5hbWU6IHJlc2l6ZWRDb2x1bW4uTmFtZSwgV2lkdGg6IGNvbHVtbjEud2lkdGggfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnVwZGF0ZUdyaWRTZXR0aW5nKGdyaWRTZXR0aW5nLCBmYWxzZSk7XG4gICAgICAgIHRoaXMuX3NldFZpc2libGVDb2x1bW5zKCk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfc2V0VmlzaWJsZUNvbHVtbnMoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbHVtbnMgPSBHZXRBbGxDb2x1bW5zU29ydGVkKHRoaXMuY29udGV4dCk7XG4gICAgICAgIHRoaXMuX3Zpc2libGVDb2x1bW5zU291cmNlLm5leHQoY29sdW1ucy5maWx0ZXIoKGMpID0+ICFjLkhpZGRlbikpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgYXBwbHlHcm91cGJ5KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBzb3J0TGlzdDogU29ydFNldHRpbmdbXSA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKFxuICAgICAgICAgICAgdGhpcy5jb250ZXh0LFxuICAgICAgICAgICAgJ1NldHRpbmcuVmlldy5HcmlkU2V0dGluZy5Tb3J0U2V0dGluZ0xpc3QnLFxuICAgICAgICAgICAgW11cbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5ncm91cGJ5U291cmNlLm5leHQoc29ydExpc3QuZmlsdGVyKChjKSA9PiBjLklzR3JvdXBlZCkpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX3JhaXNlUm93Q2xpY2soaW5kZXgsIG1vKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGV4dD8uZmlyZUV2ZW50KCdyb3dkYmxjbGljaycsIHRoaXMuY29udGV4dCwgaW5kZXgsIG1vKTtcbiAgICB9XG4gICAgLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICBwcm90ZWN0ZWQgX2RldmljZVNpemVDaGFuZ2VkKF86IHN0cmluZyk6IHZvaWQge31cbiAgICBwcm90ZWN0ZWQgX3dpbmRvd1Jlc2l6ZWQoKTogdm9pZCB7fVxuXG4gICAgcHJvdGVjdGVkIF9vcGVuTW8obW8sIGkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmFpc2VSb3dDbGljayhpLCBtbyk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHVwZGF0ZUdyaWRTZXR0aW5nKHNldHRpbmcsIGlzU29ydCA9IGZhbHNlLCByYWlzZUV2ZW50ID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAoIXNldHRpbmcpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNvbnRleHQuU2V0dGluZy5WaWV3LkdyaWRTZXR0aW5nID0gc2V0dGluZztcbiAgICAgICAgdGhpcy5ncmlkU2V0dGluZ1NvdXJjZS5uZXh0KHNldHRpbmcpO1xuICAgICAgICB0aGlzLmFwcGx5R3JvdXBieSgpO1xuICAgICAgICBpZiAoaXNTb3J0KSB7XG4gICAgICAgICAgICBzZXR0aW5nLkV2ZW50ID0gJ1NvcnRDaGFuZ2UnO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc2V0dGluZy5FdmVudCA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2RldmljZVNpemVDaGFuZ2VkKHRoaXMuX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZSk7XG4gICAgICAgIGlmIChyYWlzZUV2ZW50KSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdVc2VyU2V0dGluZ0NoYW5nZScsIHRoaXMuY29udGV4dCwgc2V0dGluZyk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgcHJvdGVjdGVkIF91bHZDb21tYW5kQ2xpY2tlZChtbywgaW5kZXgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVtb3ZlQ2hlY2tlZEFsbCgpO1xuICAgICAgICB0aGlzLl9zZWxlY3QobW8sIGluZGV4KTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9jaGVja2VkQWxsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBtb0RhdGFMaXN0ID0gdGhpcy5tb0RhdGFMaXN0O1xuICAgICAgICBtb0RhdGFMaXN0LmZvckVhY2goKG1vKSA9PiAobW8uJElzQ2hlY2tlZCA9IHRydWUpKTtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UucmVTZXRNb0RhdGFMaXN0KCk7XG4gICAgICAgIHRoaXMuY29udGV4dC5maXJlRXZlbnQoJ3Jvd1NlbGVjdEFsbCcsIHRoaXMuY29udGV4dCk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfcmVtb3ZlQ2hlY2tlZEFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZGVzZWxjdEFsbCgpO1xuICAgICAgICAvLyB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdyb3dEZXNlbGVjdEFsbCcsIHRoaXMuY29udGV4dCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF9kZXNlbGN0QWxsKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBtb0RhdGFMaXN0ID0gdGhpcy5tb0RhdGFMaXN0O1xuICAgICAgICBtb0RhdGFMaXN0LmZvckVhY2goKG1vKSA9PiAobW8uJElzQ2hlY2tlZCA9IGZhbHNlKSk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnJlU2V0TW9EYXRhTGlzdCgpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX2Rlc2VsZWN0KG1vLCBpbmRleCk6IE1ldGFvYmplY3REYXRhTW9kZWwge1xuICAgICAgICBtby4kSXNDaGVja2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnJlU2V0TW9EYXRhTGlzdCgpO1xuICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdyb3dkZXNlbGVjdCcsIHRoaXMuY29udGV4dCwgaW5kZXgsIG1vKTtcbiAgICAgICAgcmV0dXJuIG1vO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBfc2VsZWN0KG1vLCBpbmRleCk6IE1ldGFvYmplY3REYXRhTW9kZWwge1xuICAgICAgICAvLyAgICB0aGlzLl9kZXNlbGN0QWxsKCk7XG4gICAgICAgIG1vLiRJc0NoZWNrZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5yZVNldE1vRGF0YUxpc3QoKTtcbiAgICAgICAgdGhpcy5jb250ZXh0LmZpcmVFdmVudCgncm93c2VsZWN0JywgdGhpcy5jb250ZXh0LCBpbmRleCwgbW8pO1xuICAgICAgICByZXR1cm4gbW87XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF9kb0NoZWNrZWRBbGwoY2hlY2tlZCk6IHZvaWQge1xuICAgICAgICBpZiAoY2hlY2tlZCkge1xuICAgICAgICAgICAgdGhpcy5fY2hlY2tlZEFsbCgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fcmVtb3ZlQ2hlY2tlZEFsbCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF9nZXRTZWxlY3RlZCgpOiBNZXRhb2JqZWN0RGF0YU1vZGVsIHwgbnVsbCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkTW8gPSB0aGlzLm1vRGF0YUxpc3QuZmluZCgobW8pID0+IG1vLiRJc0NoZWNrZWQpO1xuICAgICAgICBpZiAoIXNlbGVjdGVkTW8pIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHNlbGVjdGVkTW8uanNvbiA9IHNlbGVjdGVkTW87XG4gICAgICAgIHJldHVybiBzZWxlY3RlZE1vO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgcmVmcmVzaENvbnRleHRNb0RhdGFMaXN0KG1vRGF0YUxpc3QpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250ZXh0LmZpcmVFdmVudCgnUmVmcmVzaENvbnRleHRNb0RhdGFMaXN0JywgbW9EYXRhTGlzdCk7XG4gICAgfVxufVxuIl19
230
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2Fic3RyYWN0LWNsYXNzZXMvcmVwb3J0LWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILEtBQUssRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFJTix1QkFBdUIsRUFDMUIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTFFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7Ozs7QUF3QnZDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxhQUFhO0lBc0RsRCxZQUFzQixjQUE2QixFQUFZLGVBQStCO1FBQzFGLEtBQUssRUFBRSxDQUFDO1FBRFUsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFBWSxvQkFBZSxHQUFmLGVBQWUsQ0FBZ0I7UUEvQ3BGLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBQ3hDLG1CQUFjLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQUV0RCx1QkFBa0IsR0FBRztZQUNqQixjQUFjLEVBQUUsRUFBRTtZQUNsQixlQUFlLEVBQUUsS0FBSztZQUN0QixlQUFlLEVBQUUsRUFBRTtZQUNuQixNQUFNLEVBQUUsSUFBSTtTQUNmLENBQUM7UUFLRixpQkFBWSxHQUF5RSxJQUFJLENBQUM7UUE0QmhGLDBCQUFxQixHQUFHLElBQUksZUFB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a0JBQWtCO29CQUM1QixRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7aUlBRVksT0FBTztzQkFBZixLQUFLO2dCQUlHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBJbnB1dCxcbiAgICBDb21wb25lbnQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIE91dHB1dCxcbiAgICBPbkluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBtYXAsIHBsdWNrLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgR2V0QWxsQ29sdW1uc1NvcnRlZCwgZ2V0VW5pcXVlSWQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgUG9ydGFsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3BvcnRhbC5zZXJ2aWNlJztcbmltcG9ydCB7IFVsdk1haW5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdWx2bWFpbi5zZXJ2aWNlJztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9iYXJzYS1hcGknO1xuaW1wb3J0IHtcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxuICAgIEdyaWRTZXR0aW5nLFxuICAgIENvbFNldHRpbmcsXG4gICAgUmVwb3J0Vmlld0NvbHVtbixcbiAgICBTb3J0U2V0dGluZyxcbiAgICBNZW51SXRlbSxcbiAgICBQYWdpbmdTZXR0aW5nLFxuICAgIEFiYnJldmF0aW9uRGV2aWNlU2l6ZSxcbiAgICBjb2x1bW5zUmVzaXplZEV2ZW50QXJncyxcbiAgICBGb3JtU2V0dGluZ1xufSBmcm9tICcuL21vZGVscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVwb3J0U2V0dGluZyB7XG4gICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgIElkOiBzdHJpbmc7XG4gICAgRXh0cmE6IGFueTtcbn1cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYm5yYy1yZXBvcnQtYmFzZScsXG4gICAgdGVtcGxhdGU6ICcnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFJlcG9ydEJhc2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCgpIGNvbnRleHQ6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICBTZXR0aW5nOiBSZXBvcnRTZXR0aW5nO1xuICAgIH07XG4gICAgQElucHV0KCkgY3VycmVudFBhZ2U6IG51bWJlcjtcblxuICAgIEBPdXRwdXQoKSBwYWdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gICAgQE91dHB1dCgpIHBhZ2VTaXplQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBkZWZhdWx0R3JpZFNldHRpbmcgPSB7XG4gICAgICAgIENvbFNldHRpbmdMaXN0OiBbXSxcbiAgICAgICAgQXV0b1NpemVDb2x1bW5zOiBmYWxzZSxcbiAgICAgICAgU29ydFNldHRpbmdMaXN0OiBbXSxcbiAgICAgICAgSGlkZGVuOiB0cnVlXG4gICAgfTtcbiAgICBpdGVtU2VsZWN0b3I6IHN0cmluZztcbiAgICBhbGxDb2x1bW5zOiBSZXBvcnRWaWV3Q29sdW1uW107XG4gICAgaWQ6IHN0cmluZztcblxuICAgIHNvcnRTZXR0aW5nczogeyBJc0dyb3VwZWQ6IGJvb2xlYW47IE5hbWU6IHN0cmluZzsgU29ydERpcmVjdGlvbjogc3RyaW5nIH1bXSB8IG51bGwgPSBudWxsO1xuICAgIHBhcmFtZXRlcnM6IGFueTtcbiAgICBmaWVsZHM6IGFueTtcblxuICAgIHZpc2libGVDb2x1bW5zJDogT2JzZXJ2YWJsZTxSZXBvcnRWaWV3Q29sdW1uW10+O1xuICAgIHNlYXJjaFRlcm0kOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgbW9EYXRhTGlzdCQ6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbFtdPjtcbiAgICBncmlkU2V0dGluZyQ6IE9ic2VydmFibGU8R3JpZFNldHRpbmc+O1xuICAgIGdyb3VwYnkkOiBPYnNlcnZhYmxlPFNvcnRTZXR0aW5nW10+O1xuICAgIGFsbENoZWNrZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHBhZ2luZ1NldHRpbmckOiBPYnNlcnZhYmxlPFBhZ2luZ1NldHRpbmcgfCBudWxsPjtcbiAgICBkZXZpY2VTaXplJDogT2JzZXJ2YWJsZTxBYmJyZXZhdGlvbkRldmljZVNpemU+O1xuICAgIG1hc2skOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHRpdGxlJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGluRGlhbG9nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBpc011bHRpU2VsZWN0JDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBmdWxsc2NyZWVuJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBtZW51SXRlbXMkOiBPYnNlcnZhYmxlPE1lbnVJdGVtW10+O1xuICAgIHRvb2xiYXJCdXR0b25zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgdG9vbGJhckVuYWJsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgaGlkZVRvb2xiYXIkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHNlbGVjdGVkTW8kOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWwgfCB1bmRlZmluZWQ+O1xuICAgIGNvbmRpdGlvbmFsRm9ybWF0cyQ6IE9ic2VydmFibGU8YW55W10+O1xuICAgIG5ld0lubGluZUVkaXRNbyQ6IE9ic2VydmFibGU8TWV0YW9iamVjdERhdGFNb2RlbCB8IG51bGw+O1xuICAgIGNhcnRhYmxlVGVtcGxhdGVzJDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IEZvcm1TZXR0aW5nIH0gfCBudWxsPjtcbiAgICBjYXJ0YWJsZUNoaWxkc01vJDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IE1ldGFvYmplY3REYXRhTW9kZWwgfSB8IG51bGw+O1xuICAgIHNlbGVjdGVkQ291bnQkOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgICBwcm90ZWN0ZWQgX3Zpc2libGVDb2x1bW5zU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxSZXBvcnRWaWV3Q29sdW1uW10+KFtdKTtcbiAgICBwcm90ZWN0ZWQgc2VhcmNoVGVybVNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPignJyk7XG4gICAgcHJvdGVjdGVkIGdyaWRTZXR0aW5nU291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxHcmlkU2V0dGluZz4odGhpcy5kZWZhdWx0R3JpZFNldHRpbmcpO1xuICAgIHByb3RlY3RlZCBncm91cGJ5U291cmNlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTb3J0U2V0dGluZ1tdPihbXSk7XG4gICAgcHJpdmF0ZSBfYWxsQ2hlY2tlZFNvdXJjZSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLCBwcm90ZWN0ZWQgX3Vsdk1haW5TZXJ2aWNlOiBVbHZNYWluU2VydmljZSkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLnZpc2libGVDb2x1bW5zJCA9IHRoaXMuX3Zpc2libGVDb2x1bW5zU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLnNlYXJjaFRlcm0kID0gdGhpcy5zZWFyY2hUZXJtU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLmdyaWRTZXR0aW5nJCA9IHRoaXMuZ3JpZFNldHRpbmdTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG4gICAgICAgIHRoaXMuZ3JvdXBieSQgPSB0aGlzLmdyb3VwYnlTb3VyY2UuYXNPYnNlcnZhYmxlKCk7XG4gICAgICAgIHRoaXMuYWxsQ2hlY2tlZCQgPSB0aGlzLl9hbGxDaGVja2VkU291cmNlLmFzT2JzZXJ2YWJsZSgpO1xuICAgICAgICB0aGlzLmZpZWxkcyA9IHt9O1xuICAgICAgICB0aGlzLnRvb2xiYXJCdXR0b25zJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnRvb2xiYXJCdXR0b25zJDtcbiAgICB9XG4gICAgZ2V0IG1vRGF0YUxpc3QoKTogTWV0YW9iamVjdERhdGFNb2RlbFtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLm1vRGF0YUxpc3RTb3VyY2UuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuY29udGV4dC5yZW5kZXJlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuaW5EaWFsb2ckID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaW5EaWFsb2ckO1xuICAgICAgICB0aGlzLmlzTXVsdGlTZWxlY3QkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaXNNdWx0aVNlbGVjdCQ7XG4gICAgICAgIHRoaXMuZnVsbHNjcmVlbiQgPSB0aGlzLl91bHZNYWluU2VydmljZS5mdWxsc2NyZWVuJDtcbiAgICAgICAgdGhpcy5kZXZpY2VTaXplJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuZGV2aWNlU2l6ZSQ7XG4gICAgICAgIHRoaXMuaGlkZVRvb2xiYXIkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVRvb2xiYXIkO1xuICAgICAgICB0aGlzLm5ld0lubGluZUVkaXRNbyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5uZXdJbmxpbmVFZGl0TW8kO1xuICAgICAgICB0aGlzLmNvbmRpdGlvbmFsRm9ybWF0cyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5jb25kaXRpb25hbEZvcm1hdHMkO1xuICAgICAgICB0aGlzLmNhcnRhYmxlVGVtcGxhdGVzJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNhcnRhYmxlVGVtcGxhdGVzJDtcbiAgICAgICAgdGhpcy5jYXJ0YWJsZUNoaWxkc01vJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNhcnRhYmxlQ2hpbGRzTW8kO1xuICAgICAgICB0aGlzLnRpdGxlJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnRpdGxlJC5waXBlKHBsdWNrKCd0ZXh0JykpO1xuICAgICAgICB0aGlzLm1lbnVJdGVtcyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5tZW51SXRlbXMkO1xuICAgICAgICB0aGlzLnBhZ2luZ1NldHRpbmckID0gdGhpcy5fdWx2TWFpblNlcnZpY2UucGFnaW5nU2V0dGluZyQ7XG4gICAgICAgIHRoaXMudG9vbGJhckVuYWJsZSQgPSB0aGlzLl91bHZNYWluU2VydmljZS5lbmFibGUkO1xuICAgICAgICB0aGlzLm1hc2skID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uudml3ZXJNYXNrJC5waXBlKGRlYm91bmNlVGltZSgyMDApKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE1vJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLm1vRGF0YUxpc3QkLnBpcGUobWFwKChpdGVtcykgPT4gaXRlbXMuZmluZCgoYykgPT4gYy4kSXNDaGVja2VkKSkpO1xuICAgICAgICB0aGlzLm1vRGF0YUxpc3QkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UubW9EYXRhTGlzdCQucGlwZSh0YXAoKGl0ZW1zKSA9PiB0aGlzLl9zZXRBbGxDaGVja2VkKGl0ZW1zKSkpO1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ291bnQkID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2VsZWN0ZWRDb3VudCQ7XG5cbiAgICAgICAgdGhpcy5jb250ZXh0Lm9uKHtcbiAgICAgICAgICAgIE1vRGF0YUxpc3RDaGFuZ2VkOiB0aGlzLl9tb0RhdGFMaXN0Q2hhbmdlZC5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgR3JpZFNldHRpbmdDaGFuZ2VkOiB0aGlzLl9ncmlkU2V0dGluZ0NoYW5nZWQuYmluZCh0aGlzKVxuICAgICAgICB9KTtcbiAgICAgICAgLy8gaW4gZ2hlaXJlIGZhYWwgYm9vZCBjaG9uIG1vc2hrZWwgZWlqYWQgbWlrYXJkXG4gICAgICAgIC8vIHZhIGRhciB1bHYgZXZlbnQgYmFpYWQgcmFpc2Ugc2hhdmFkXG4gICAgICAgIC8vIGtlIGRhdGEgYW1hZGUgc2hvZGUgdmEgdWx2bWFpbnNlcnZpY2UgYW4gcmEgYmVnaXJhZC5nb3phcmVzaCBtb3J0YWJldFxuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5yZVNldE1vRGF0YUxpc3QodGhpcy5jb250ZXh0Lm1vRGF0YUxpc3QpO1xuXG4gICAgICAgIGxldCBncmlkU2V0dGluZyA9IHRoaXMuZGVmYXVsdEdyaWRTZXR0aW5nO1xuICAgICAgICBpZiAodGhpcy5jb250ZXh0LkdldEdyaWRTZXR0aW5nKSB7XG4gICAgICAgICAgICBncmlkU2V0dGluZyA9IHRoaXMuY29udGV4dC5HZXRHcmlkU2V0dGluZygpIHx8IHRoaXMuZGVmYXVsdEdyaWRTZXR0aW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fc2V0VmlzaWJsZUNvbHVtbnMoKTtcblxuICAgICAgICBncmlkU2V0dGluZy5Tb3J0U2V0dGluZ0xpc3QgfHw9IFtdO1xuICAgICAgICB0aGlzLmFsbENvbHVtbnMgPSB0aGlzLmNvbnRleHQuYWxsQ29sdW1ucyB8fCBbXTtcbiAgICAgICAgdGhpcy51cGRhdGVHcmlkU2V0dGluZyhncmlkU2V0dGluZywgZmFsc2UsIGZhbHNlKTtcbiAgICAgICAgdGhpcy5wYXJhbWV0ZXJzID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUoXG4gICAgICAgICAgICB0aGlzLmNvbnRleHQsXG4gICAgICAgICAgICAnU2V0dGluZy5DbGFzc05hbWVzLkN1c3RvbVVpLlBhcmFtZXRlcnMnLFxuICAgICAgICAgICAgbnVsbFxuICAgICAgICApO1xuICAgICAgICB0aGlzLmlkID0gZ2V0VW5pcXVlSWQoNCk7XG5cbiAgICAgICAgdGhpcy5pdGVtU2VsZWN0b3IgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmNvbnRleHQsICdTZXR0aW5nLkNsYXNzTmFtZXMuQ3VzdG9tVWlSb3cuU2VsZWN0b3InKTtcblxuICAgICAgICB0aGlzLnBhcmFtZXRlcnMgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmNvbnRleHQsICdTZXR0aW5nLkNsYXNzTmFtZXMuQ3VzdG9tVWkuUGFyYW1ldGVycycpO1xuICAgICAgICBjb25zdCBmaWVsZFNldHRpbmdzID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUodGhpcy5wYXJhbWV0ZXJzLCAnRmllbGRTZXR0aW5ncy5Nb0RhdGFMaXN0JywgW10pO1xuXG4gICAgICAgIGZpZWxkU2V0dGluZ3MuZm9yRWFjaCgoYykgPT4ge1xuICAgICAgICAgICAgdGhpcy5maWVsZHNbYy5Db21wb25lbnRQYXJhbWV0ZXIuJENhcHRpb25dID0gYy4kQ2FwdGlvbjtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcblxuICAgICAgICB0aGlzLmRldmljZVNpemUkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksXG4gICAgICAgICAgICAgICAgdGFwKChkZXZpY2VTaXplKSA9PiB0aGlzLl9kZXZpY2VTaXplQ2hhbmdlZChkZXZpY2VTaXplKSlcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS53aW5kb3dSZXNpemUkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fd2luZG93UmVzaXplZCgpKTtcbiAgICAgICAgdGhpcy5jb250ZXh0Py5maXJlRXZlbnQoJ2FmdGVycmVuZGVyJywgdGhpcyk7XG4gICAgfVxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLmNvbnRleHQudW4oJ01vRGF0YUxpc3RDaGFuZ2VkJywgdGhpcy5fbW9EYXRhTGlzdENoYW5nZWQpO1xuICAgICAgICB0aGlzLmNvbnRleHQudW4oJ0dyaWRTZXR0aW5nQ2hhbmdlZCcsIHRoaXMuX2dyaWRTZXR0aW5nQ2hhbmdlZCk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfZ3JpZFNldHRpbmdDaGFuZ2VkKHNldHRpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ncmlkU2V0dGluZ1NvdXJjZS5uZXh0KHNldHRpbmcpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX21vRGF0YUxpc3RDaGFuZ2VkKG1vRGF0YUxpc3QpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UucmVTZXRNb0RhdGFMaXN0KG1vRGF0YUxpc3QpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX3NldEFsbENoZWNrZWQoaXRlbXM6IE1ldGFvYmplY3REYXRhTW9kZWxbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9hbGxDaGVja2VkU291cmNlLm5leHQoIWl0ZW1zLnNvbWUoKGMpID0+ICFjLiRJc0NoZWNrZWQpKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2hhbmRsZUNvbHVtbnNSZXNpemVkKGU6IGNvbHVtbnNSZXNpemVkRXZlbnRBcmdzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGdyaWRTZXR0aW5nOiBHcmlkU2V0dGluZyA9IHRoaXMuZ3JpZFNldHRpbmdTb3VyY2UuZ2V0VmFsdWUoKTtcbiAgICAgICAgY29uc3QgeyBjb2x1bW5zLCByZXNpemVkIH0gPSBlO1xuICAgICAgICBjb25zdCBjb2xMaXN0OiBDb2xTZXR0aW5nW10gPSBncmlkU2V0dGluZy5Db2xTZXR0aW5nTGlzdDtcbiAgICAgICAgcmVzaXplZC5mb3JFYWNoKChjb2x1bW4xKSA9PiB7XG4gICAgICAgICAgICBjb25zdCByZXNpemVkQ29sdW1uID0gY29sdW1ucy5maW5kKChjKSA9PiBjLk5hbWUgPT09IGNvbHVtbjEubmFtZSk7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW4gPSBjb2xMaXN0LmZpbmQoKGMpID0+IGMuTmFtZSA9PT0gcmVzaXplZENvbHVtbj8uTmFtZSk7XG4gICAgICAgICAgICBpZiAoY29sdW1uKSB7XG4gICAgICAgICAgICAgICAgY29sdW1uLldpZHRoID0gY29sdW1uMS53aWR0aDtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAocmVzaXplZENvbHVtbikge1xuICAgICAgICAgICAgICAgIGNvbExpc3QucHVzaCh7IElzSGlkZGVuOiByZXNpemVkQ29sdW1uLkhpZGRlbiwgTmFtZTogcmVzaXplZENvbHVtbi5OYW1lLCBXaWR0aDogY29sdW1uMS53aWR0aCB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudXBkYXRlR3JpZFNldHRpbmcoZ3JpZFNldHRpbmcsIGZhbHNlKTtcbiAgICAgICAgdGhpcy5fc2V0VmlzaWJsZUNvbHVtbnMoKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9zZXRWaXNpYmxlQ29sdW1ucygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sdW1ucyA9IEdldEFsbENvbHVtbnNTb3J0ZWQodGhpcy5jb250ZXh0KTtcbiAgICAgICAgdGhpcy5fdmlzaWJsZUNvbHVtbnNTb3VyY2UubmV4dChjb2x1bW5zLmZpbHRlcigoYykgPT4gIWMuSGlkZGVuKSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBhcHBseUdyb3VwYnkoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNvcnRMaXN0OiBTb3J0U2V0dGluZ1tdID0gQmFyc2FBcGkuQ29tbW9uLlV0aWwuVHJ5R2V0VmFsdWUoXG4gICAgICAgICAgICB0aGlzLmNvbnRleHQsXG4gICAgICAgICAgICAnU2V0dGluZy5WaWV3LkdyaWRTZXR0aW5nLlNvcnRTZXR0aW5nTGlzdCcsXG4gICAgICAgICAgICBbXVxuICAgICAgICApO1xuICAgICAgICB0aGlzLmdyb3VwYnlTb3VyY2UubmV4dChzb3J0TGlzdC5maWx0ZXIoKGMpID0+IGMuSXNHcm91cGVkKSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfcmFpc2VSb3dDbGljayhpbmRleCwgbW8pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250ZXh0Py5maXJlRXZlbnQoJ3Jvd2RibGNsaWNrJywgdGhpcy5jb250ZXh0LCBpbmRleCwgbW8pO1xuICAgIH1cbiAgICAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuICAgIHByb3RlY3RlZCBfZGV2aWNlU2l6ZUNoYW5nZWQoXzogc3RyaW5nKTogdm9pZCB7fVxuICAgIHByb3RlY3RlZCBfd2luZG93UmVzaXplZCgpOiB2b2lkIHt9XG5cbiAgICBwcm90ZWN0ZWQgX29wZW5NbyhtbywgaSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yYWlzZVJvd0NsaWNrKGksIG1vKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlR3JpZFNldHRpbmcoc2V0dGluZywgaXNTb3J0ID0gZmFsc2UsIHJhaXNlRXZlbnQgPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIGlmICghc2V0dGluZykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29udGV4dC5TZXR0aW5nLlZpZXcuR3JpZFNldHRpbmcgPSBzZXR0aW5nO1xuICAgICAgICB0aGlzLmdyaWRTZXR0aW5nU291cmNlLm5leHQoc2V0dGluZyk7XG4gICAgICAgIHRoaXMuYXBwbHlHcm91cGJ5KCk7XG4gICAgICAgIGlmIChpc1NvcnQpIHtcbiAgICAgICAgICAgIHNldHRpbmcuRXZlbnQgPSAnU29ydENoYW5nZSc7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBzZXR0aW5nLkV2ZW50ID0gJyc7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGV2aWNlU2l6ZUNoYW5nZWQodGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplKTtcbiAgICAgICAgaWYgKHJhaXNlRXZlbnQpIHtcbiAgICAgICAgICAgIHRoaXMuY29udGV4dC5maXJlRXZlbnQoJ1VzZXJTZXR0aW5nQ2hhbmdlJywgdGhpcy5jb250ZXh0LCBzZXR0aW5nKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcm90ZWN0ZWQgX3VsdkNvbW1hbmRDbGlja2VkKG1vLCBpbmRleCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZW1vdmVDaGVja2VkQWxsKCk7XG4gICAgICAgIHRoaXMuX3NlbGVjdChtbywgaW5kZXgpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX2NoZWNrZWRBbGwoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG1vRGF0YUxpc3QgPSB0aGlzLm1vRGF0YUxpc3Q7XG4gICAgICAgIG1vRGF0YUxpc3QuZm9yRWFjaCgobW8pID0+IChtby4kSXNDaGVja2VkID0gdHJ1ZSkpO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5yZVNldE1vRGF0YUxpc3QoKTtcbiAgICAgICAgdGhpcy5jb250ZXh0LmZpcmVFdmVudCgncm93U2VsZWN0QWxsJywgdGhpcy5jb250ZXh0KTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9yZW1vdmVDaGVja2VkQWxsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kZXNlbGN0QWxsKCk7XG4gICAgICAgIC8vIHRoaXMuY29udGV4dC5maXJlRXZlbnQoJ3Jvd0Rlc2VsZWN0QWxsJywgdGhpcy5jb250ZXh0KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2Rlc2VsY3RBbGwoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG1vRGF0YUxpc3QgPSB0aGlzLm1vRGF0YUxpc3Q7XG4gICAgICAgIG1vRGF0YUxpc3QuZm9yRWFjaCgobW8pID0+IChtby4kSXNDaGVja2VkID0gZmFsc2UpKTtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UucmVTZXRNb0RhdGFMaXN0KCk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfZGVzZWxlY3QobW8sIGluZGV4KTogTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgICAgIG1vLiRJc0NoZWNrZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UucmVTZXRNb0RhdGFMaXN0KCk7XG4gICAgICAgIHRoaXMuY29udGV4dC5maXJlRXZlbnQoJ3Jvd2Rlc2VsZWN0JywgdGhpcy5jb250ZXh0LCBpbmRleCwgbW8pO1xuICAgICAgICByZXR1cm4gbW87XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIF9zZWxlY3QobW8sIGluZGV4KTogTWV0YW9iamVjdERhdGFNb2RlbCB7XG4gICAgICAgIC8vICAgIHRoaXMuX2Rlc2VsY3RBbGwoKTtcbiAgICAgICAgbW8uJElzQ2hlY2tlZCA9IHRydWU7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnJlU2V0TW9EYXRhTGlzdCgpO1xuICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdyb3dzZWxlY3QnLCB0aGlzLmNvbnRleHQsIGluZGV4LCBtbyk7XG4gICAgICAgIHJldHVybiBtbztcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2RvQ2hlY2tlZEFsbChjaGVja2VkKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGVja2VkKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGVja2VkQWxsKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9yZW1vdmVDaGVja2VkQWxsKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2dldFNlbGVjdGVkKCk6IE1ldGFvYmplY3REYXRhTW9kZWwgfCBudWxsIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRNbyA9IHRoaXMubW9EYXRhTGlzdC5maW5kKChtbykgPT4gbW8uJElzQ2hlY2tlZCk7XG4gICAgICAgIGlmICghc2VsZWN0ZWRNbykge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgc2VsZWN0ZWRNby5qc29uID0gc2VsZWN0ZWRNbztcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkTW87XG4gICAgfVxuICAgIHByb3RlY3RlZCByZWZyZXNoQ29udGV4dE1vRGF0YUxpc3QobW9EYXRhTGlzdCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdSZWZyZXNoQ29udGV4dE1vRGF0YUxpc3QnLCBtb0RhdGFMaXN0KTtcbiAgICB9XG59XG4iXX0=
@@ -24,7 +24,7 @@ import { EmptyPageComponent } from './empty-page/empty-page.component';
24
24
  import { BarsaApi } from './abstract-classes/barsa-api';
25
25
  import { FormPageComponent } from './abstract-classes/form-page.component';
26
26
  import { BreadcrumbService, UploadService, ApiService, LogService, BarsaDialogService, PortalService, UiService, LayoutService, DynamicComponentService, NetworkStatusService, AudioRecordingService, VideoRecordingService, PromptUpdateService, BarsaStorageService, LocalStorageService, IndexedDbService, NotificationService, ServiceWorkerNotificationService, ServiceWorkerCommuncationService } from './services';
27
- import { DynamicCommandDirective, ItemsRendererDirective, NumbersOnlyInputDirective, PlaceHolderDirective, RenderUlvPaginDirective, ImageLazyDirective, UntilInViewDirective, IntersectionObserverDirective, EllipsifyDirective, TableResizerDirective, ColumnResizerDirective, AttrRtlDirective, RenderUlvViewerDirective, UlvCommandDirective, WorfkflowwChoiceCommandDirective, CopyDirective, EllapsisTextDirective, FillEmptySpaceDirective } from './directives';
27
+ import { DynamicCommandDirective, ItemsRendererDirective, NumbersOnlyInputDirective, PlaceHolderDirective, RenderUlvPaginDirective, ImageLazyDirective, UntilInViewDirective, IntersectionObserverDirective, EllipsifyDirective, TableResizerDirective, ColumnResizerDirective, AttrRtlDirective, RenderUlvViewerDirective, UlvCommandDirective, WorfkflowwChoiceCommandDirective, CopyDirective, EllapsisTextDirective, FillEmptySpaceDirective, FormCloseDirective, MobileDirective } from './directives';
28
28
  import { NumeralPipe, CanUploadFilePipe, RemoveNewlinePipe, ConvertToStylePipe, FilterPipe, FilterTabPipe, FilterStringPipe, FioriIconPipe, SortPipe, GroupByPipe, MultipleGroupByPipe, MoValuePipe, MoReportValuePipe, HeaderFacetValuePipe, PictureFieldSourcePipe, TlbButtonsPipe, SeperatorFixPipe, MoReportValueConcatPipe, ContextMenuPipe, BbbTranslatePipe, BarsaIconDictPipe, FileInfoCountPipe, ControlUiPipe, VisibleValuePipe, DateTimeToCaptionPipe, FilterToolbarControlPipe, ListCountPipe, TotalSummaryPipe, MergeFieldsToColumnsPipe, FindColumnByDbNamePipe, FilterColumnsByDetailsPipe, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, ReversePipe, ColumnCustomUiPipe, SanitizeTextPipe, ColumnCustomComponentPipe, ColumnIconPipe, ColumnValuePipe } from './pipes';
29
29
  import { BarsaSapUiFormPageModule } from './form-page-routing';
30
30
  import * as i0 from "@angular/core";
@@ -68,7 +68,9 @@ const directives = [
68
68
  AttrRtlDirective,
69
69
  CopyDirective,
70
70
  EllapsisTextDirective,
71
- FillEmptySpaceDirective
71
+ FillEmptySpaceDirective,
72
+ FormCloseDirective,
73
+ MobileDirective
72
74
  ];
73
75
  const pipes = [
74
76
  NumeralPipe,
@@ -286,7 +288,9 @@ BarsaNovinRayCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
286
288
  AttrRtlDirective,
287
289
  CopyDirective,
288
290
  EllapsisTextDirective,
289
- FillEmptySpaceDirective], imports: [CommonModule, HttpClientModule, BarsaNovinRayCoreRoutingModule, BarsaSapUiFormPageModule], exports: [FormComponent,
291
+ FillEmptySpaceDirective,
292
+ FormCloseDirective,
293
+ MobileDirective], imports: [CommonModule, HttpClientModule, BarsaNovinRayCoreRoutingModule, BarsaSapUiFormPageModule], exports: [FormComponent,
290
294
  FieldUiComponent,
291
295
  NotFoundComponent,
292
296
  RootPageComponent,
@@ -359,7 +363,9 @@ BarsaNovinRayCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
359
363
  AttrRtlDirective,
360
364
  CopyDirective,
361
365
  EllapsisTextDirective,
362
- FillEmptySpaceDirective] });
366
+ FillEmptySpaceDirective,
367
+ FormCloseDirective,
368
+ MobileDirective] });
363
369
  BarsaNovinRayCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaNovinRayCoreModule, imports: [CommonModule, HttpClientModule, BarsaNovinRayCoreRoutingModule, BarsaSapUiFormPageModule] });
364
370
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: BarsaNovinRayCoreModule, decorators: [{
365
371
  type: NgModule,
@@ -370,4 +376,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
370
376
  schemas: [NO_ERRORS_SCHEMA]
371
377
  }]
372
378
  }], ctorParameters: function () { return [{ type: i1.DynamicComponentService }, { type: i0.ComponentFactoryResolver }]; } });
373
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsb0JBQW9CLEVBQ3BCLG9CQUFvQixFQUNwQiwrQkFBK0IsRUFDL0Isc0JBQXNCLEVBQ3pCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxF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QUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDakQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBUFBfSU5JVElBTElaRVIsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIEVycm9ySGFuZGxlcixcbiAgICBNb2R1bGVXaXRoUHJvdmlkZXJzLFxuICAgIE5nTW9kdWxlLFxuICAgIE5PX0VSUk9SU19TQ0hFTUFcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRVaUNvbXBvbmVudCB9IGZyb20gJy4vZmllbGQtdWkvZmllbGQtdWkuY29tcG9uZW50JztcblxuaW1wb3J0IHsgUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtY29udGFpbmVyL3JlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFuY2hvclNjcm9sbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hbmNob3Itc2Nyb2xsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2JhcnNhLW5vdmluLXJheS1jb3JlLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IE1vZGFsUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtcm9vdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybU5ld0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1uZXcvZm9ybS1uZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFJvb3RQb3J0YWxDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcG9ydGFsL3Jvb3QtcG9ydGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICcuL2F1dGgtZ3VhcmQnO1xuXG5pbXBvcnQge1xuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudFxufSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50JztcbmltcG9ydCB7IFJlZGlyZWN0SG9tZUd1YXJkIH0gZnJvbSAnLi9yZWRpcmVjdC1ob21lLWd1YXJkJztcbmltcG9ydCB7IE5vdEZvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9ub3QtZm91bmQvbm90LWZvdW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb290UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcm9vdC1wYWdlL3Jvb3QtcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFzZU1vZHVsZSB9IGZyb20gJy4vYmFzZS5tb2R1bGUnO1xuaW1wb3J0IHsgUG9ydGFsUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcG9ydGFsLXBhZ2UvcG9ydGFsLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbEVycm9ySGFuZGxlciB9IGZyb20gJy4vZ2xvYmFsLWVycm9yLWhhbmRsZXInO1xuXG5pbXBvcnQgeyBSZWRpcmVjdFJlcG9ydE5hdmlnYXRvckNvbW1hbmRDb21wb25lbnQgfSBmcm9tICcuL3JlZGlyZWN0LXJlcG9ydC1uYXZpZ2F0b3ItY29tbWFuZC9yZWRpcmVjdC1yZXBvcnQtbmF2aWdhdG9yLWNvbW1hbmQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5UGFnZVdpdGhSb3V0ZXJBbmRSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQvZW1wdHktcGFnZS13aXRoLXJvdXRlci1hbmQtcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlL2VtcHR5LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzL2JhcnNhLWFwaSc7XG5pbXBvcnQgeyBGb3JtUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vYWJzdHJhY3QtY2xhc3Nlcy9mb3JtLXBhZ2UuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgICBCcmVhZGNydW1iU2VydmljZSxcbiAgICBVcGxvYWRTZXJ2aWNlLFxuICAgIEFwaVNlcnZpY2UsXG4gICAgTG9nU2VydmljZSxcbiAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBVaVNlcnZpY2UsXG4gICAgTGF5b3V0U2VydmljZSxcbiAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcbiAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICBBdWRpb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgVmlkZW9SZWNvcmRpbmdTZXJ2aWNlLFxuICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxuICAgIEluZGV4ZWREYlNlcnZpY2UsXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZVxufSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7XG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXG4gICAgSXRlbXNSZW5kZXJlckRpcmVjdGl2ZSxcbiAgICBOdW1iZXJzT25seUlucHV0RGlyZWN0aXZlLFxuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxuICAgIFJlbmRlclVsdlBhZ2luRGlyZWN0aXZlLFxuICAgIEltYWdlTGF6eURpcmVjdGl2ZSxcbiAgICBVbnRpbEluVmlld0RpcmVjdGl2ZSxcbiAgICBJbnRlcnNlY3Rpb25PYnNlcnZlckRpcmVjdGl2ZSxcbiAgICBFbGxpcHNpZnlEaXJlY3RpdmUsXG4gICAgVGFibGVSZXNpemVyRGlyZWN0aXZlLFxuICAgIENvbHVtblJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgQXR0clJ0bERpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXG4gICAgVWx2Q29tbWFuZERpcmVjdGl2ZSxcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBDb3B5RGlyZWN0aXZlLFxuICAgIEVsbGFwc2lzVGV4dERpcmVjdGl2ZSxcbiAgICBGaWxsRW1wdHlTcGFjZURpcmVjdGl2ZVxufSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtcbiAgICBOdW1lcmFsUGlwZSxcbiAgICBDYW5VcGxvYWRGaWxlUGlwZSxcbiAgICBSZW1vdmVOZXdsaW5lUGlwZSxcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBGaWx0ZXJUYWJQaXBlLFxuICAgIEZpbHRlclN0cmluZ1BpcGUsXG4gICAgRmlvcmlJY29uUGlwZSxcbiAgICBTb3J0UGlwZSxcbiAgICBHcm91cEJ5UGlwZSxcbiAgICBNdWx0aXBsZUdyb3VwQnlQaXBlLFxuICAgIE1vVmFsdWVQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxuICAgIEhlYWRlckZhY2V0VmFsdWVQaXBlLFxuICAgIFBpY3R1cmVGaWVsZFNvdXJjZVBpcGUsXG4gICAgVGxiQnV0dG9uc1BpcGUsXG4gICAgU2VwZXJhdG9yRml4UGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlQ29uY2F0UGlwZSxcbiAgICBDb250ZXh0TWVudVBpcGUsXG4gICAgQmJiVHJhbnNsYXRlUGlwZSxcbiAgICBCYXJzYUljb25EaWN0UGlwZSxcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcbiAgICBDb250cm9sVWlQaXBlLFxuICAgIFZpc2libGVWYWx1ZVBpcGUsXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxuICAgIEZpbHRlclRvb2xiYXJDb250cm9sUGlwZSxcbiAgICBMaXN0Q291bnRQaXBlLFxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXG4gICAgTWVyZ2VGaWVsZHNUb0NvbHVtbnNQaXBlLFxuICAgIEZpbmRDb2x1bW5CeURiTmFtZVBpcGUsXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXG4gICAgTW9JbmZvVWx2TW9MaXN0UGlwZSxcbiAgICBNb0luZm9VbHZQYWdpbmdQaXBlLFxuICAgIFJldmVyc2VQaXBlLFxuICAgIENvbHVtbkN1c3RvbVVpUGlwZSxcbiAgICBTYW5pdGl6ZVRleHRQaXBlLFxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXG4gICAgQ29sdW1uSWNvblBpcGUsXG4gICAgQ29sdW1uVmFsdWVQaXBlXG59IGZyb20gJy4vcGlwZXMnO1xuaW1wb3J0IHsgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlIH0gZnJvbSAnLi9mb3JtLXBhZ2Utcm91dGluZyc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12YXJcbmRlY2xhcmUgdmFyIEJCQjogYW55O1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICAgIEZvcm1Db21wb25lbnQsXG4gICAgRmllbGRVaUNvbXBvbmVudCxcbiAgICBOb3RGb3VuZENvbXBvbmVudCxcbiAgICBSb290UGFnZUNvbXBvbmVudCxcbiAgICBSb290UG9ydGFsQ29tcG9uZW50LFxuICAgIFJlcG9ydENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBGb3JtTmV3Q29tcG9uZW50LFxuICAgIE1vZGFsUm9vdENvbXBvbmVudCxcbiAgICBQb3J0YWxQYWdlQ29tcG9uZW50LFxuICAgIFJlZGlyZWN0UmVwb3J0TmF2aWdhdG9yQ29tbWFuZENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VDb21wb25lbnQsXG4gICAgRm9ybVBhZ2VDb21wb25lbnRcbl07XG5jb25zdCBkaXJlY3RpdmVzID0gW1xuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxuICAgIE51bWJlcnNPbmx5SW5wdXREaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2Vmlld2VyRGlyZWN0aXZlLFxuICAgIFJlbmRlclVsdlBhZ2luRGlyZWN0aXZlLFxuICAgIEFuY2hvclNjcm9sbERpcmVjdGl2ZSxcbiAgICBJdGVtc1JlbmRlcmVyRGlyZWN0aXZlLFxuICAgIFVsdkNvbW1hbmREaXJlY3RpdmUsXG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXG4gICAgV29yZmtmbG93d0Nob2ljZUNvbW1hbmREaXJlY3RpdmUsXG4gICAgSW1hZ2VMYXp5RGlyZWN0aXZlLFxuICAgIFVudGlsSW5WaWV3RGlyZWN0aXZlLFxuICAgIEludGVyc2VjdGlvbk9ic2VydmVyRGlyZWN0aXZlLFxuICAgIEVsbGlwc2lmeURpcmVjdGl2ZSxcbiAgICBUYWJsZVJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgQ29sdW1uUmVzaXplckRpcmVjdGl2ZSxcbiAgICBBdHRyUnRsRGlyZWN0aXZlLFxuICAgIENvcHlEaXJlY3RpdmUsXG4gICAgRWxsYXBzaXNUZXh0RGlyZWN0aXZlLFxuICAgIEZpbGxFbXB0eVNwYWNlRGlyZWN0aXZlXG5dO1xuY29uc3QgcGlwZXMgPSBbXG4gICAgTnVtZXJhbFBpcGUsXG4gICAgQ2FuVXBsb2FkRmlsZVBpcGUsXG4gICAgUmVtb3ZlTmV3bGluZVBpcGUsXG4gICAgQ29udmVydFRvU3R5bGVQaXBlLFxuICAgIEZpbHRlclBpcGUsXG4gICAgRmlsdGVyVGFiUGlwZSxcbiAgICBGaWx0ZXJTdHJpbmdQaXBlLFxuICAgIEZpb3JpSWNvblBpcGUsXG4gICAgU29ydFBpcGUsXG4gICAgR3JvdXBCeVBpcGUsXG4gICAgTXVsdGlwbGVHcm91cEJ5UGlwZSxcbiAgICBNb1ZhbHVlUGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlUGlwZSxcbiAgICBIZWFkZXJGYWNldFZhbHVlUGlwZSxcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxuICAgIFRsYkJ1dHRvbnNQaXBlLFxuICAgIFNlcGVyYXRvckZpeFBpcGUsXG4gICAgTW9SZXBvcnRWYWx1ZUNvbmNhdFBpcGUsXG4gICAgQ29udGV4dE1lbnVQaXBlLFxuICAgIEJiYlRyYW5zbGF0ZVBpcGUsXG4gICAgQmFyc2FJY29uRGljdFBpcGUsXG4gICAgRmlsZUluZm9Db3VudFBpcGUsXG4gICAgQ29udHJvbFVpUGlwZSxcbiAgICBWaXNpYmxlVmFsdWVQaXBlLFxuICAgIERhdGVUaW1lVG9DYXB0aW9uUGlwZSxcbiAgICBGaWx0ZXJUb29sYmFyQ29udHJvbFBpcGUsXG4gICAgTGlzdENvdW50UGlwZSxcbiAgICBUb3RhbFN1bW1hcnlQaXBlLFxuICAgIE1lcmdlRmllbGRzVG9Db2x1bW5zUGlwZSxcbiAgICBGaW5kQ29sdW1uQnlEYk5hbWVQaXBlLFxuICAgIEZpbHRlckNvbHVtbnNCeURldGFpbHNQaXBlLFxuICAgIE1vSW5mb1Vsdk1vTGlzdFBpcGUsXG4gICAgTW9JbmZvVWx2UGFnaW5nUGlwZSxcbiAgICBSZXZlcnNlUGlwZSxcbiAgICBDb2x1bW5DdXN0b21VaVBpcGUsXG4gICAgU2FuaXRpemVUZXh0UGlwZSxcbiAgICBDb2x1bW5DdXN0b21Db21wb25lbnRQaXBlLFxuICAgIENvbHVtbkljb25QaXBlLFxuICAgIENvbHVtblZhbHVlUGlwZVxuXTtcbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEh0dHBDbGllbnRNb2R1bGUsIEJhcnNhTm92aW5SYXlDb3JlUm91dGluZ01vZHVsZSwgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIHNjaGVtYXM6IFtOT19FUlJPUlNfU0NIRU1BXVxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSBleHRlbmRzIEJhc2VNb2R1bGUge1xuICAgIHByb3RlY3RlZCBkeW5hbWljQ29tcG9uZW50cyA9IFsuLi5jb21wb25lbnRzXTtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZGNtOiBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICAgIHN1cGVyKGRjbSwgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCAnQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUnKTtcbiAgICB9XG4gICAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxCYXJzYU5vdmluUmF5Q29yZU1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgLi4ucGlwZXMsXG4gICAgICAgICAgICAgICAgVXBsb2FkU2VydmljZSxcbiAgICAgICAgICAgICAgICBBcGlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExvZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgQmFyc2FEaWFsb2dTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgVWlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExheW91dFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQXV0aEd1YXJkLFxuICAgICAgICAgICAgICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEF1ZGlvUmVjb3JkaW5nU2VydmljZSxcbiAgICAgICAgICAgICAgICBWaWRlb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgUmVkaXJlY3RIb21lR3VhcmQsXG4gICAgICAgICAgICAgICAgUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNlcnZpY2VXb3JrZXJOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExvY2FsU3RvcmFnZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgSW5kZXhlZERiU2VydmljZSxcbiAgICAgICAgICAgICAgICBCYmJUcmFuc2xhdGVQaXBlLFxuICAgICAgICAgICAgICAgIEJhcnNhU3RvcmFnZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgU2VydmljZVdvcmtlckNvbW11bmNhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBFcnJvckhhbmRsZXIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBHbG9iYWxFcnJvckhhbmRsZXJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAobm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuVWwuTm90aWZpY2F0aW9uTWFuYWdlci5vbih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvd1BvcHVwOiBub3RpZmljYXRpb25TZXJ2aWNlLmFkZE5vdGlmaWNhdGlvbi5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB1Ymxpc2hFdmVudDogbm90aWZpY2F0aW9uU2VydmljZS5oYW5kbGVUb3BpYy5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW05vdGlmaWNhdGlvblNlcnZpY2VdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6XG4gICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvbXB0VXBkYXRlU2VydmljZTogUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXJzYVN0b3JhZ2VTZXJ2aWNlOiBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3Q29tbXVuaWNhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2UuY2hlY2tGb3JVcGRhdGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXJzYVN0b3JhZ2VTZXJ2aWNlLmluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb24uaW5pdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW1Byb21wdFVwZGF0ZVNlcnZpY2UsIEJhcnNhU3RvcmFnZVNlcnZpY2UsIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlXSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAoKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5DdWx0dXJlID09PSAnZmEtSVInKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZldGNoKGAvTG9jYWxpemF0aW9uL1RyYW5zbGF0aW9uL2RhdGFfJHtCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmV9Lmpzb25gKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlcy5qc29uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChCQkIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCQkIgPSB7IC4uLkJhcnNhQXBpLkJCQiwgLi4ucmVzIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW10sXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsIHRpdGxlU2VydmljZTogVGl0bGUpID0+ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvcnRhbFNlcnZpY2UubG9hZFVzZXJQb3J0YWxTZXR0aW5nKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxTZXJ2aWNlLmxvYWRQb3J0YWxEYXRhU3luYygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBvcnRhbFNlcnZpY2UucG9ydGFsRGF0YT8uVGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZVNlcnZpY2Uuc2V0VGl0bGUocG9ydGFsU2VydmljZS5wb3J0YWxEYXRhPy5UaXRsZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc0Fub255bW91cyAmJiAhQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1NlcnZpY2VEZXNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2UubG9hZFN5c3RlbShCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLlBvcnRhbFN5c3RlbUlkKTsgLy8gbG9naW4gZm9ybSBuZWVkIGp1c3QgcG9ydGFsIHN5c3RlbVxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcG9ydGFsU2VydmljZS5sb2FkU3lzdGVtKCk7IC8vIGxvYWQgYWxsIHN5c3RlbXMgaWYgdXNlciBpcyBsb2dnZWQgaW5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW1BvcnRhbFNlcnZpY2UsIFRpdGxlXSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
379
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsb0JBQW9CLEVBQ3BCLG9CQUFvQixFQUNwQiwrQkFBK0IsRUFDL0Isc0JBQXNCLEVBQ3pCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxF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QUFHLFVBQVUsQ0FBQztvQkFDdEQsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFFLDhCQUE4QixFQUFFLHdCQUF3QixDQUFDO29CQUNuRyxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDakQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBUFBfSU5JVElBTElaRVIsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIEVycm9ySGFuZGxlcixcbiAgICBNb2R1bGVXaXRoUHJvdmlkZXJzLFxuICAgIE5nTW9kdWxlLFxuICAgIE5PX0VSUk9SU19TQ0hFTUFcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRVaUNvbXBvbmVudCB9IGZyb20gJy4vZmllbGQtdWkvZmllbGQtdWkuY29tcG9uZW50JztcblxuaW1wb3J0IHsgUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtY29udGFpbmVyL3JlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFuY2hvclNjcm9sbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hbmNob3Itc2Nyb2xsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2JhcnNhLW5vdmluLXJheS1jb3JlLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IE1vZGFsUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtcm9vdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybU5ld0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1uZXcvZm9ybS1uZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFJvb3RQb3J0YWxDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcG9ydGFsL3Jvb3QtcG9ydGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICcuL2F1dGgtZ3VhcmQnO1xuXG5pbXBvcnQge1xuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudFxufSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50JztcbmltcG9ydCB7IFJlZGlyZWN0SG9tZUd1YXJkIH0gZnJvbSAnLi9yZWRpcmVjdC1ob21lLWd1YXJkJztcbmltcG9ydCB7IE5vdEZvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9ub3QtZm91bmQvbm90LWZvdW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb290UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcm9vdC1wYWdlL3Jvb3QtcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFzZU1vZHVsZSB9IGZyb20gJy4vYmFzZS5tb2R1bGUnO1xuaW1wb3J0IHsgUG9ydGFsUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcG9ydGFsLXBhZ2UvcG9ydGFsLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbEVycm9ySGFuZGxlciB9IGZyb20gJy4vZ2xvYmFsLWVycm9yLWhhbmRsZXInO1xuXG5pbXBvcnQgeyBSZWRpcmVjdFJlcG9ydE5hdmlnYXRvckNvbW1hbmRDb21wb25lbnQgfSBmcm9tICcuL3JlZGlyZWN0LXJlcG9ydC1uYXZpZ2F0b3ItY29tbWFuZC9yZWRpcmVjdC1yZXBvcnQtbmF2aWdhdG9yLWNvbW1hbmQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5UGFnZVdpdGhSb3V0ZXJBbmRSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQvZW1wdHktcGFnZS13aXRoLXJvdXRlci1hbmQtcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlL2VtcHR5LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzL2JhcnNhLWFwaSc7XG5pbXBvcnQgeyBGb3JtUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vYWJzdHJhY3QtY2xhc3Nlcy9mb3JtLXBhZ2UuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgICBCcmVhZGNydW1iU2VydmljZSxcbiAgICBVcGxvYWRTZXJ2aWNlLFxuICAgIEFwaVNlcnZpY2UsXG4gICAgTG9nU2VydmljZSxcbiAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBVaVNlcnZpY2UsXG4gICAgTGF5b3V0U2VydmljZSxcbiAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcbiAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICBBdWRpb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgVmlkZW9SZWNvcmRpbmdTZXJ2aWNlLFxuICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxuICAgIEluZGV4ZWREYlNlcnZpY2UsXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZVxufSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7XG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXG4gICAgSXRlbXNSZW5kZXJlckRpcmVjdGl2ZSxcbiAgICBOdW1iZXJzT25seUlucHV0RGlyZWN0aXZlLFxuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxuICAgIFJlbmRlclVsdlBhZ2luRGlyZWN0aXZlLFxuICAgIEltYWdlTGF6eURpcmVjdGl2ZSxcbiAgICBVbnRpbEluVmlld0RpcmVjdGl2ZSxcbiAgICBJbnRlcnNlY3Rpb25PYnNlcnZlckRpcmVjdGl2ZSxcbiAgICBFbGxpcHNpZnlEaXJlY3RpdmUsXG4gICAgVGFibGVSZXNpemVyRGlyZWN0aXZlLFxuICAgIENvbHVtblJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgQXR0clJ0bERpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXG4gICAgVWx2Q29tbWFuZERpcmVjdGl2ZSxcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBDb3B5RGlyZWN0aXZlLFxuICAgIEVsbGFwc2lzVGV4dERpcmVjdGl2ZSxcbiAgICBGaWxsRW1wdHlTcGFjZURpcmVjdGl2ZSxcbiAgICBGb3JtQ2xvc2VEaXJlY3RpdmUsXG4gICAgTW9iaWxlRGlyZWN0aXZlXG59IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQge1xuICAgIE51bWVyYWxQaXBlLFxuICAgIENhblVwbG9hZEZpbGVQaXBlLFxuICAgIFJlbW92ZU5ld2xpbmVQaXBlLFxuICAgIENvbnZlcnRUb1N0eWxlUGlwZSxcbiAgICBGaWx0ZXJQaXBlLFxuICAgIEZpbHRlclRhYlBpcGUsXG4gICAgRmlsdGVyU3RyaW5nUGlwZSxcbiAgICBGaW9yaUljb25QaXBlLFxuICAgIFNvcnRQaXBlLFxuICAgIEdyb3VwQnlQaXBlLFxuICAgIE11bHRpcGxlR3JvdXBCeVBpcGUsXG4gICAgTW9WYWx1ZVBpcGUsXG4gICAgTW9SZXBvcnRWYWx1ZVBpcGUsXG4gICAgSGVhZGVyRmFjZXRWYWx1ZVBpcGUsXG4gICAgUGljdHVyZUZpZWxkU291cmNlUGlwZSxcbiAgICBUbGJCdXR0b25zUGlwZSxcbiAgICBTZXBlcmF0b3JGaXhQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVDb25jYXRQaXBlLFxuICAgIENvbnRleHRNZW51UGlwZSxcbiAgICBCYmJUcmFuc2xhdGVQaXBlLFxuICAgIEJhcnNhSWNvbkRpY3RQaXBlLFxuICAgIEZpbGVJbmZvQ291bnRQaXBlLFxuICAgIENvbnRyb2xVaVBpcGUsXG4gICAgVmlzaWJsZVZhbHVlUGlwZSxcbiAgICBEYXRlVGltZVRvQ2FwdGlvblBpcGUsXG4gICAgRmlsdGVyVG9vbGJhckNvbnRyb2xQaXBlLFxuICAgIExpc3RDb3VudFBpcGUsXG4gICAgVG90YWxTdW1tYXJ5UGlwZSxcbiAgICBNZXJnZUZpZWxkc1RvQ29sdW1uc1BpcGUsXG4gICAgRmluZENvbHVtbkJ5RGJOYW1lUGlwZSxcbiAgICBGaWx0ZXJDb2x1bW5zQnlEZXRhaWxzUGlwZSxcbiAgICBNb0luZm9VbHZNb0xpc3RQaXBlLFxuICAgIE1vSW5mb1VsdlBhZ2luZ1BpcGUsXG4gICAgUmV2ZXJzZVBpcGUsXG4gICAgQ29sdW1uQ3VzdG9tVWlQaXBlLFxuICAgIFNhbml0aXplVGV4dFBpcGUsXG4gICAgQ29sdW1uQ3VzdG9tQ29tcG9uZW50UGlwZSxcbiAgICBDb2x1bW5JY29uUGlwZSxcbiAgICBDb2x1bW5WYWx1ZVBpcGVcbn0gZnJvbSAnLi9waXBlcyc7XG5pbXBvcnQgeyBCYXJzYVNhcFVpRm9ybVBhZ2VNb2R1bGUgfSBmcm9tICcuL2Zvcm0tcGFnZS1yb3V0aW5nJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuZGVjbGFyZSB2YXIgQkJCOiBhbnk7XG5cbmNvbnN0IGNvbXBvbmVudHMgPSBbXG4gICAgRm9ybUNvbXBvbmVudCxcbiAgICBGaWVsZFVpQ29tcG9uZW50LFxuICAgIE5vdEZvdW5kQ29tcG9uZW50LFxuICAgIFJvb3RQYWdlQ29tcG9uZW50LFxuICAgIFJvb3RQb3J0YWxDb21wb25lbnQsXG4gICAgUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIEZvcm1OZXdDb21wb25lbnQsXG4gICAgTW9kYWxSb290Q29tcG9uZW50LFxuICAgIFBvcnRhbFBhZ2VDb21wb25lbnQsXG4gICAgUmVkaXJlY3RSZXBvcnROYXZpZ2F0b3JDb21tYW5kQ29tcG9uZW50LFxuICAgIEVtcHR5UGFnZVdpdGhSb3V0ZXJBbmRSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0l0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gICAgQmFzZUR5bmFtaWNDb21wb25lbnQsXG4gICAgRHluYW1pY0Zvcm1Ub29sYmFyaXRlbUNvbXBvbmVudCxcbiAgICBEeW5hbWljTGF5b3V0Q29tcG9uZW50LFxuICAgIEVtcHR5UGFnZUNvbXBvbmVudCxcbiAgICBGb3JtUGFnZUNvbXBvbmVudFxuXTtcbmNvbnN0IGRpcmVjdGl2ZXMgPSBbXG4gICAgUGxhY2VIb2xkZXJEaXJlY3RpdmUsXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2UGFnaW5EaXJlY3RpdmUsXG4gICAgQW5jaG9yU2Nyb2xsRGlyZWN0aXZlLFxuICAgIEl0ZW1zUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgVWx2Q29tbWFuZERpcmVjdGl2ZSxcbiAgICBEeW5hbWljQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXG4gICAgVW50aWxJblZpZXdEaXJlY3RpdmUsXG4gICAgSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEaXJlY3RpdmUsXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxuICAgIFRhYmxlUmVzaXplckRpcmVjdGl2ZSxcbiAgICBDb2x1bW5SZXNpemVyRGlyZWN0aXZlLFxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXG4gICAgQ29weURpcmVjdGl2ZSxcbiAgICBFbGxhcHNpc1RleHREaXJlY3RpdmUsXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXG4gICAgRm9ybUNsb3NlRGlyZWN0aXZlLFxuICAgIE1vYmlsZURpcmVjdGl2ZVxuXTtcbmNvbnN0IHBpcGVzID0gW1xuICAgIE51bWVyYWxQaXBlLFxuICAgIENhblVwbG9hZEZpbGVQaXBlLFxuICAgIFJlbW92ZU5ld2xpbmVQaXBlLFxuICAgIENvbnZlcnRUb1N0eWxlUGlwZSxcbiAgICBGaWx0ZXJQaXBlLFxuICAgIEZpbHRlclRhYlBpcGUsXG4gICAgRmlsdGVyU3RyaW5nUGlwZSxcbiAgICBGaW9yaUljb25QaXBlLFxuICAgIFNvcnRQaXBlLFxuICAgIEdyb3VwQnlQaXBlLFxuICAgIE11bHRpcGxlR3JvdXBCeVBpcGUsXG4gICAgTW9WYWx1ZVBpcGUsXG4gICAgTW9SZXBvcnRWYWx1ZVBpcGUsXG4gICAgSGVhZGVyRmFjZXRWYWx1ZVBpcGUsXG4gICAgUGljdHVyZUZpZWxkU291cmNlUGlwZSxcbiAgICBUbGJCdXR0b25zUGlwZSxcbiAgICBTZXBlcmF0b3JGaXhQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVDb25jYXRQaXBlLFxuICAgIENvbnRleHRNZW51UGlwZSxcbiAgICBCYmJUcmFuc2xhdGVQaXBlLFxuICAgIEJhcnNhSWNvbkRpY3RQaXBlLFxuICAgIEZpbGVJbmZvQ291bnRQaXBlLFxuICAgIENvbnRyb2xVaVBpcGUsXG4gICAgVmlzaWJsZVZhbHVlUGlwZSxcbiAgICBEYXRlVGltZVRvQ2FwdGlvblBpcGUsXG4gICAgRmlsdGVyVG9vbGJhckNvbnRyb2xQaXBlLFxuICAgIExpc3RDb3VudFBpcGUsXG4gICAgVG90YWxTdW1tYXJ5UGlwZSxcbiAgICBNZXJnZUZpZWxkc1RvQ29sdW1uc1BpcGUsXG4gICAgRmluZENvbHVtbkJ5RGJOYW1lUGlwZSxcbiAgICBGaWx0ZXJDb2x1bW5zQnlEZXRhaWxzUGlwZSxcbiAgICBNb0luZm9VbHZNb0xpc3RQaXBlLFxuICAgIE1vSW5mb1VsdlBhZ2luZ1BpcGUsXG4gICAgUmV2ZXJzZVBpcGUsXG4gICAgQ29sdW1uQ3VzdG9tVWlQaXBlLFxuICAgIFNhbml0aXplVGV4dFBpcGUsXG4gICAgQ29sdW1uQ3VzdG9tQ29tcG9uZW50UGlwZSxcbiAgICBDb2x1bW5JY29uUGlwZSxcbiAgICBDb2x1bW5WYWx1ZVBpcGVcbl07XG5ATmdNb2R1bGUoe1xuICAgIGRlY2xhcmF0aW9uczogWy4uLmNvbXBvbmVudHMsIC4uLnBpcGVzLCAuLi5kaXJlY3RpdmVzXSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBIdHRwQ2xpZW50TW9kdWxlLCBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUsIEJhcnNhU2FwVWlGb3JtUGFnZU1vZHVsZV0sXG4gICAgZXhwb3J0czogWy4uLmNvbXBvbmVudHMsIC4uLnBpcGVzLCAuLi5kaXJlY3RpdmVzXSxcbiAgICBzY2hlbWFzOiBbTk9fRVJST1JTX1NDSEVNQV1cbn0pXG5leHBvcnQgY2xhc3MgQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUgZXh0ZW5kcyBCYXNlTW9kdWxlIHtcbiAgICBwcm90ZWN0ZWQgZHluYW1pY0NvbXBvbmVudHMgPSBbLi4uY29tcG9uZW50c107XG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGRjbTogRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsIHByb3RlY3RlZCBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXI6IENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcikge1xuICAgICAgICBzdXBlcihkY20sIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgJ0JhcnNhTm92aW5SYXlDb3JlTW9kdWxlJyk7XG4gICAgfVxuICAgIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QmFyc2FOb3ZpblJheUNvcmVNb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSxcbiAgICAgICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgICAgICAgIC4uLnBpcGVzLFxuICAgICAgICAgICAgICAgIFVwbG9hZFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQXBpU2VydmljZSxcbiAgICAgICAgICAgICAgICBMb2dTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEJhcnNhRGlhbG9nU2VydmljZSxcbiAgICAgICAgICAgICAgICBQb3J0YWxTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFVpU2VydmljZSxcbiAgICAgICAgICAgICAgICBMYXlvdXRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEJyZWFkY3J1bWJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEF1dGhHdWFyZCxcbiAgICAgICAgICAgICAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICAgICAgICAgICAgICBBdWRpb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgVmlkZW9SZWNvcmRpbmdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFJlZGlyZWN0SG9tZUd1YXJkLFxuICAgICAgICAgICAgICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICAgICAgICAgICAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICAgICAgICAgICAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEluZGV4ZWREYlNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQmJiVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgICAgICAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogRXJyb3JIYW5kbGVyLFxuICAgICAgICAgICAgICAgICAgICB1c2VDbGFzczogR2xvYmFsRXJyb3JIYW5kbGVyXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UpID0+ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEJhcnNhQXBpLlVsLk5vdGlmaWNhdGlvbk1hbmFnZXIub24oe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3dQb3B1cDogbm90aWZpY2F0aW9uU2VydmljZS5hZGROb3RpZmljYXRpb24uYmluZChub3RpZmljYXRpb25TZXJ2aWNlKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQdWJsaXNoRXZlbnQ6IG5vdGlmaWNhdGlvblNlcnZpY2UuaGFuZGxlVG9waWMuYmluZChub3RpZmljYXRpb25TZXJ2aWNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtOb3RpZmljYXRpb25TZXJ2aWNlXSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OlxuICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2U6IFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZTogQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9tcHRVcGRhdGVTZXJ2aWNlLmNoZWNrRm9yVXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZS5pbml0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dDb21tdW5pY2F0aW9uLmluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtQcm9tcHRVcGRhdGVTZXJ2aWNlLCBCYXJzYVN0b3JhZ2VTZXJ2aWNlLCBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZV0sXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKCkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZSA9PT0gJ2ZhLUlSJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmZXRjaChgL0xvY2FsaXphdGlvbi9UcmFuc2xhdGlvbi9kYXRhXyR7QmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5DdWx0dXJlfS5qc29uYClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKHJlcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoQkJCKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQkJCID0geyAuLi5CYXJzYUFwaS5CQkIsIC4uLnJlcyB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IChwb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLCB0aXRsZVNlcnZpY2U6IFRpdGxlKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxTZXJ2aWNlLmxvYWRVc2VyUG9ydGFsU2V0dGluZygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZS5sb2FkUG9ydGFsRGF0YVN5bmMoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGVTZXJ2aWNlLnNldFRpdGxlKHBvcnRhbFNlcnZpY2UucG9ydGFsRGF0YT8uVGl0bGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNBbm9ueW1vdXMgJiYgIUJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNTZXJ2aWNlRGVzaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwb3J0YWxTZXJ2aWNlLmxvYWRTeXN0ZW0oQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Qb3J0YWxTeXN0ZW1JZCk7IC8vIGxvZ2luIGZvcm0gbmVlZCBqdXN0IHBvcnRhbCBzeXN0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2UubG9hZFN5c3RlbSgpOyAvLyBsb2FkIGFsbCBzeXN0ZW1zIGlmIHVzZXIgaXMgbG9nZ2VkIGluXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtQb3J0YWxTZXJ2aWNlLCBUaXRsZV0sXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -0,0 +1,32 @@
1
+ import { Directive, Input } from '@angular/core';
2
+ import { BaseDirective } from './base.directive';
3
+ import * as i0 from "@angular/core";
4
+ export class FormCloseDirective extends BaseDirective {
5
+ constructor(_el) {
6
+ super(_el);
7
+ this._el = _el;
8
+ }
9
+ ngAfterViewInit() {
10
+ super.ngAfterViewInit();
11
+ if (!this.isMobile) {
12
+ return;
13
+ }
14
+ const formDom = this._el.nativeElement;
15
+ const titleContainerDom = formDom.querySelector('.fd-dynamic-page__title-container');
16
+ const closeButton = formDom.querySelector('button[title="Close"');
17
+ if (closeButton && titleContainerDom) {
18
+ titleContainerDom?.insertAdjacentElement('afterbegin', closeButton);
19
+ }
20
+ }
21
+ }
22
+ FormCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: FormCloseDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
23
+ FormCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: FormCloseDirective, selector: "[formClose]", inputs: { isMobile: "isMobile" }, usesInheritance: true, ngImport: i0 });
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: FormCloseDirective, decorators: [{
25
+ type: Directive,
26
+ args: [{
27
+ selector: '[formClose]'
28
+ }]
29
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { isMobile: [{
30
+ type: Input
31
+ }] } });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jbG9zZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvZm9ybS1jbG9zZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFLakQsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGFBQWE7SUFFakQsWUFBc0IsR0FBZTtRQUNqQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFETyxRQUFHLEdBQUgsR0FBRyxDQUFZO0lBRXJDLENBQUM7SUFDRCxlQUFlO1FBQ1gsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2hCLE9BQU87U0FDVjtRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBNEIsQ0FBQztRQUN0RCxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsbUNBQW1DLENBQUMsQ0FBQztRQUNyRixNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsYUFBYSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDbEUsSUFBSSxXQUFXLElBQUksaUJBQWlCLEVBQUU7WUFDbEMsaUJBQWlCLEVBQUUscUJBQXFCLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQ3ZFO0lBQ0wsQ0FBQzs7K0dBaEJRLGtCQUFrQjttR0FBbEIsa0JBQWtCOzJGQUFsQixrQkFBa0I7a0JBSDlCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGFBQWE7aUJBQzFCO2lHQUVZLFFBQVE7c0JBQWhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCYXNlRGlyZWN0aXZlIH0gZnJvbSAnLi9iYXNlLmRpcmVjdGl2ZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2Zvcm1DbG9zZV0nXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1DbG9zZURpcmVjdGl2ZSBleHRlbmRzIEJhc2VEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBASW5wdXQoKSBpc01vYmlsZTogYm9vbGVhbjtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2VsOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHN1cGVyKF9lbCk7XG4gICAgfVxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgICAgIGlmICghdGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGZvcm1Eb20gPSB0aGlzLl9lbC5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBjb25zdCB0aXRsZUNvbnRhaW5lckRvbSA9IGZvcm1Eb20ucXVlcnlTZWxlY3RvcignLmZkLWR5bmFtaWMtcGFnZV9fdGl0bGUtY29udGFpbmVyJyk7XG4gICAgICAgIGNvbnN0IGNsb3NlQnV0dG9uID0gZm9ybURvbS5xdWVyeVNlbGVjdG9yKCdidXR0b25bdGl0bGU9XCJDbG9zZVwiJyk7XG4gICAgICAgIGlmIChjbG9zZUJ1dHRvbiAmJiB0aXRsZUNvbnRhaW5lckRvbSkge1xuICAgICAgICAgICAgdGl0bGVDb250YWluZXJEb20/Lmluc2VydEFkamFjZW50RWxlbWVudCgnYWZ0ZXJiZWdpbicsIGNsb3NlQnV0dG9uKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -20,4 +20,6 @@ export * from './workflow-choice-command.directive';
20
20
  export * from './copy.directive';
21
21
  export * from './ellapsis-text.directive';
22
22
  export * from './fill-empty-space';
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYW5jaG9yLXNjcm9sbC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdHRyLXJ0bC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbHVtbi1yZXNpemVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtY29tbWFuZC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9lbGxpcHNpZnkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZmllbGQtYmluZGluZy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbWctbGF6eS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcnNlY3Rpb24tb2JzZXJ2ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaXRlbXMtcmVuZGVyZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbnVtYmVycy1vbmx5LWlucHV0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3BsYWNlSG9sZGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci11bHYtdmlld2VyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci11bHYtcGFnaW5nLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci11bHYtdmlld2VyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3RhYmxlLXJlc2l6ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdWx2LWNvbW1hbmQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vdW50aWwtaW52aWV3LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3dvcmtmbG93LWNob2ljZS1jb21tYW5kLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvcHkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZWxsYXBzaXMtdGV4dC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9maWxsLWVtcHR5LXNwYWNlJztcbiJdfQ==
23
+ export * from './form-close.directive';
24
+ export * from './mobile.directive';
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL2RpcmVjdGl2ZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsb0JBQW9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2FuY2hvci1zY3JvbGwuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYXR0ci1ydGwuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFzZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb2x1bW4tcmVzaXplci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9keW5hbWljLWNvbW1hbmQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZWxsaXBzaWZ5LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2ZpZWxkLWJpbmRpbmcuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaW1nLWxhenkuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vaW50ZXJzZWN0aW9uLW9ic2VydmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2l0ZW1zLXJlbmRlcmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL251bWJlcnMtb25seS1pbnB1dC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9wbGFjZUhvbGRlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZW5kZXItdWx2LXZpZXdlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZW5kZXItdWx2LXBhZ2luZy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9yZW5kZXItdWx2LXZpZXdlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi90YWJsZS1yZXNpemVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3Vsdi1jb21tYW5kLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3VudGlsLWludmlldy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi93b3JrZmxvdy1jaG9pY2UtY29tbWFuZC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9jb3B5LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2VsbGFwc2lzLXRleHQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZmlsbC1lbXB0eS1zcGFjZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tY2xvc2UuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbW9iaWxlLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -0,0 +1,29 @@
1
+ import { Directive } from '@angular/core';
2
+ import { BaseDirective } from './base.directive';
3
+ import { getDeviceIsMobile } from '../constants';
4
+ import * as i0 from "@angular/core";
5
+ export class MobileDirective extends BaseDirective {
6
+ constructor(_el, _renderer2) {
7
+ super(_el);
8
+ this._el = _el;
9
+ this._renderer2 = _renderer2;
10
+ }
11
+ ngOnInit() {
12
+ super.ngOnInit();
13
+ const isMobile = getDeviceIsMobile();
14
+ if (!isMobile) {
15
+ return;
16
+ }
17
+ const dom = this._el.nativeElement;
18
+ this._renderer2.addClass(dom, 'mobile');
19
+ }
20
+ }
21
+ MobileDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: MobileDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
22
+ MobileDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.7", type: MobileDirective, selector: "[mobile]", usesInheritance: true, ngImport: i0 });
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: MobileDirective, decorators: [{
24
+ type: Directive,
25
+ args: [{
26
+ selector: '[mobile]'
27
+ }]
28
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; } });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9iaWxlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLW5vdmluLXJheS1jb3JlL3NyYy9saWIvZGlyZWN0aXZlcy9tb2JpbGUuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBS2pELE1BQU0sT0FBTyxlQUFnQixTQUFRLGFBQWE7SUFDOUMsWUFBc0IsR0FBZSxFQUFVLFVBQXFCO1FBQ2hFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQURPLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFBVSxlQUFVLEdBQVYsVUFBVSxDQUFXO0lBRXBFLENBQUM7SUFDRCxRQUFRO1FBQ0osS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLE1BQU0sUUFBUSxHQUFHLGlCQUFpQixFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNYLE9BQU87U0FDVjtRQUNELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBNEIsQ0FBQztRQUNsRCxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7NEdBWlEsZUFBZTtnR0FBZixlQUFlOzJGQUFmLGVBQWU7a0JBSDNCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFVBQVU7aUJBQ3ZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBPbkluaXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmFzZURpcmVjdGl2ZSB9IGZyb20gJy4vYmFzZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgZ2V0RGV2aWNlSXNNb2JpbGUgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1ttb2JpbGVdJ1xufSlcbmV4cG9ydCBjbGFzcyBNb2JpbGVEaXJlY3RpdmUgZXh0ZW5kcyBCYXNlRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgX2VsOiBFbGVtZW50UmVmLCBwcml2YXRlIF9yZW5kZXJlcjI6IFJlbmRlcmVyMikge1xuICAgICAgICBzdXBlcihfZWwpO1xuICAgIH1cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgY29uc3QgaXNNb2JpbGUgPSBnZXREZXZpY2VJc01vYmlsZSgpO1xuICAgICAgICBpZiAoIWlzTW9iaWxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZG9tID0gdGhpcy5fZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIyLmFkZENsYXNzKGRvbSwgJ21vYmlsZScpO1xuICAgIH1cbn1cbiJdfQ==