barsa-novin-ray-core 1.0.338 → 1.0.339

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.
@@ -90,12 +90,6 @@ export class FormBaseComponent extends BaseComponent {
90
90
  this._onInView(e);
91
91
  });
92
92
  }
93
- _onInView(e) {
94
- if (this.isMobile) {
95
- this.formVisibilityStatus = e;
96
- this._cdr.detectChanges();
97
- }
98
- }
99
93
  ngOnDestroy() {
100
94
  super.ngOnDestroy();
101
95
  this._formIntersection.unsubscribe();
@@ -120,6 +114,12 @@ export class FormBaseComponent extends BaseComponent {
120
114
  const fieldUi = this.context._listFieldUi.find((c) => c.originalXtype === 'Ui.SearchCommandInfoUi');
121
115
  fieldUi.fireEvent(BarsaApi.Ul.FormPanelCtrlr.EventEnum.SearchClick, fieldUi);
122
116
  }
117
+ _onInView(e) {
118
+ if (this.isMobile) {
119
+ this.formVisibilityStatus = e;
120
+ this._cdr.detectChanges();
121
+ }
122
+ }
123
123
  _addDynamicFormStyles(cssStyles) {
124
124
  if (!cssStyles) {
125
125
  return;
@@ -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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Q0FBQyxDQUFDLENBQUM7U0FDekQ7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBQ1Msd0JBQXdCO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2QsT0FBTztTQUNWO1FBQ0QsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUNTLFlBQVk7UUFDbEIsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBNEIsQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUNPLGFBQWE7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvRyxDQUFDOzs4R0ExTVEsaUJBQWlCO2tHQUFqQixpQkFBaUIsa01BSGhCLEVBQUU7MkZBR0gsaUJBQWlCO2tCQUw3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs7MEJBc0RRLElBQUk7eUdBcERlLEVBQUU7c0JBQXpCLFdBQVc7dUJBQUMsU0FBUztnQkFDYixPQUFPO3NCQUFmLEtBQUs7Z0JBS0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgSW5wdXQsXG4gICAgQ29tcG9uZW50LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgT25Jbml0LFxuICAgIE9uRGVzdHJveSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBFbGVtZW50UmVmLFxuICAgIFNlbGYsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgSG9zdEJpbmRpbmdcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFrZVVudGlsLCBtZXJnZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgZ2V0RGV2aWNlSXNNb2JpbGUsIGdldFBhcmVudEhlaWdodCwgZ2V0VW5pcXVlSWQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRm9ybVBhbmVsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm0tcGFuZWwuc2VydmljZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSB9IGZyb20gJy4vYmFyc2EtYXBpJztcbmltcG9ydCB7XG4gICAgRm9ybVNldHRpbmcsXG4gICAgRm9ybVZpZXdTZXR0aW5nLFxuICAgIEZvcm1WaXNpYmlsaXR5U3RhdHVzLFxuICAgIElIZWFkZXJMYXlvdXQsXG4gICAgTGF5b3V0U2V0dGluZyxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsXG59IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEJyZWFkY3J1bWJTZXJ2aWNlLCBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ29udHJvbFVpUGlwZSB9IGZyb20gJy4uL3BpcGVzJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZnJvbUludGVyc2VjdGlvbk9ic2VydmVyIH0gZnJvbSAnLi4vZnJvbS1pbnRlcnNlY3Rpb24tb2JzZXJ2ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JucmMtZm9ybS1iYXNlJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUJhc2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5pZCcpIGlkID0gYGZvcm1fJHtnZXRVbmlxdWVJZCg0KX1gO1xuICAgIEBJbnB1dCgpIGNvbnRleHQ6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICBjb25maWc6IGFueTtcbiAgICAgICAgU2V0dGluZzogRm9ybVNldHRpbmc7XG4gICAgfTtcbiAgICBAT3V0cHV0KCkgZm9ybUNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIGxpc3RGaWVsZFVpOiBhbnk7XG4gICAgaXNXaXphcmQ6IGJvb2xlYW47XG4gICAgcGFyYW1ldGVyczogTWV0YW9iamVjdERhdGFNb2RlbDtcbiAgICBpc01vYmlsZTogYm9vbGVhbjtcblxuICAgIHRvb2xiYXJWaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBoaWRlQ2xvc2UkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGhpZGVUaXRsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgaGlkZVBpbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgdGl0bGUkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgdG9vbGJhckl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgd29ya2Zsb3dCdXR0b25zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgaGVhZGVyTGF5b3V0JDogT2JzZXJ2YWJsZTxJSGVhZGVyTGF5b3V0IHwgbnVsbD47XG4gICAgbGF5b3V0OTQkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgbGF5b3V0OTQ6IGFueTtcbiAgICBtYXhDb250ZW50V2lkdGgkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgZm9ybVdpZHRoJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGhlYWRlckRlc2NyaXB0aW9uJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBoZWFkZXJTdWJ0aXRsZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICBhdmF0YXIkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgd29ya2Zsb3dQYW5lbFVpJDogT2JzZXJ2YWJsZTxhbnk+O1xuICAgIHZpZXckOiBPYnNlcnZhYmxlPEZvcm1WaWV3U2V0dGluZz47XG4gICAgbW8kOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWwgfCBudWxsPjtcbiAgICBpc1NpbXBsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgZmllbGREaWN0JDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkPjtcbiAgICBtYXNrJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBpc1NlYXJjaFBhbmVsOiBib29sZWFuO1xuICAgIGlzTW9kYWw6IGJvb2xlYW47XG4gICAgaXNTdWJGb3JtOiBib29sZWFuO1xuICAgIG1vZGVyblRhYnMkOiBPYnNlcnZhYmxlPExheW91dFNldHRpbmdbXT47XG4gICAgaXNGb3JtUmVwb3J0OiBib29sZWFuO1xuICAgIGxhbmRzY2FwZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgc3RhbmRhbG9uZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF9zdHlsZTogSFRNTFN0eWxlRWxlbWVudDtcbiAgICBwcm90ZWN0ZWQgX3N0YW5kYWxvbmU6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfZm9ybUludGVyc2VjdGlvbjogYW55O1xuICAgIGZvcm1WaXNpYmlsaXR5U3RhdHVzOiBGb3JtVmlzaWJpbGl0eVN0YXR1cztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2JyZWFkY3J1bWJTZXJ2aWNlOiBCcmVhZGNydW1iU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX3JvdXRlcjogUm91dGVyLFxuICAgICAgICBwcm90ZWN0ZWQgX2VsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcm90ZWN0ZWQgX2NvbnRyb2xVaVBpcGU6IENvbnRyb2xVaVBpcGUsXG4gICAgICAgIEBTZWxmKCkgcHJvdGVjdGVkIF9mb3JtUGFuZWxTZXJ2aWNlOiBGb3JtUGFuZWxTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaXNTZWFyY2hQYW5lbCQuc3Vic2NyaWJlKChpc1NlYXJjaFBhbmVsKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzU2VhcmNoUGFuZWwgPSBpc1NlYXJjaFBhbmVsO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5oaWRlQ2xvc2UkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5oaWRlQ2xvc2UkO1xuICAgICAgICB0aGlzLmhpZGVUaXRsZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVUaXRsZSQ7XG4gICAgICAgIHRoaXMuaGlkZVBpbiQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVQaW4kO1xuICAgICAgICB0aGlzLnRvb2xiYXJWaXNpYmxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudG9vbGJhclZpc2libGUkO1xuICAgICAgICB0aGlzLnRpdGxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudGl0bGUkLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHRpdGxlKSA9PiAoIXRpdGxlID8gJycgOiBnZXREZXZpY2VJc01vYmlsZSgpID8gdGl0bGUuc3BsaXQoJzonKVswXSA6IHRpdGxlKSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy50b29sYmFySXRlbXMkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS50b29sYmFySXRlbXMkO1xuICAgICAgICB0aGlzLndvcmtmbG93QnV0dG9ucyQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLndvcmtmbG93QnV0dG9ucyQ7XG4gICAgICAgIHRoaXMuaGVhZGVyTGF5b3V0JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyTGF5b3V0JDtcbiAgICAgICAgdGhpcy5sYXlvdXQ5NCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmxheW91dCQ7XG4gICAgICAgIHRoaXMubWF4Q29udGVudFdpZHRoJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubWF4Q29udGVudFdpZHRoJDtcbiAgICAgICAgdGhpcy5mb3JtV2lkdGgkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5mb3JtV2lkdGgkO1xuICAgICAgICB0aGlzLmhlYWRlclN1YnRpdGxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyU3VidGl0bGUkO1xuICAgICAgICB0aGlzLmF2YXRhciQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmF2YXRhciQ7XG4gICAgICAgIHRoaXMud29ya2Zsb3dQYW5lbFVpJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2Uud29ya2Zsb3dQYW5lbFVpJDtcbiAgICAgICAgdGhpcy52aWV3JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudmlldyQ7XG4gICAgICAgIHRoaXMubW8kID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5tbyQ7XG4gICAgICAgIHRoaXMuZmllbGREaWN0JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZmllbGREaWN0JDtcbiAgICAgICAgdGhpcy5pc1NpbXBsZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmlzU2ltcGxlRm9ybSQ7XG4gICAgICAgIHRoaXMubWFzayQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLm1hc2skO1xuICAgICAgICB0aGlzLmhlYWRlckRlc2NyaXB0aW9uJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyRGVzY3JpcHRpb24kO1xuICAgICAgICB0aGlzLmhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyUmVtb3ZlQ29udGVudFBhZGRpbmckO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmNvbnRleHQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS52aWV3JC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMubGFuZHNjYXBlJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UubGFuZHNjYXBlJDtcbiAgICAgICAgdGhpcy5zdGFuZGFsb25lJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2Uuc3RhbmRhbG9uZSQ7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2Uuc3RhbmRhbG9uZSQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoYykgPT4gKHRoaXMuX3N0YW5kYWxvbmUgPSBjKSk7XG4gICAgfVxuICAgIGdldCBmb3JjZUNsb3NlJCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZm9yY2VDbG9zZSQ7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuY29udGV4dCA9IHRoaXMuY29udGV4dDtcbiAgICAgICAgdGhpcy5pc01vYmlsZSA9IGdldERldmljZUlzTW9iaWxlKCk7XG4gICAgICAgIHRoaXMubGlzdEZpZWxkVWkgPSB0aGlzLmNvbnRleHQuX2RpY3RGaWVsZFVpO1xuXG4gICAgICAgIHRoaXMuaXNNb2RhbCA9IHRoaXMuY29udGV4dC5TZXR0aW5nPy5Jc01vZGFsO1xuICAgICAgICB0aGlzLmlzU3ViRm9ybSA9IHRoaXMuY29udGV4dC5Jc1N1YkZvcm07XG4gICAgICAgIHRoaXMuaXNGb3JtUmVwb3J0ID0gdGhpcy5jb250ZXh0LklzRm9ybVJlcG9ydDtcbiAgICAgICAgdGhpcy5fc2V0UGFyYW10ZXJzKCk7XG4gICAgICAgIHRoaXMuX2FkZER5bmFtaWNGb3JtU3R5bGVzKHRoaXMucGFyYW1ldGVycz8uQ3NzU3R5bGVzKTtcbiAgICAgICAgdGhpcy5tb2Rlcm5UYWJzJCA9IHRoaXMubGF5b3V0OTQkLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGMpID0+IGMpLFxuICAgICAgICAgICAgbWFwKChsYXlvdXQ5NCkgPT4gKHRoaXMubGF5b3V0OTQgPSBsYXlvdXQ5NCkpLFxuICAgICAgICAgICAgLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAgICAgICAgIG1lcmdlKHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZ3JvdXBMYXlvdXQkKSxcbiAgICAgICAgICAgIG1hcCgoXykgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmxheW91dDk0Lml0ZW1zWzBdLnh0eXBlICE9PSAnTHkuTGF5b3V0VGFiUGFuZWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgdGFiczogTGF5b3V0U2V0dGluZ1tdID0gdGhpcy5sYXlvdXQ5NC5pdGVtc1swXS5pdGVtcztcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFicy5maWx0ZXIoKGMpID0+IGMuVmlzaWJsZSAhPT0gZmFsc2UpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9idGFpbkhlaWdodCgpO1xuICAgICAgICB9LCAwKTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS53aW5kb3dSZXNpemUkLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vYnRhaW5IZWlnaHQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2Zvcm1JbnRlcnNlY3Rpb24gPSBmcm9tSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoXG4gICAgICAgICAgICB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHJvb3Q6IG51bGwsXG4gICAgICAgICAgICAgICAgcm9vdE1hcmdpbjogJzBweCcsXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAwXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTAwLFxuICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX29uSW5WaWV3KGUpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfb25JblZpZXcoZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgdGhpcy5mb3JtVmlzaWJpbGl0eVN0YXR1cyA9IGU7XG4gICAgICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9mb3JtSW50ZXJzZWN0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9yZW1vdmVEeW5hbWljRm9ybVN0eWxlcygpO1xuICAgIH1cbiAgICBvbkNsb3NlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRleHQuZmlyZUV2ZW50KCdSZXF1ZXN0Rm9yQ2xvc2UnLCB0aGlzLmNvbnRleHQpO1xuICAgIH1cbiAgICBvblRvb2xiYXJDbGljayhidG4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS50b29sYmFyQ2xpY2soYnRuKTtcbiAgICB9XG4gICAgb25Xb3JrZmxvd0Nob2ljZUNsaWNrKHdmQ2hvaWNlKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2Uud2ZDaG9pY2Uod2ZDaG9pY2UpO1xuICAgIH1cbiAgICBmaWVsZENoYW5nZShmaWVsZE5hbWUsIHZhbHVlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGZpZWxkVWkgPSB0aGlzLmNvbnRleHQuX2xpc3RGaWVsZFVpLmZpbmQoKGMpID0+IGMuU2V0dGluZy5Db250cm9sTmFtZSA9PT0gZmllbGROYW1lKTtcbiAgICAgICAgZmllbGRVaS52YWx1ZSA9IHZhbHVlO1xuICAgICAgICBmaWVsZFVpLmZpcmVFdmVudCgnY2hhbmdlJywgZmllbGRVaSk7XG4gICAgfVxuICAgIHNlYXJjaENsaWNrKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBmaWVsZFVpID0gdGhpcy5jb250ZXh0Ll9saXN0RmllbGRVaS5maW5kKChjKSA9PiBjLm9yaWdpbmFsWHR5cGUgPT09ICdVaS5TZWFyY2hDb21tYW5kSW5mb1VpJyk7XG5cbiAgICAgICAgZmllbGRVaS5maXJlRXZlbnQoQmFyc2FBcGkuVWwuRm9ybVBhbmVsQ3RybHIuRXZlbnRFbnVtLlNlYXJjaENsaWNrLCBmaWVsZFVpKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9hZGREeW5hbWljRm9ybVN0eWxlcyhjc3NTdHlsZXM6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoIWNzc1N0eWxlcykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNzc1N0eWxlcyA9IGNzc1N0eWxlcy5yZXBsYWNlKC86cm9vdC9naSwgYCMke3RoaXMuaWR9YCk7XG4gICAgICAgIGNvbnN0IGhlYWQgPSBkb2N1bWVudC5oZWFkIHx8IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07XG4gICAgICAgIGNvbnN0IHN0eWxlOiBhbnkgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzdHlsZScpO1xuXG4gICAgICAgIGhlYWQuYXBwZW5kQ2hpbGQoc3R5bGUpO1xuXG4gICAgICAgIHN0eWxlLnR5cGUgPSAndGV4dC9jc3MnO1xuICAgICAgICBpZiAoc3R5bGUuc3R5bGVTaGVldCkge1xuICAgICAgICAgICAgLy8gVGhpcyBpcyByZXF1aXJlZCBmb3IgSUU4IGFuZCBiZWxvdy5cbiAgICAgICAgICAgIHN0eWxlLnN0eWxlU2hlZXQuY3NzVGV4dCA9IGNzc1N0eWxlcztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHN0eWxlLmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZVRleHROb2RlKGNzc1N0eWxlcykpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3N0eWxlID0gc3R5bGU7XG4gICAgfVxuICAgIHByb3RlY3RlZCBfcmVtb3ZlRHluYW1pY0Zvcm1TdHlsZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5fc3R5bGUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBoZWFkID0gZG9jdW1lbnQuaGVhZCB8fCBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdO1xuICAgICAgICBoZWFkLnJlbW92ZUNoaWxkKHRoaXMuX3N0eWxlKTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIG9idGFpbkhlaWdodCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcGFyZW50SGVpZ2h0ID0gZ2V0UGFyZW50SGVpZ2h0KHRoaXMuX2VsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQpO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLnNldEZvcm1IZWlnaHQocGFyZW50SGVpZ2h0KTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfc2V0UGFyYW10ZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhcmFtZXRlcnMgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmNvbnRleHQsICdTZXR0aW5nLlZpZXcuQ3VzdG9tVWkuUGFyYW1ldGVycycsIG51bGwpO1xuICAgIH1cbn1cbiJdfQ==
175
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9hYnN0cmFjdC1jbGFzc2VzL2Zvcm0tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsS0FBSyxFQUNMLFNBQVMsRUFDVCxNQUFNLEVBQ04sWUFBWSxFQUdaLHVCQUF1QixFQUV2QixJQUFJLEVBRUosV0FBVyxFQUNkLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0UsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQVl2QyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7O0FBT3pFLE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxhQUFhO0lBK0NoRCxZQUNjLGtCQUFxQyxFQUNyQyxjQUE2QixFQUM3QixPQUFlLEVBQ2YsR0FBZSxFQUNmLGNBQTZCLEVBQ3JCLGlCQUFtQyxFQUMzQyxlQUErQixFQUMvQixJQUF1QjtRQUVqQyxLQUFLLEVBQUUsQ0FBQztRQVRFLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDckMsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFDN0IsWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUNmLFFBQUcsR0FBSCxHQUFHLENBQVk7UUFDZixtQkFBYyxHQUFkLGNBQWMsQ0FBZTtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQzNDLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixT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Q0FBQyxDQUFDLENBQUM7U0FDekQ7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN4QixDQUFDO0lBQ1Msd0JBQXdCO1FBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2QsT0FBTztTQUNWO1FBQ0QsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLElBQUksSUFBSSxRQUFRLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUNTLFlBQVk7UUFDbEIsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBNEIsQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUNPLGFBQWE7UUFDakIsSUFBSSxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvRyxDQUFDOzs4R0EzTVEsaUJBQWlCO2tHQUFqQixpQkFBaUIsa01BSGhCLEVBQUU7MkZBR0gsaUJBQWlCO2tCQUw3QixTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNsRDs7MEJBc0RRLElBQUk7eUdBcERlLEVBQUU7c0JBQXpCLFdBQVc7dUJBQUMsU0FBUztnQkFDYixPQUFPO3NCQUFmLEtBQUs7Z0JBS0ksU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgSW5wdXQsXG4gICAgQ29tcG9uZW50LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgT25Jbml0LFxuICAgIE9uRGVzdHJveSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBFbGVtZW50UmVmLFxuICAgIFNlbGYsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgSG9zdEJpbmRpbmdcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgdGFrZVVudGlsLCBtZXJnZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgZ2V0RGV2aWNlSXNNb2JpbGUsIGdldFBhcmVudEhlaWdodCwgZ2V0VW5pcXVlSWQgfSBmcm9tICcuLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgRm9ybVBhbmVsU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Zvcm0tcGFuZWwuc2VydmljZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSB9IGZyb20gJy4vYmFyc2EtYXBpJztcbmltcG9ydCB7XG4gICAgRm9ybVNldHRpbmcsXG4gICAgRm9ybVZpZXdTZXR0aW5nLFxuICAgIEZvcm1WaXNpYmlsaXR5U3RhdHVzLFxuICAgIElIZWFkZXJMYXlvdXQsXG4gICAgTGF5b3V0U2V0dGluZyxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsXG59IGZyb20gJy4vbW9kZWxzJztcbmltcG9ydCB7IEJyZWFkY3J1bWJTZXJ2aWNlLCBQb3J0YWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ29udHJvbFVpUGlwZSB9IGZyb20gJy4uL3BpcGVzJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgZnJvbUludGVyc2VjdGlvbk9ic2VydmVyIH0gZnJvbSAnLi4vZnJvbS1pbnRlcnNlY3Rpb24tb2JzZXJ2ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JucmMtZm9ybS1iYXNlJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRm9ybUJhc2VDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5pZCcpIGlkID0gYGZvcm1fJHtnZXRVbmlxdWVJZCg0KX1gO1xuICAgIEBJbnB1dCgpIGNvbnRleHQ6IHtcbiAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICBjb25maWc6IGFueTtcbiAgICAgICAgU2V0dGluZzogRm9ybVNldHRpbmc7XG4gICAgfTtcbiAgICBAT3V0cHV0KCkgZm9ybUNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICAgIGxpc3RGaWVsZFVpOiBhbnk7XG4gICAgaXNXaXphcmQ6IGJvb2xlYW47XG4gICAgcGFyYW1ldGVyczogTWV0YW9iamVjdERhdGFNb2RlbDtcbiAgICBpc01vYmlsZTogYm9vbGVhbjtcblxuICAgIHRvb2xiYXJWaXNpYmxlJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBoaWRlQ2xvc2UkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGhpZGVUaXRsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgaGlkZVBpbiQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgdGl0bGUkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgdG9vbGJhckl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgd29ya2Zsb3dCdXR0b25zJDogT2JzZXJ2YWJsZTxhbnlbXT47XG4gICAgaGVhZGVyTGF5b3V0JDogT2JzZXJ2YWJsZTxJSGVhZGVyTGF5b3V0IHwgbnVsbD47XG4gICAgbGF5b3V0OTQkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgbGF5b3V0OTQ6IGFueTtcbiAgICBtYXhDb250ZW50V2lkdGgkOiBPYnNlcnZhYmxlPHN0cmluZz47XG4gICAgZm9ybVdpZHRoJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGhlYWRlckRlc2NyaXB0aW9uJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIGhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBoZWFkZXJTdWJ0aXRsZSQ6IE9ic2VydmFibGU8c3RyaW5nPjtcbiAgICBhdmF0YXIkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgd29ya2Zsb3dQYW5lbFVpJDogT2JzZXJ2YWJsZTxhbnk+O1xuICAgIHZpZXckOiBPYnNlcnZhYmxlPEZvcm1WaWV3U2V0dGluZz47XG4gICAgbW8kOiBPYnNlcnZhYmxlPE1ldGFvYmplY3REYXRhTW9kZWwgfCBudWxsPjtcbiAgICBpc1NpbXBsZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgZmllbGREaWN0JDogT2JzZXJ2YWJsZTx7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkPjtcbiAgICBtYXNrJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBpc1NlYXJjaFBhbmVsOiBib29sZWFuO1xuICAgIGlzTW9kYWw6IGJvb2xlYW47XG4gICAgaXNTdWJGb3JtOiBib29sZWFuO1xuICAgIG1vZGVyblRhYnMkOiBPYnNlcnZhYmxlPExheW91dFNldHRpbmdbXT47XG4gICAgaXNGb3JtUmVwb3J0OiBib29sZWFuO1xuICAgIGxhbmRzY2FwZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgc3RhbmRhbG9uZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF9zdHlsZTogSFRNTFN0eWxlRWxlbWVudDtcbiAgICBwcm90ZWN0ZWQgX3N0YW5kYWxvbmU6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBfZm9ybUludGVyc2VjdGlvbjogYW55O1xuICAgIGZvcm1WaXNpYmlsaXR5U3RhdHVzOiBGb3JtVmlzaWJpbGl0eVN0YXR1cztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgX2JyZWFkY3J1bWJTZXJ2aWNlOiBCcmVhZGNydW1iU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIF9wb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX3JvdXRlcjogUm91dGVyLFxuICAgICAgICBwcm90ZWN0ZWQgX2VsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcm90ZWN0ZWQgX2NvbnRyb2xVaVBpcGU6IENvbnRyb2xVaVBpcGUsXG4gICAgICAgIEBTZWxmKCkgcHJvdGVjdGVkIF9mb3JtUGFuZWxTZXJ2aWNlOiBGb3JtUGFuZWxTZXJ2aWNlLFxuICAgICAgICBwcm90ZWN0ZWQgX2FjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJvdGVjdGVkIF9jZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaXNTZWFyY2hQYW5lbCQuc3Vic2NyaWJlKChpc1NlYXJjaFBhbmVsKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzU2VhcmNoUGFuZWwgPSBpc1NlYXJjaFBhbmVsO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5oaWRlQ2xvc2UkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5oaWRlQ2xvc2UkO1xuICAgICAgICB0aGlzLmhpZGVUaXRsZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVUaXRsZSQ7XG4gICAgICAgIHRoaXMuaGlkZVBpbiQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmhpZGVQaW4kO1xuICAgICAgICB0aGlzLnRvb2xiYXJWaXNpYmxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudG9vbGJhclZpc2libGUkO1xuICAgICAgICB0aGlzLnRpdGxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudGl0bGUkLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHRpdGxlKSA9PiAoIXRpdGxlID8gJycgOiBnZXREZXZpY2VJc01vYmlsZSgpID8gdGl0bGUuc3BsaXQoJzonKVswXSA6IHRpdGxlKSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy50b29sYmFySXRlbXMkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS50b29sYmFySXRlbXMkO1xuICAgICAgICB0aGlzLndvcmtmbG93QnV0dG9ucyQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLndvcmtmbG93QnV0dG9ucyQ7XG4gICAgICAgIHRoaXMuaGVhZGVyTGF5b3V0JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyTGF5b3V0JDtcbiAgICAgICAgdGhpcy5sYXlvdXQ5NCQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmxheW91dCQ7XG4gICAgICAgIHRoaXMubWF4Q29udGVudFdpZHRoJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UubWF4Q29udGVudFdpZHRoJDtcbiAgICAgICAgdGhpcy5mb3JtV2lkdGgkID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5mb3JtV2lkdGgkO1xuICAgICAgICB0aGlzLmhlYWRlclN1YnRpdGxlJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyU3VidGl0bGUkO1xuICAgICAgICB0aGlzLmF2YXRhciQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmF2YXRhciQ7XG4gICAgICAgIHRoaXMud29ya2Zsb3dQYW5lbFVpJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2Uud29ya2Zsb3dQYW5lbFVpJDtcbiAgICAgICAgdGhpcy52aWV3JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UudmlldyQ7XG4gICAgICAgIHRoaXMubW8kID0gdGhpcy5fZm9ybVBhbmVsU2VydmljZS5tbyQ7XG4gICAgICAgIHRoaXMuZmllbGREaWN0JCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZmllbGREaWN0JDtcbiAgICAgICAgdGhpcy5pc1NpbXBsZSQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmlzU2ltcGxlRm9ybSQ7XG4gICAgICAgIHRoaXMubWFzayQgPSB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLm1hc2skO1xuICAgICAgICB0aGlzLmhlYWRlckRlc2NyaXB0aW9uJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyRGVzY3JpcHRpb24kO1xuICAgICAgICB0aGlzLmhlYWRlclJlbW92ZUNvbnRlbnRQYWRkaW5nJCA9IHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuaGVhZGVyUmVtb3ZlQ29udGVudFBhZGRpbmckO1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLmNvbnRleHQkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS52aWV3JC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMubGFuZHNjYXBlJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UubGFuZHNjYXBlJDtcbiAgICAgICAgdGhpcy5zdGFuZGFsb25lJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2Uuc3RhbmRhbG9uZSQ7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2Uuc3RhbmRhbG9uZSQucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpLnN1YnNjcmliZSgoYykgPT4gKHRoaXMuX3N0YW5kYWxvbmUgPSBjKSk7XG4gICAgfVxuICAgIGdldCBmb3JjZUNsb3NlJCgpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZm9yY2VDbG9zZSQ7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuY29udGV4dCA9IHRoaXMuY29udGV4dDtcbiAgICAgICAgdGhpcy5pc01vYmlsZSA9IGdldERldmljZUlzTW9iaWxlKCk7XG4gICAgICAgIHRoaXMubGlzdEZpZWxkVWkgPSB0aGlzLmNvbnRleHQuX2RpY3RGaWVsZFVpO1xuXG4gICAgICAgIHRoaXMuaXNNb2RhbCA9IHRoaXMuY29udGV4dC5TZXR0aW5nPy5Jc01vZGFsO1xuICAgICAgICB0aGlzLmlzU3ViRm9ybSA9IHRoaXMuY29udGV4dC5Jc1N1YkZvcm07XG4gICAgICAgIHRoaXMuaXNGb3JtUmVwb3J0ID0gdGhpcy5jb250ZXh0LklzRm9ybVJlcG9ydDtcbiAgICAgICAgdGhpcy5fc2V0UGFyYW10ZXJzKCk7XG4gICAgICAgIHRoaXMuX2FkZER5bmFtaWNGb3JtU3R5bGVzKHRoaXMucGFyYW1ldGVycz8uQ3NzU3R5bGVzKTtcbiAgICAgICAgdGhpcy5tb2Rlcm5UYWJzJCA9IHRoaXMubGF5b3V0OTQkLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGMpID0+IGMpLFxuICAgICAgICAgICAgbWFwKChsYXlvdXQ5NCkgPT4gKHRoaXMubGF5b3V0OTQgPSBsYXlvdXQ5NCkpLFxuICAgICAgICAgICAgLyogZXNsaW50LWRpc2FibGUgKi9cbiAgICAgICAgICAgIG1lcmdlKHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2UuZ3JvdXBMYXlvdXQkKSxcbiAgICAgICAgICAgIG1hcCgoXykgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmxheW91dDk0Lml0ZW1zWzBdLnh0eXBlICE9PSAnTHkuTGF5b3V0VGFiUGFuZWwnKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgdGFiczogTGF5b3V0U2V0dGluZ1tdID0gdGhpcy5sYXlvdXQ5NC5pdGVtc1swXS5pdGVtcztcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFicy5maWx0ZXIoKGMpID0+IGMuVmlzaWJsZSAhPT0gZmFsc2UpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9idGFpbkhlaWdodCgpO1xuICAgICAgICB9LCAwKTtcbiAgICAgICAgdGhpcy5fcG9ydGFsU2VydmljZS53aW5kb3dSZXNpemUkLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5vYnRhaW5IZWlnaHQoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX2Zvcm1JbnRlcnNlY3Rpb24gPSBmcm9tSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoXG4gICAgICAgICAgICB0aGlzLl9lbC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHJvb3Q6IG51bGwsXG4gICAgICAgICAgICAgICAgcm9vdE1hcmdpbjogJzBweCcsXG4gICAgICAgICAgICAgICAgdGhyZXNob2xkOiAwXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgMTAwLFxuICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX29uSW5WaWV3KGUpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX2Zvcm1JbnRlcnNlY3Rpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS5kZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX3JlbW92ZUR5bmFtaWNGb3JtU3R5bGVzKCk7XG4gICAgfVxuICAgIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udGV4dC5maXJlRXZlbnQoJ1JlcXVlc3RGb3JDbG9zZScsIHRoaXMuY29udGV4dCk7XG4gICAgfVxuICAgIG9uVG9vbGJhckNsaWNrKGJ0bik6IHZvaWQge1xuICAgICAgICB0aGlzLl9mb3JtUGFuZWxTZXJ2aWNlLnRvb2xiYXJDbGljayhidG4pO1xuICAgIH1cbiAgICBvbldvcmtmbG93Q2hvaWNlQ2xpY2sod2ZDaG9pY2UpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZm9ybVBhbmVsU2VydmljZS53ZkNob2ljZSh3ZkNob2ljZSk7XG4gICAgfVxuICAgIGZpZWxkQ2hhbmdlKGZpZWxkTmFtZSwgdmFsdWUpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmllbGRVaSA9IHRoaXMuY29udGV4dC5fbGlzdEZpZWxkVWkuZmluZCgoYykgPT4gYy5TZXR0aW5nLkNvbnRyb2xOYW1lID09PSBmaWVsZE5hbWUpO1xuICAgICAgICBmaWVsZFVpLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIGZpZWxkVWkuZmlyZUV2ZW50KCdjaGFuZ2UnLCBmaWVsZFVpKTtcbiAgICB9XG4gICAgc2VhcmNoQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGZpZWxkVWkgPSB0aGlzLmNvbnRleHQuX2xpc3RGaWVsZFVpLmZpbmQoKGMpID0+IGMub3JpZ2luYWxYdHlwZSA9PT0gJ1VpLlNlYXJjaENvbW1hbmRJbmZvVWknKTtcblxuICAgICAgICBmaWVsZFVpLmZpcmVFdmVudChCYXJzYUFwaS5VbC5Gb3JtUGFuZWxDdHJsci5FdmVudEVudW0uU2VhcmNoQ2xpY2ssIGZpZWxkVWkpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgX29uSW5WaWV3KGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybVZpc2liaWxpdHlTdGF0dXMgPSBlO1xuICAgICAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBwcm90ZWN0ZWQgX2FkZER5bmFtaWNGb3JtU3R5bGVzKGNzc1N0eWxlczogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICghY3NzU3R5bGVzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY3NzU3R5bGVzID0gY3NzU3R5bGVzLnJlcGxhY2UoLzpyb290L2dpLCBgIyR7dGhpcy5pZH1gKTtcbiAgICAgICAgY29uc3QgaGVhZCA9IGRvY3VtZW50LmhlYWQgfHwgZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2hlYWQnKVswXTtcbiAgICAgICAgY29uc3Qgc3R5bGU6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3N0eWxlJyk7XG5cbiAgICAgICAgaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7XG5cbiAgICAgICAgc3R5bGUudHlwZSA9ICd0ZXh0L2Nzcyc7XG4gICAgICAgIGlmIChzdHlsZS5zdHlsZVNoZWV0KSB7XG4gICAgICAgICAgICAvLyBUaGlzIGlzIHJlcXVpcmVkIGZvciBJRTggYW5kIGJlbG93LlxuICAgICAgICAgICAgc3R5bGUuc3R5bGVTaGVldC5jc3NUZXh0ID0gY3NzU3R5bGVzO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3R5bGUuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoY3NzU3R5bGVzKSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fc3R5bGUgPSBzdHlsZTtcbiAgICB9XG4gICAgcHJvdGVjdGVkIF9yZW1vdmVEeW5hbWljRm9ybVN0eWxlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9zdHlsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGhlYWQgPSBkb2N1bWVudC5oZWFkIHx8IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdoZWFkJylbMF07XG4gICAgICAgIGhlYWQucmVtb3ZlQ2hpbGQodGhpcy5fc3R5bGUpO1xuICAgIH1cbiAgICBwcm90ZWN0ZWQgb2J0YWluSGVpZ2h0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwYXJlbnRIZWlnaHQgPSBnZXRQYXJlbnRIZWlnaHQodGhpcy5fZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCk7XG4gICAgICAgIHRoaXMuX2Zvcm1QYW5lbFNlcnZpY2Uuc2V0Rm9ybUhlaWdodChwYXJlbnRIZWlnaHQpO1xuICAgIH1cbiAgICBwcml2YXRlIF9zZXRQYXJhbXRlcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucGFyYW1ldGVycyA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKHRoaXMuY29udGV4dCwgJ1NldHRpbmcuVmlldy5DdXN0b21VaS5QYXJhbWV0ZXJzJywgbnVsbCk7XG4gICAgfVxufVxuIl19
@@ -23,7 +23,7 @@ import { EmptyPageWithRouterAndRouterOutletComponent } from './empty-page-with-r
23
23
  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
- import { BreadcrumbService, UploadService, ApiService, LogService, BarsaDialogService, PortalService, UiService, LayoutService, DynamicComponentService, NetworkStatusService, AudioRecordingService, VideoRecordingService, PromptUpdateService, BarsaStorageService, LocalStorageService, IndexedDbService, NotificationService, ServiceWorkerNotificationService, ServiceWorkerCommuncationService } from './services';
26
+ import { BreadcrumbService, UploadService, ApiService, LogService, BarsaDialogService, PortalService, UiService, LayoutService, DynamicComponentService, NetworkStatusService, AudioRecordingService, VideoRecordingService, PromptUpdateService, BarsaStorageService, LocalStorageService, IndexedDbService, NotificationService, ServiceWorkerNotificationService, ServiceWorkerCommuncationService, SaveScrollPositionService } from './services';
27
27
  import { DynamicCommandDirective, ItemsRendererDirective, NumbersOnlyInputDirective, PlaceHolderDirective, RenderUlvPaginDirective, ImageLazyDirective, UntilInViewDirective, IntersectionObserverDirective, EllipsifyDirective, TableResizerDirective, ColumnResizerDirective, AttrRtlDirective, RenderUlvViewerDirective, UlvCommandDirective, WorfkflowwChoiceCommandDirective, CopyDirective, EllapsisTextDirective, FillEmptySpaceDirective, FormCloseDirective, MobileDirective, BodyClickDirective } 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';
@@ -143,6 +143,7 @@ export class BarsaNovinRayCoreModule extends BaseModule {
143
143
  PromptUpdateService,
144
144
  NotificationService,
145
145
  ServiceWorkerNotificationService,
146
+ SaveScrollPositionService,
146
147
  LocalStorageService,
147
148
  IndexedDbService,
148
149
  BbbTranslatePipe,
@@ -379,4 +380,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
379
380
  schemas: [NO_ERRORS_SCHEMA]
380
381
  }]
381
382
  }], ctorParameters: function () { return [{ type: i1.DynamicComponentService }, { type: i0.ComponentFactoryResolver }]; } });
382
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsb0JBQW9CLEVBQ3BCLG9CQUFvQixFQUNwQiwrQkFBK0IsRUFDL0Isc0JBQXNCLEVBQ3pCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxF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TixZQUFZLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDdEQsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFFLDhCQUE4QixFQUFFLHdCQUF3QixDQUFDO29CQUNuRyxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDakQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBUFBfSU5JVElBTElaRVIsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIEVycm9ySGFuZGxlcixcbiAgICBNb2R1bGVXaXRoUHJvdmlkZXJzLFxuICAgIE5nTW9kdWxlLFxuICAgIE5PX0VSUk9SU19TQ0hFTUFcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRVaUNvbXBvbmVudCB9IGZyb20gJy4vZmllbGQtdWkvZmllbGQtdWkuY29tcG9uZW50JztcblxuaW1wb3J0IHsgUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtY29udGFpbmVyL3JlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFuY2hvclNjcm9sbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hbmNob3Itc2Nyb2xsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2JhcnNhLW5vdmluLXJheS1jb3JlLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IE1vZGFsUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtcm9vdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybU5ld0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1uZXcvZm9ybS1uZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFJvb3RQb3J0YWxDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcG9ydGFsL3Jvb3QtcG9ydGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICcuL2F1dGgtZ3VhcmQnO1xuXG5pbXBvcnQge1xuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudFxufSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50JztcbmltcG9ydCB7IFJlZGlyZWN0SG9tZUd1YXJkIH0gZnJvbSAnLi9yZWRpcmVjdC1ob21lLWd1YXJkJztcbmltcG9ydCB7IE5vdEZvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9ub3QtZm91bmQvbm90LWZvdW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb290UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcm9vdC1wYWdlL3Jvb3QtcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFzZU1vZHVsZSB9IGZyb20gJy4vYmFzZS5tb2R1bGUnO1xuaW1wb3J0IHsgUG9ydGFsUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcG9ydGFsLXBhZ2UvcG9ydGFsLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbEVycm9ySGFuZGxlciB9IGZyb20gJy4vZ2xvYmFsLWVycm9yLWhhbmRsZXInO1xuXG5pbXBvcnQgeyBSZWRpcmVjdFJlcG9ydE5hdmlnYXRvckNvbW1hbmRDb21wb25lbnQgfSBmcm9tICcuL3JlZGlyZWN0LXJlcG9ydC1uYXZpZ2F0b3ItY29tbWFuZC9yZWRpcmVjdC1yZXBvcnQtbmF2aWdhdG9yLWNvbW1hbmQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5UGFnZVdpdGhSb3V0ZXJBbmRSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQvZW1wdHktcGFnZS13aXRoLXJvdXRlci1hbmQtcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlL2VtcHR5LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzL2JhcnNhLWFwaSc7XG5pbXBvcnQgeyBGb3JtUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vYWJzdHJhY3QtY2xhc3Nlcy9mb3JtLXBhZ2UuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgICBCcmVhZGNydW1iU2VydmljZSxcbiAgICBVcGxvYWRTZXJ2aWNlLFxuICAgIEFwaVNlcnZpY2UsXG4gICAgTG9nU2VydmljZSxcbiAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBVaVNlcnZpY2UsXG4gICAgTGF5b3V0U2VydmljZSxcbiAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcbiAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICBBdWRpb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgVmlkZW9SZWNvcmRpbmdTZXJ2aWNlLFxuICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxuICAgIEluZGV4ZWREYlNlcnZpY2UsXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZVxufSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7XG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXG4gICAgSXRlbXNSZW5kZXJlckRpcmVjdGl2ZSxcbiAgICBOdW1iZXJzT25seUlucHV0RGlyZWN0aXZlLFxuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxuICAgIFJlbmRlclVsdlBhZ2luRGlyZWN0aXZlLFxuICAgIEltYWdlTGF6eURpcmVjdGl2ZSxcbiAgICBVbnRpbEluVmlld0RpcmVjdGl2ZSxcbiAgICBJbnRlcnNlY3Rpb25PYnNlcnZlckRpcmVjdGl2ZSxcbiAgICBFbGxpcHNpZnlEaXJlY3RpdmUsXG4gICAgVGFibGVSZXNpemVyRGlyZWN0aXZlLFxuICAgIENvbHVtblJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgQXR0clJ0bERpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXG4gICAgVWx2Q29tbWFuZERpcmVjdGl2ZSxcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBDb3B5RGlyZWN0aXZlLFxuICAgIEVsbGFwc2lzVGV4dERpcmVjdGl2ZSxcbiAgICBGaWxsRW1wdHlTcGFjZURpcmVjdGl2ZSxcbiAgICBGb3JtQ2xvc2VEaXJlY3RpdmUsXG4gICAgTW9iaWxlRGlyZWN0aXZlLFxuICAgIEJvZHlDbGlja0RpcmVjdGl2ZVxufSBmcm9tICcuL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHtcbiAgICBOdW1lcmFsUGlwZSxcbiAgICBDYW5VcGxvYWRGaWxlUGlwZSxcbiAgICBSZW1vdmVOZXdsaW5lUGlwZSxcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBGaWx0ZXJUYWJQaXBlLFxuICAgIEZpbHRlclN0cmluZ1BpcGUsXG4gICAgRmlvcmlJY29uUGlwZSxcbiAgICBTb3J0UGlwZSxcbiAgICBHcm91cEJ5UGlwZSxcbiAgICBNdWx0aXBsZUdyb3VwQnlQaXBlLFxuICAgIE1vVmFsdWVQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxuICAgIEhlYWRlckZhY2V0VmFsdWVQaXBlLFxuICAgIFBpY3R1cmVGaWVsZFNvdXJjZVBpcGUsXG4gICAgVGxiQnV0dG9uc1BpcGUsXG4gICAgU2VwZXJhdG9yRml4UGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlQ29uY2F0UGlwZSxcbiAgICBDb250ZXh0TWVudVBpcGUsXG4gICAgQmJiVHJhbnNsYXRlUGlwZSxcbiAgICBCYXJzYUljb25EaWN0UGlwZSxcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcbiAgICBDb250cm9sVWlQaXBlLFxuICAgIFZpc2libGVWYWx1ZVBpcGUsXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxuICAgIEZpbHRlclRvb2xiYXJDb250cm9sUGlwZSxcbiAgICBMaXN0Q291bnRQaXBlLFxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXG4gICAgTWVyZ2VGaWVsZHNUb0NvbHVtbnNQaXBlLFxuICAgIEZpbmRDb2x1bW5CeURiTmFtZVBpcGUsXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXG4gICAgTW9JbmZvVWx2TW9MaXN0UGlwZSxcbiAgICBNb0luZm9VbHZQYWdpbmdQaXBlLFxuICAgIFJldmVyc2VQaXBlLFxuICAgIENvbHVtbkN1c3RvbVVpUGlwZSxcbiAgICBTYW5pdGl6ZVRleHRQaXBlLFxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXG4gICAgQ29sdW1uSWNvblBpcGUsXG4gICAgQ29sdW1uVmFsdWVQaXBlXG59IGZyb20gJy4vcGlwZXMnO1xuaW1wb3J0IHsgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlIH0gZnJvbSAnLi9mb3JtLXBhZ2Utcm91dGluZyc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12YXJcbmRlY2xhcmUgdmFyIEJCQjogYW55O1xuXG5jb25zdCBjb21wb25lbnRzID0gW1xuICAgIEZvcm1Db21wb25lbnQsXG4gICAgRmllbGRVaUNvbXBvbmVudCxcbiAgICBOb3RGb3VuZENvbXBvbmVudCxcbiAgICBSb290UGFnZUNvbXBvbmVudCxcbiAgICBSb290UG9ydGFsQ29tcG9uZW50LFxuICAgIFJlcG9ydENvbnRhaW5lckNvbXBvbmVudCxcbiAgICBGb3JtTmV3Q29tcG9uZW50LFxuICAgIE1vZGFsUm9vdENvbXBvbmVudCxcbiAgICBQb3J0YWxQYWdlQ29tcG9uZW50LFxuICAgIFJlZGlyZWN0UmVwb3J0TmF2aWdhdG9yQ29tbWFuZENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VXaXRoUm91dGVyQW5kUm91dGVyT3V0bGV0Q29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudCxcbiAgICBFbXB0eVBhZ2VDb21wb25lbnQsXG4gICAgRm9ybVBhZ2VDb21wb25lbnRcbl07XG5jb25zdCBkaXJlY3RpdmVzID0gW1xuICAgIFBsYWNlSG9sZGVyRGlyZWN0aXZlLFxuICAgIE51bWJlcnNPbmx5SW5wdXREaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2Vmlld2VyRGlyZWN0aXZlLFxuICAgIFJlbmRlclVsdlBhZ2luRGlyZWN0aXZlLFxuICAgIEFuY2hvclNjcm9sbERpcmVjdGl2ZSxcbiAgICBJdGVtc1JlbmRlcmVyRGlyZWN0aXZlLFxuICAgIFVsdkNvbW1hbmREaXJlY3RpdmUsXG4gICAgRHluYW1pY0NvbW1hbmREaXJlY3RpdmUsXG4gICAgV29yZmtmbG93d0Nob2ljZUNvbW1hbmREaXJlY3RpdmUsXG4gICAgSW1hZ2VMYXp5RGlyZWN0aXZlLFxuICAgIFVudGlsSW5WaWV3RGlyZWN0aXZlLFxuICAgIEludGVyc2VjdGlvbk9ic2VydmVyRGlyZWN0aXZlLFxuICAgIEVsbGlwc2lmeURpcmVjdGl2ZSxcbiAgICBUYWJsZVJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgQ29sdW1uUmVzaXplckRpcmVjdGl2ZSxcbiAgICBBdHRyUnRsRGlyZWN0aXZlLFxuICAgIENvcHlEaXJlY3RpdmUsXG4gICAgRWxsYXBzaXNUZXh0RGlyZWN0aXZlLFxuICAgIEZpbGxFbXB0eVNwYWNlRGlyZWN0aXZlLFxuICAgIEZvcm1DbG9zZURpcmVjdGl2ZSxcbiAgICBNb2JpbGVEaXJlY3RpdmUsXG4gICAgQm9keUNsaWNrRGlyZWN0aXZlXG5dO1xuY29uc3QgcGlwZXMgPSBbXG4gICAgTnVtZXJhbFBpcGUsXG4gICAgQ2FuVXBsb2FkRmlsZVBpcGUsXG4gICAgUmVtb3ZlTmV3bGluZVBpcGUsXG4gICAgQ29udmVydFRvU3R5bGVQaXBlLFxuICAgIEZpbHRlclBpcGUsXG4gICAgRmlsdGVyVGFiUGlwZSxcbiAgICBGaWx0ZXJTdHJpbmdQaXBlLFxuICAgIEZpb3JpSWNvblBpcGUsXG4gICAgU29ydFBpcGUsXG4gICAgR3JvdXBCeVBpcGUsXG4gICAgTXVsdGlwbGVHcm91cEJ5UGlwZSxcbiAgICBNb1ZhbHVlUGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlUGlwZSxcbiAgICBIZWFkZXJGYWNldFZhbHVlUGlwZSxcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxuICAgIFRsYkJ1dHRvbnNQaXBlLFxuICAgIFNlcGVyYXRvckZpeFBpcGUsXG4gICAgTW9SZXBvcnRWYWx1ZUNvbmNhdFBpcGUsXG4gICAgQ29udGV4dE1lbnVQaXBlLFxuICAgIEJiYlRyYW5zbGF0ZVBpcGUsXG4gICAgQmFyc2FJY29uRGljdFBpcGUsXG4gICAgRmlsZUluZm9Db3VudFBpcGUsXG4gICAgQ29udHJvbFVpUGlwZSxcbiAgICBWaXNpYmxlVmFsdWVQaXBlLFxuICAgIERhdGVUaW1lVG9DYXB0aW9uUGlwZSxcbiAgICBGaWx0ZXJUb29sYmFyQ29udHJvbFBpcGUsXG4gICAgTGlzdENvdW50UGlwZSxcbiAgICBUb3RhbFN1bW1hcnlQaXBlLFxuICAgIE1lcmdlRmllbGRzVG9Db2x1bW5zUGlwZSxcbiAgICBGaW5kQ29sdW1uQnlEYk5hbWVQaXBlLFxuICAgIEZpbHRlckNvbHVtbnNCeURldGFpbHNQaXBlLFxuICAgIE1vSW5mb1Vsdk1vTGlzdFBpcGUsXG4gICAgTW9JbmZvVWx2UGFnaW5nUGlwZSxcbiAgICBSZXZlcnNlUGlwZSxcbiAgICBDb2x1bW5DdXN0b21VaVBpcGUsXG4gICAgU2FuaXRpemVUZXh0UGlwZSxcbiAgICBDb2x1bW5DdXN0b21Db21wb25lbnRQaXBlLFxuICAgIENvbHVtbkljb25QaXBlLFxuICAgIENvbHVtblZhbHVlUGlwZVxuXTtcbkBOZ01vZHVsZSh7XG4gICAgZGVjbGFyYXRpb25zOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEh0dHBDbGllbnRNb2R1bGUsIEJhcnNhTm92aW5SYXlDb3JlUm91dGluZ01vZHVsZSwgQmFyc2FTYXBVaUZvcm1QYWdlTW9kdWxlXSxcbiAgICBleHBvcnRzOiBbLi4uY29tcG9uZW50cywgLi4ucGlwZXMsIC4uLmRpcmVjdGl2ZXNdLFxuICAgIHNjaGVtYXM6IFtOT19FUlJPUlNfU0NIRU1BXVxufSlcbmV4cG9ydCBjbGFzcyBCYXJzYU5vdmluUmF5Q29yZU1vZHVsZSBleHRlbmRzIEJhc2VNb2R1bGUge1xuICAgIHByb3RlY3RlZCBkeW5hbWljQ29tcG9uZW50cyA9IFsuLi5jb21wb25lbnRzXTtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgZGNtOiBEeW5hbWljQ29tcG9uZW50U2VydmljZSwgcHJvdGVjdGVkIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlcjogQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyKSB7XG4gICAgICAgIHN1cGVyKGRjbSwgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCAnQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUnKTtcbiAgICB9XG4gICAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxCYXJzYU5vdmluUmF5Q29yZU1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgICAgICAgLi4ucGlwZXMsXG4gICAgICAgICAgICAgICAgVXBsb2FkU2VydmljZSxcbiAgICAgICAgICAgICAgICBBcGlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExvZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgQmFyc2FEaWFsb2dTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgVWlTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExheW91dFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgRHluYW1pY0NvbXBvbmVudFNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQXV0aEd1YXJkLFxuICAgICAgICAgICAgICAgIE5ldHdvcmtTdGF0dXNTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEF1ZGlvUmVjb3JkaW5nU2VydmljZSxcbiAgICAgICAgICAgICAgICBWaWRlb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgUmVkaXJlY3RIb21lR3VhcmQsXG4gICAgICAgICAgICAgICAgUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICBOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNlcnZpY2VXb3JrZXJOb3RpZmljYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIExvY2FsU3RvcmFnZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgSW5kZXhlZERiU2VydmljZSxcbiAgICAgICAgICAgICAgICBCYmJUcmFuc2xhdGVQaXBlLFxuICAgICAgICAgICAgICAgIEJhcnNhU3RvcmFnZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgU2VydmljZVdvcmtlckNvbW11bmNhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBFcnJvckhhbmRsZXIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUNsYXNzOiBHbG9iYWxFcnJvckhhbmRsZXJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAobm90aWZpY2F0aW9uU2VydmljZTogTm90aWZpY2F0aW9uU2VydmljZSkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuVWwuTm90aWZpY2F0aW9uTWFuYWdlci5vbih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU2hvd1BvcHVwOiBub3RpZmljYXRpb25TZXJ2aWNlLmFkZE5vdGlmaWNhdGlvbi5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFB1Ymxpc2hFdmVudDogbm90aWZpY2F0aW9uU2VydmljZS5oYW5kbGVUb3BpYy5iaW5kKG5vdGlmaWNhdGlvblNlcnZpY2UpXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW05vdGlmaWNhdGlvblNlcnZpY2VdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6XG4gICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvbXB0VXBkYXRlU2VydmljZTogUHJvbXB0VXBkYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXJzYVN0b3JhZ2VTZXJ2aWNlOiBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN3Q29tbXVuaWNhdGlvblxuICAgICAgICAgICAgICAgICAgICAgICAgKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2UuY2hlY2tGb3JVcGRhdGUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYXJzYVN0b3JhZ2VTZXJ2aWNlLmluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb24uaW5pdCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW1Byb21wdFVwZGF0ZVNlcnZpY2UsIEJhcnNhU3RvcmFnZVNlcnZpY2UsIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlXSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OiAoKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5DdWx0dXJlID09PSAnZmEtSVInKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZldGNoKGAvTG9jYWxpemF0aW9uL1RyYW5zbGF0aW9uL2RhdGFfJHtCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLkN1bHR1cmV9Lmpzb25gKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKGZ1bmN0aW9uIChyZXMpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlcy5qc29uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChCQkIpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCQkIgPSB7IC4uLkJhcnNhQXBpLkJCQiwgLi4ucmVzIH07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW10sXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKHBvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsIHRpdGxlU2VydmljZTogVGl0bGUpID0+ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvcnRhbFNlcnZpY2UubG9hZFVzZXJQb3J0YWxTZXR0aW5nKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxTZXJ2aWNlLmxvYWRQb3J0YWxEYXRhU3luYygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBvcnRhbFNlcnZpY2UucG9ydGFsRGF0YT8uVGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aXRsZVNlcnZpY2Uuc2V0VGl0bGUocG9ydGFsU2VydmljZS5wb3J0YWxEYXRhPy5UaXRsZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc0Fub255bW91cyAmJiAhQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Jc1NlcnZpY2VEZXNrKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2UubG9hZFN5c3RlbShCYXJzYUFwaS5Mb2dpbkZvcm1EYXRhLlBvcnRhbFN5c3RlbUlkKTsgLy8gbG9naW4gZm9ybSBuZWVkIGp1c3QgcG9ydGFsIHN5c3RlbVxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gcG9ydGFsU2VydmljZS5sb2FkU3lzdGVtKCk7IC8vIGxvYWQgYWxsIHN5c3RlbXMgaWYgdXNlciBpcyBsb2dnZWQgaW5cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgZGVwczogW1BvcnRhbFNlcnZpY2UsIFRpdGxlXSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
383
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFyc2Etbm92aW4tcmF5LWNvcmUubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9iYXJzYS1ub3Zpbi1yYXktY29yZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILGVBQWUsRUFFZixZQUFZLEVBRVosUUFBUSxFQUNSLGdCQUFnQixFQUNuQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWxELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUVqRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwrQ0FBK0MsQ0FBQztBQUN6RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN2RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXpDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsb0JBQW9CLEVBQ3BCLG9CQUFvQixFQUNwQiwrQkFBK0IsRUFDL0Isc0JBQXNCLEVBQ3pCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxF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QUF1QjtrQkFObkMsUUFBUTttQkFBQztvQkFDTixZQUFZLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDdEQsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGdCQUFnQixFQUFFLDhCQUE4QixFQUFFLHdCQUF3QixDQUFDO29CQUNuRyxPQUFPLEVBQUUsQ0FBQyxHQUFHLFVBQVUsRUFBRSxHQUFHLEtBQUssRUFBRSxHQUFHLFVBQVUsQ0FBQztvQkFDakQsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7aUJBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBUFBfSU5JVElBTElaRVIsXG4gICAgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLFxuICAgIEVycm9ySGFuZGxlcixcbiAgICBNb2R1bGVXaXRoUHJvdmlkZXJzLFxuICAgIE5nTW9kdWxlLFxuICAgIE5PX0VSUk9SU19TQ0hFTUFcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFRpdGxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5cbmltcG9ydCB7IEZvcm1Db21wb25lbnQgfSBmcm9tICcuL2Zvcm0vZm9ybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRVaUNvbXBvbmVudCB9IGZyb20gJy4vZmllbGQtdWkvZmllbGQtdWkuY29tcG9uZW50JztcblxuaW1wb3J0IHsgUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtY29udGFpbmVyL3JlcG9ydC1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEFuY2hvclNjcm9sbERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9hbmNob3Itc2Nyb2xsLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCYXJzYU5vdmluUmF5Q29yZVJvdXRpbmdNb2R1bGUgfSBmcm9tICcuL2JhcnNhLW5vdmluLXJheS1jb3JlLXJvdXRpbmcubW9kdWxlJztcbmltcG9ydCB7IE1vZGFsUm9vdENvbXBvbmVudCB9IGZyb20gJy4vbW9kYWwtcm9vdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRm9ybU5ld0NvbXBvbmVudCB9IGZyb20gJy4vZm9ybS1uZXcvZm9ybS1uZXcuY29tcG9uZW50JztcbmltcG9ydCB7IFJvb3RQb3J0YWxDb21wb25lbnQgfSBmcm9tICcuL3Jvb3QtcG9ydGFsL3Jvb3QtcG9ydGFsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBdXRoR3VhcmQgfSBmcm9tICcuL2F1dGgtZ3VhcmQnO1xuXG5pbXBvcnQge1xuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50LFxuICAgIER5bmFtaWNJdGVtQ29tcG9uZW50LFxuICAgIEJhc2VEeW5hbWljQ29tcG9uZW50LFxuICAgIER5bmFtaWNGb3JtVG9vbGJhcml0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0xheW91dENvbXBvbmVudFxufSBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50JztcbmltcG9ydCB7IFJlZGlyZWN0SG9tZUd1YXJkIH0gZnJvbSAnLi9yZWRpcmVjdC1ob21lLWd1YXJkJztcbmltcG9ydCB7IE5vdEZvdW5kQ29tcG9uZW50IH0gZnJvbSAnLi9ub3QtZm91bmQvbm90LWZvdW5kLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSb290UGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcm9vdC1wYWdlL3Jvb3QtcGFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQmFzZU1vZHVsZSB9IGZyb20gJy4vYmFzZS5tb2R1bGUnO1xuaW1wb3J0IHsgUG9ydGFsUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vcG9ydGFsLXBhZ2UvcG9ydGFsLXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEdsb2JhbEVycm9ySGFuZGxlciB9IGZyb20gJy4vZ2xvYmFsLWVycm9yLWhhbmRsZXInO1xuXG5pbXBvcnQgeyBSZWRpcmVjdFJlcG9ydE5hdmlnYXRvckNvbW1hbmRDb21wb25lbnQgfSBmcm9tICcuL3JlZGlyZWN0LXJlcG9ydC1uYXZpZ2F0b3ItY29tbWFuZC9yZWRpcmVjdC1yZXBvcnQtbmF2aWdhdG9yLWNvbW1hbmQuY29tcG9uZW50JztcbmltcG9ydCB7IEVtcHR5UGFnZVdpdGhSb3V0ZXJBbmRSb3V0ZXJPdXRsZXRDb21wb25lbnQgfSBmcm9tICcuL2VtcHR5LXBhZ2Utd2l0aC1yb3V0ZXItYW5kLXJvdXRlci1vdXRsZXQvZW1wdHktcGFnZS13aXRoLXJvdXRlci1hbmQtcm91dGVyLW91dGxldC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRW1wdHlQYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9lbXB0eS1wYWdlL2VtcHR5LXBhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhQXBpIH0gZnJvbSAnLi9hYnN0cmFjdC1jbGFzc2VzL2JhcnNhLWFwaSc7XG5pbXBvcnQgeyBGb3JtUGFnZUNvbXBvbmVudCB9IGZyb20gJy4vYWJzdHJhY3QtY2xhc3Nlcy9mb3JtLXBhZ2UuY29tcG9uZW50JztcblxuaW1wb3J0IHtcbiAgICBCcmVhZGNydW1iU2VydmljZSxcbiAgICBVcGxvYWRTZXJ2aWNlLFxuICAgIEFwaVNlcnZpY2UsXG4gICAgTG9nU2VydmljZSxcbiAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXG4gICAgUG9ydGFsU2VydmljZSxcbiAgICBVaVNlcnZpY2UsXG4gICAgTGF5b3V0U2VydmljZSxcbiAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcbiAgICBOZXR3b3JrU3RhdHVzU2VydmljZSxcbiAgICBBdWRpb1JlY29yZGluZ1NlcnZpY2UsXG4gICAgVmlkZW9SZWNvcmRpbmdTZXJ2aWNlLFxuICAgIFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxuICAgIEluZGV4ZWREYlNlcnZpY2UsXG4gICAgTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyTm90aWZpY2F0aW9uU2VydmljZSxcbiAgICBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZSxcbiAgICBTYXZlU2Nyb2xsUG9zaXRpb25TZXJ2aWNlXG59IGZyb20gJy4vc2VydmljZXMnO1xuaW1wb3J0IHtcbiAgICBEeW5hbWljQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBJdGVtc1JlbmRlcmVyRGlyZWN0aXZlLFxuICAgIE51bWJlcnNPbmx5SW5wdXREaXJlY3RpdmUsXG4gICAgUGxhY2VIb2xkZXJEaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2UGFnaW5EaXJlY3RpdmUsXG4gICAgSW1hZ2VMYXp5RGlyZWN0aXZlLFxuICAgIFVudGlsSW5WaWV3RGlyZWN0aXZlLFxuICAgIEludGVyc2VjdGlvbk9ic2VydmVyRGlyZWN0aXZlLFxuICAgIEVsbGlwc2lmeURpcmVjdGl2ZSxcbiAgICBUYWJsZVJlc2l6ZXJEaXJlY3RpdmUsXG4gICAgQ29sdW1uUmVzaXplckRpcmVjdGl2ZSxcbiAgICBBdHRyUnRsRGlyZWN0aXZlLFxuICAgIFJlbmRlclVsdlZpZXdlckRpcmVjdGl2ZSxcbiAgICBVbHZDb21tYW5kRGlyZWN0aXZlLFxuICAgIFdvcmZrZmxvd3dDaG9pY2VDb21tYW5kRGlyZWN0aXZlLFxuICAgIENvcHlEaXJlY3RpdmUsXG4gICAgRWxsYXBzaXNUZXh0RGlyZWN0aXZlLFxuICAgIEZpbGxFbXB0eVNwYWNlRGlyZWN0aXZlLFxuICAgIEZvcm1DbG9zZURpcmVjdGl2ZSxcbiAgICBNb2JpbGVEaXJlY3RpdmUsXG4gICAgQm9keUNsaWNrRGlyZWN0aXZlXG59IGZyb20gJy4vZGlyZWN0aXZlcyc7XG5pbXBvcnQge1xuICAgIE51bWVyYWxQaXBlLFxuICAgIENhblVwbG9hZEZpbGVQaXBlLFxuICAgIFJlbW92ZU5ld2xpbmVQaXBlLFxuICAgIENvbnZlcnRUb1N0eWxlUGlwZSxcbiAgICBGaWx0ZXJQaXBlLFxuICAgIEZpbHRlclRhYlBpcGUsXG4gICAgRmlsdGVyU3RyaW5nUGlwZSxcbiAgICBGaW9yaUljb25QaXBlLFxuICAgIFNvcnRQaXBlLFxuICAgIEdyb3VwQnlQaXBlLFxuICAgIE11bHRpcGxlR3JvdXBCeVBpcGUsXG4gICAgTW9WYWx1ZVBpcGUsXG4gICAgTW9SZXBvcnRWYWx1ZVBpcGUsXG4gICAgSGVhZGVyRmFjZXRWYWx1ZVBpcGUsXG4gICAgUGljdHVyZUZpZWxkU291cmNlUGlwZSxcbiAgICBUbGJCdXR0b25zUGlwZSxcbiAgICBTZXBlcmF0b3JGaXhQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVDb25jYXRQaXBlLFxuICAgIENvbnRleHRNZW51UGlwZSxcbiAgICBCYmJUcmFuc2xhdGVQaXBlLFxuICAgIEJhcnNhSWNvbkRpY3RQaXBlLFxuICAgIEZpbGVJbmZvQ291bnRQaXBlLFxuICAgIENvbnRyb2xVaVBpcGUsXG4gICAgVmlzaWJsZVZhbHVlUGlwZSxcbiAgICBEYXRlVGltZVRvQ2FwdGlvblBpcGUsXG4gICAgRmlsdGVyVG9vbGJhckNvbnRyb2xQaXBlLFxuICAgIExpc3RDb3VudFBpcGUsXG4gICAgVG90YWxTdW1tYXJ5UGlwZSxcbiAgICBNZXJnZUZpZWxkc1RvQ29sdW1uc1BpcGUsXG4gICAgRmluZENvbHVtbkJ5RGJOYW1lUGlwZSxcbiAgICBGaWx0ZXJDb2x1bW5zQnlEZXRhaWxzUGlwZSxcbiAgICBNb0luZm9VbHZNb0xpc3RQaXBlLFxuICAgIE1vSW5mb1VsdlBhZ2luZ1BpcGUsXG4gICAgUmV2ZXJzZVBpcGUsXG4gICAgQ29sdW1uQ3VzdG9tVWlQaXBlLFxuICAgIFNhbml0aXplVGV4dFBpcGUsXG4gICAgQ29sdW1uQ3VzdG9tQ29tcG9uZW50UGlwZSxcbiAgICBDb2x1bW5JY29uUGlwZSxcbiAgICBDb2x1bW5WYWx1ZVBpcGVcbn0gZnJvbSAnLi9waXBlcyc7XG5pbXBvcnQgeyBCYXJzYVNhcFVpRm9ybVBhZ2VNb2R1bGUgfSBmcm9tICcuL2Zvcm0tcGFnZS1yb3V0aW5nJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZhclxuZGVjbGFyZSB2YXIgQkJCOiBhbnk7XG5cbmNvbnN0IGNvbXBvbmVudHMgPSBbXG4gICAgRm9ybUNvbXBvbmVudCxcbiAgICBGaWVsZFVpQ29tcG9uZW50LFxuICAgIE5vdEZvdW5kQ29tcG9uZW50LFxuICAgIFJvb3RQYWdlQ29tcG9uZW50LFxuICAgIFJvb3RQb3J0YWxDb21wb25lbnQsXG4gICAgUmVwb3J0Q29udGFpbmVyQ29tcG9uZW50LFxuICAgIEZvcm1OZXdDb21wb25lbnQsXG4gICAgTW9kYWxSb290Q29tcG9uZW50LFxuICAgIFBvcnRhbFBhZ2VDb21wb25lbnQsXG4gICAgUmVkaXJlY3RSZXBvcnROYXZpZ2F0b3JDb21tYW5kQ29tcG9uZW50LFxuICAgIEVtcHR5UGFnZVdpdGhSb3V0ZXJBbmRSb3V0ZXJPdXRsZXRDb21wb25lbnQsXG4gICAgRHluYW1pY0l0ZW1Db21wb25lbnQsXG4gICAgRHluYW1pY0Zvcm1Db21wb25lbnQsXG4gICAgQmFzZUR5bmFtaWNDb21wb25lbnQsXG4gICAgRHluYW1pY0Zvcm1Ub29sYmFyaXRlbUNvbXBvbmVudCxcbiAgICBEeW5hbWljTGF5b3V0Q29tcG9uZW50LFxuICAgIEVtcHR5UGFnZUNvbXBvbmVudCxcbiAgICBGb3JtUGFnZUNvbXBvbmVudFxuXTtcbmNvbnN0IGRpcmVjdGl2ZXMgPSBbXG4gICAgUGxhY2VIb2xkZXJEaXJlY3RpdmUsXG4gICAgTnVtYmVyc09ubHlJbnB1dERpcmVjdGl2ZSxcbiAgICBSZW5kZXJVbHZWaWV3ZXJEaXJlY3RpdmUsXG4gICAgUmVuZGVyVWx2UGFnaW5EaXJlY3RpdmUsXG4gICAgQW5jaG9yU2Nyb2xsRGlyZWN0aXZlLFxuICAgIEl0ZW1zUmVuZGVyZXJEaXJlY3RpdmUsXG4gICAgVWx2Q29tbWFuZERpcmVjdGl2ZSxcbiAgICBEeW5hbWljQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBXb3Jma2Zsb3d3Q2hvaWNlQ29tbWFuZERpcmVjdGl2ZSxcbiAgICBJbWFnZUxhenlEaXJlY3RpdmUsXG4gICAgVW50aWxJblZpZXdEaXJlY3RpdmUsXG4gICAgSW50ZXJzZWN0aW9uT2JzZXJ2ZXJEaXJlY3RpdmUsXG4gICAgRWxsaXBzaWZ5RGlyZWN0aXZlLFxuICAgIFRhYmxlUmVzaXplckRpcmVjdGl2ZSxcbiAgICBDb2x1bW5SZXNpemVyRGlyZWN0aXZlLFxuICAgIEF0dHJSdGxEaXJlY3RpdmUsXG4gICAgQ29weURpcmVjdGl2ZSxcbiAgICBFbGxhcHNpc1RleHREaXJlY3RpdmUsXG4gICAgRmlsbEVtcHR5U3BhY2VEaXJlY3RpdmUsXG4gICAgRm9ybUNsb3NlRGlyZWN0aXZlLFxuICAgIE1vYmlsZURpcmVjdGl2ZSxcbiAgICBCb2R5Q2xpY2tEaXJlY3RpdmVcbl07XG5jb25zdCBwaXBlcyA9IFtcbiAgICBOdW1lcmFsUGlwZSxcbiAgICBDYW5VcGxvYWRGaWxlUGlwZSxcbiAgICBSZW1vdmVOZXdsaW5lUGlwZSxcbiAgICBDb252ZXJ0VG9TdHlsZVBpcGUsXG4gICAgRmlsdGVyUGlwZSxcbiAgICBGaWx0ZXJUYWJQaXBlLFxuICAgIEZpbHRlclN0cmluZ1BpcGUsXG4gICAgRmlvcmlJY29uUGlwZSxcbiAgICBTb3J0UGlwZSxcbiAgICBHcm91cEJ5UGlwZSxcbiAgICBNdWx0aXBsZUdyb3VwQnlQaXBlLFxuICAgIE1vVmFsdWVQaXBlLFxuICAgIE1vUmVwb3J0VmFsdWVQaXBlLFxuICAgIEhlYWRlckZhY2V0VmFsdWVQaXBlLFxuICAgIFBpY3R1cmVGaWVsZFNvdXJjZVBpcGUsXG4gICAgVGxiQnV0dG9uc1BpcGUsXG4gICAgU2VwZXJhdG9yRml4UGlwZSxcbiAgICBNb1JlcG9ydFZhbHVlQ29uY2F0UGlwZSxcbiAgICBDb250ZXh0TWVudVBpcGUsXG4gICAgQmJiVHJhbnNsYXRlUGlwZSxcbiAgICBCYXJzYUljb25EaWN0UGlwZSxcbiAgICBGaWxlSW5mb0NvdW50UGlwZSxcbiAgICBDb250cm9sVWlQaXBlLFxuICAgIFZpc2libGVWYWx1ZVBpcGUsXG4gICAgRGF0ZVRpbWVUb0NhcHRpb25QaXBlLFxuICAgIEZpbHRlclRvb2xiYXJDb250cm9sUGlwZSxcbiAgICBMaXN0Q291bnRQaXBlLFxuICAgIFRvdGFsU3VtbWFyeVBpcGUsXG4gICAgTWVyZ2VGaWVsZHNUb0NvbHVtbnNQaXBlLFxuICAgIEZpbmRDb2x1bW5CeURiTmFtZVBpcGUsXG4gICAgRmlsdGVyQ29sdW1uc0J5RGV0YWlsc1BpcGUsXG4gICAgTW9JbmZvVWx2TW9MaXN0UGlwZSxcbiAgICBNb0luZm9VbHZQYWdpbmdQaXBlLFxuICAgIFJldmVyc2VQaXBlLFxuICAgIENvbHVtbkN1c3RvbVVpUGlwZSxcbiAgICBTYW5pdGl6ZVRleHRQaXBlLFxuICAgIENvbHVtbkN1c3RvbUNvbXBvbmVudFBpcGUsXG4gICAgQ29sdW1uSWNvblBpcGUsXG4gICAgQ29sdW1uVmFsdWVQaXBlXG5dO1xuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFsuLi5jb21wb25lbnRzLCAuLi5waXBlcywgLi4uZGlyZWN0aXZlc10sXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgSHR0cENsaWVudE1vZHVsZSwgQmFyc2FOb3ZpblJheUNvcmVSb3V0aW5nTW9kdWxlLCBCYXJzYVNhcFVpRm9ybVBhZ2VNb2R1bGVdLFxuICAgIGV4cG9ydHM6IFsuLi5jb21wb25lbnRzLCAuLi5waXBlcywgLi4uZGlyZWN0aXZlc10sXG4gICAgc2NoZW1hczogW05PX0VSUk9SU19TQ0hFTUFdXG59KVxuZXhwb3J0IGNsYXNzIEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlIGV4dGVuZHMgQmFzZU1vZHVsZSB7XG4gICAgcHJvdGVjdGVkIGR5bmFtaWNDb21wb25lbnRzID0gWy4uLmNvbXBvbmVudHNdO1xuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBkY206IER5bmFtaWNDb21wb25lbnRTZXJ2aWNlLCBwcm90ZWN0ZWQgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIpIHtcbiAgICAgICAgc3VwZXIoZGNtLCBjb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsICdCYXJzYU5vdmluUmF5Q29yZU1vZHVsZScpO1xuICAgIH1cbiAgICBzdGF0aWMgZm9yUm9vdCgpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEJhcnNhTm92aW5SYXlDb3JlTW9kdWxlPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogQmFyc2FOb3ZpblJheUNvcmVNb2R1bGUsXG4gICAgICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgICAgICAuLi5waXBlcyxcbiAgICAgICAgICAgICAgICBVcGxvYWRTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEFwaVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgTG9nU2VydmljZSxcbiAgICAgICAgICAgICAgICBCYXJzYURpYWxvZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgUG9ydGFsU2VydmljZSxcbiAgICAgICAgICAgICAgICBVaVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgTGF5b3V0U2VydmljZSxcbiAgICAgICAgICAgICAgICBEeW5hbWljQ29tcG9uZW50U2VydmljZSxcbiAgICAgICAgICAgICAgICBCcmVhZGNydW1iU2VydmljZSxcbiAgICAgICAgICAgICAgICBBdXRoR3VhcmQsXG4gICAgICAgICAgICAgICAgTmV0d29ya1N0YXR1c1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgQXVkaW9SZWNvcmRpbmdTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFZpZGVvUmVjb3JkaW5nU2VydmljZSxcbiAgICAgICAgICAgICAgICBSZWRpcmVjdEhvbWVHdWFyZCxcbiAgICAgICAgICAgICAgICBQcm9tcHRVcGRhdGVTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIE5vdGlmaWNhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgU2VydmljZVdvcmtlck5vdGlmaWNhdGlvblNlcnZpY2UsXG4gICAgICAgICAgICAgICAgU2F2ZVNjcm9sbFBvc2l0aW9uU2VydmljZSxcbiAgICAgICAgICAgICAgICBMb2NhbFN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEluZGV4ZWREYlNlcnZpY2UsXG4gICAgICAgICAgICAgICAgQmJiVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgICAgICAgICBCYXJzYVN0b3JhZ2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIFNlcnZpY2VXb3JrZXJDb21tdW5jYXRpb25TZXJ2aWNlLFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogRXJyb3JIYW5kbGVyLFxuICAgICAgICAgICAgICAgICAgICB1c2VDbGFzczogR2xvYmFsRXJyb3JIYW5kbGVyXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UpID0+ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIEJhcnNhQXBpLlVsLk5vdGlmaWNhdGlvbk1hbmFnZXIub24oe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3dQb3B1cDogbm90aWZpY2F0aW9uU2VydmljZS5hZGROb3RpZmljYXRpb24uYmluZChub3RpZmljYXRpb25TZXJ2aWNlKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQdWJsaXNoRXZlbnQ6IG5vdGlmaWNhdGlvblNlcnZpY2UuaGFuZGxlVG9waWMuYmluZChub3RpZmljYXRpb25TZXJ2aWNlKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtOb3RpZmljYXRpb25TZXJ2aWNlXSxcbiAgICAgICAgICAgICAgICAgICAgbXVsdGk6IHRydWVcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLFxuICAgICAgICAgICAgICAgICAgICB1c2VGYWN0b3J5OlxuICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb21wdFVwZGF0ZVNlcnZpY2U6IFByb21wdFVwZGF0ZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZTogQmFyc2FTdG9yYWdlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzd0NvbW11bmljYXRpb25cbiAgICAgICAgICAgICAgICAgICAgICAgICkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9tcHRVcGRhdGVTZXJ2aWNlLmNoZWNrRm9yVXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFyc2FTdG9yYWdlU2VydmljZS5pbml0KCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3dDb21tdW5pY2F0aW9uLmluaXQoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtQcm9tcHRVcGRhdGVTZXJ2aWNlLCBCYXJzYVN0b3JhZ2VTZXJ2aWNlLCBTZXJ2aWNlV29ya2VyQ29tbXVuY2F0aW9uU2VydmljZV0sXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUixcbiAgICAgICAgICAgICAgICAgICAgdXNlRmFjdG9yeTogKCkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuQ3VsdHVyZSA9PT0gJ2ZhLUlSJykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmZXRjaChgL0xvY2FsaXphdGlvbi9UcmFuc2xhdGlvbi9kYXRhXyR7QmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5DdWx0dXJlfS5qc29uYClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihmdW5jdGlvbiAocmVzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXMuanNvbigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKHJlcykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoQkJCKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQkJCID0geyAuLi5CYXJzYUFwaS5CQkIsIC4uLnJlcyB9O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtdLFxuICAgICAgICAgICAgICAgICAgICBtdWx0aTogdHJ1ZVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBwcm92aWRlOiBBUFBfSU5JVElBTElaRVIsXG4gICAgICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IChwb3J0YWxTZXJ2aWNlOiBQb3J0YWxTZXJ2aWNlLCB0aXRsZVNlcnZpY2U6IFRpdGxlKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3J0YWxTZXJ2aWNlLmxvYWRVc2VyUG9ydGFsU2V0dGluZygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9ydGFsU2VydmljZS5sb2FkUG9ydGFsRGF0YVN5bmMoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwb3J0YWxTZXJ2aWNlLnBvcnRhbERhdGE/LlRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGVTZXJ2aWNlLnNldFRpdGxlKHBvcnRhbFNlcnZpY2UucG9ydGFsRGF0YT8uVGl0bGUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKEJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNBbm9ueW1vdXMgJiYgIUJhcnNhQXBpLkxvZ2luRm9ybURhdGEuSXNTZXJ2aWNlRGVzaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBwb3J0YWxTZXJ2aWNlLmxvYWRTeXN0ZW0oQmFyc2FBcGkuTG9naW5Gb3JtRGF0YS5Qb3J0YWxTeXN0ZW1JZCk7IC8vIGxvZ2luIGZvcm0gbmVlZCBqdXN0IHBvcnRhbCBzeXN0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHBvcnRhbFNlcnZpY2UubG9hZFN5c3RlbSgpOyAvLyBsb2FkIGFsbCBzeXN0ZW1zIGlmIHVzZXIgaXMgbG9nZ2VkIGluXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGRlcHM6IFtQb3J0YWxTZXJ2aWNlLCBUaXRsZV0sXG4gICAgICAgICAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdfQ==
@@ -24,4 +24,5 @@ export * from './notification-popup.service';
24
24
  export * from './notification-sw.service';
25
25
  export * from './column.service';
26
26
  export * from './service-worker-communication.service';
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx3Q0FBd0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYXBpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9icmVhZGNydW1iLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9iYXJzYS1kaWFsb2cuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2R5bmFtaWMtY29tcG9uZW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLXBhbmVsLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb250YWluZXIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2hvcml6b250YWwtbGF5b3V0LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXlvdXQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG9ydGFsLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91aS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdWx2bWFpbi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vdXBsb2FkLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9uZXR3b3JrLXN0YXR1cy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vYXVkaW8tcmVjb3JkaW5nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi92aWRlby1yZWNvcmRpbmcuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xvY2FsLXN0b3JhZ2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2luZGV4ZWRkYi5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFyc2Etc3RvcmFnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJvbXB0LXVwZGF0ZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24tcG9wdXAuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi1zdy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vY29sdW1uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zZXJ2aWNlLXdvcmtlci1jb21tdW5pY2F0aW9uLnNlcnZpY2UnO1xuIl19
27
+ export * from './save-scoll-position.service';
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYXJzYS1ub3Zpbi1yYXktY29yZS9zcmMvbGliL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hcGkuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2JyZWFkY3J1bWIuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2JhcnNhLWRpYWxvZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZHluYW1pYy1jb21wb25lbnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tcGFuZWwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRhaW5lci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaG9yaXpvbnRhbC1sYXlvdXQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xheW91dC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wb3J0YWwuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3VpLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91bHZtYWluLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi91cGxvYWQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL25ldHdvcmstc3RhdHVzLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9hdWRpby1yZWNvcmRpbmcuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3ZpZGVvLXJlY29yZGluZy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vaW5kZXhlZGRiLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9iYXJzYS1zdG9yYWdlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wcm9tcHQtdXBkYXRlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9ub3RpZmljYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbi1wb3B1cC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbm90aWZpY2F0aW9uLXN3LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9jb2x1bW4uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NlcnZpY2Utd29ya2VyLWNvbW11bmljYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NhdmUtc2NvbGwtcG9zaXRpb24uc2VydmljZSc7XG4iXX0=
@@ -0,0 +1,29 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export class SaveScrollPositionService {
5
+ constructor() {
6
+ this._scrollPositionSource = new BehaviorSubject({
7
+ key: 'body',
8
+ scrollTop: 0
9
+ });
10
+ }
11
+ get scrollPosition$() {
12
+ return this._scrollPositionSource.asObservable();
13
+ }
14
+ getScrollPosition(key) {
15
+ const val = this._scrollPositionSource.getValue();
16
+ return val[key];
17
+ }
18
+ setScrollPosition(key, scrollTop) {
19
+ const value = this._scrollPositionSource.getValue();
20
+ value[key] = scrollTop;
21
+ this._scrollPositionSource.next(value);
22
+ }
23
+ }
24
+ SaveScrollPositionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: SaveScrollPositionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
25
+ SaveScrollPositionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: SaveScrollPositionService });
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: SaveScrollPositionService, decorators: [{
27
+ type: Injectable
28
+ }] });
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1zY29sbC1wb3NpdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etbm92aW4tcmF5LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9zYXZlLXNjb2xsLXBvc2l0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDOztBQUduRCxNQUFNLE9BQU8seUJBQXlCO0lBRHRDO1FBRVksMEJBQXFCLEdBQUcsSUFBSSxlQUFlLENBQXFDO1lBQ3BGLEdBQUcsRUFBRSxNQUFNO1lBQ1gsU0FBUyxFQUFFLENBQUM7U0FDZixDQUFDLENBQUM7S0FhTjtJQVpHLElBQUksZUFBZTtRQUNmLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JELENBQUM7SUFDRCxpQkFBaUIsQ0FBQyxHQUFXO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNsRCxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBQ0QsaUJBQWlCLENBQUMsR0FBVyxFQUFFLFNBQWlCO1FBQzVDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNwRCxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQzs7c0hBaEJRLHlCQUF5QjswSEFBekIseUJBQXlCOzJGQUF6Qix5QkFBeUI7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2F2ZVNjcm9sbFBvc2l0aW9uU2VydmljZSB7XG4gICAgcHJpdmF0ZSBfc2Nyb2xsUG9zaXRpb25Tb3VyY2UgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHsga2V5OiBzdHJpbmc7IHNjcm9sbFRvcDogbnVtYmVyIH0+KHtcbiAgICAgICAga2V5OiAnYm9keScsXG4gICAgICAgIHNjcm9sbFRvcDogMFxuICAgIH0pO1xuICAgIGdldCBzY3JvbGxQb3NpdGlvbiQoKTogT2JzZXJ2YWJsZTx7IGtleTogc3RyaW5nOyBzY3JvbGxUb3A6IG51bWJlciB9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zY3JvbGxQb3NpdGlvblNvdXJjZS5hc09ic2VydmFibGUoKTtcbiAgICB9XG4gICAgZ2V0U2Nyb2xsUG9zaXRpb24oa2V5OiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICBjb25zdCB2YWwgPSB0aGlzLl9zY3JvbGxQb3NpdGlvblNvdXJjZS5nZXRWYWx1ZSgpO1xuICAgICAgICByZXR1cm4gdmFsW2tleV07XG4gICAgfVxuICAgIHNldFNjcm9sbFBvc2l0aW9uKGtleTogc3RyaW5nLCBzY3JvbGxUb3A6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX3Njcm9sbFBvc2l0aW9uU291cmNlLmdldFZhbHVlKCk7XG4gICAgICAgIHZhbHVlW2tleV0gPSBzY3JvbGxUb3A7XG4gICAgICAgIHRoaXMuX3Njcm9sbFBvc2l0aW9uU291cmNlLm5leHQodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
@@ -6357,6 +6357,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
6357
6357
  type: Injectable
6358
6358
  }], ctorParameters: function () { return [{ type: LocalStorageService }, { type: LogService }, { type: PortalService }, { type: i2$1.SwPush }, { type: i1$1.HttpClient }]; } });
6359
6359
 
6360
+ class SaveScrollPositionService {
6361
+ constructor() {
6362
+ this._scrollPositionSource = new BehaviorSubject({
6363
+ key: 'body',
6364
+ scrollTop: 0
6365
+ });
6366
+ }
6367
+ get scrollPosition$() {
6368
+ return this._scrollPositionSource.asObservable();
6369
+ }
6370
+ getScrollPosition(key) {
6371
+ const val = this._scrollPositionSource.getValue();
6372
+ return val[key];
6373
+ }
6374
+ setScrollPosition(key, scrollTop) {
6375
+ const value = this._scrollPositionSource.getValue();
6376
+ value[key] = scrollTop;
6377
+ this._scrollPositionSource.next(value);
6378
+ }
6379
+ }
6380
+ SaveScrollPositionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: SaveScrollPositionService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
6381
+ SaveScrollPositionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: SaveScrollPositionService });
6382
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImport: i0, type: SaveScrollPositionService, decorators: [{
6383
+ type: Injectable
6384
+ }] });
6385
+
6360
6386
  class FieldBaseComponent extends BaseComponent {
6361
6387
  constructor(_portalService, _bbbPipe, _picFieldSrc, _numeralPipe, _el, _cdr, _renderer2, _activatedRoute, _domSanitizer, _dialogService, _uploadService, _dateService, _audioRecorder, _videoRecoder, _columnService) {
6362
6388
  super();
@@ -6697,12 +6723,6 @@ class FormBaseComponent extends BaseComponent {
6697
6723
  this._onInView(e);
6698
6724
  });
6699
6725
  }
6700
- _onInView(e) {
6701
- if (this.isMobile) {
6702
- this.formVisibilityStatus = e;
6703
- this._cdr.detectChanges();
6704
- }
6705
- }
6706
6726
  ngOnDestroy() {
6707
6727
  super.ngOnDestroy();
6708
6728
  this._formIntersection.unsubscribe();
@@ -6727,6 +6747,12 @@ class FormBaseComponent extends BaseComponent {
6727
6747
  const fieldUi = this.context._listFieldUi.find((c) => c.originalXtype === 'Ui.SearchCommandInfoUi');
6728
6748
  fieldUi.fireEvent(BarsaApi.Ul.FormPanelCtrlr.EventEnum.SearchClick, fieldUi);
6729
6749
  }
6750
+ _onInView(e) {
6751
+ if (this.isMobile) {
6752
+ this.formVisibilityStatus = e;
6753
+ this._cdr.detectChanges();
6754
+ }
6755
+ }
6730
6756
  _addDynamicFormStyles(cssStyles) {
6731
6757
  if (!cssStyles) {
6732
6758
  return;
@@ -12050,6 +12076,7 @@ class BarsaNovinRayCoreModule extends BaseModule {
12050
12076
  PromptUpdateService,
12051
12077
  NotificationService,
12052
12078
  ServiceWorkerNotificationService,
12079
+ SaveScrollPositionService,
12053
12080
  LocalStorageService,
12054
12081
  IndexedDbService,
12055
12082
  BbbTranslatePipe,
@@ -12292,5 +12319,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.7", ngImpor
12292
12319
  * Generated bundle index. Do not edit.
12293
12320
  */
12294
12321
 
12295
- export { APP_VERSION, AffixRespondEvents, AllFilesMimeType, AnchorScrollDirective, ApiService, ApplicationBaseComponent, AttrRtlDirective, AudioMimeType, AudioRecordingService, AuthGuard, BarsaApi, BarsaDialogService, BarsaIconDictPipe, BarsaNovinRayCoreModule, BarsaStorageService, BaseColumnPropsComponent, BaseComponent, BaseDirective, BaseDynamicComponent, BaseFormToolbaritemPropsComponent, BaseItemContentPropsComponent, BaseModule, BaseReportModel, BaseUlvSettingComponent, BaseViewContentPropsComponent, BaseViewItemPropsComponent, BaseViewPropsComponent, BbbTranslatePipe, BodyClickDirective, BoolControlInfoModel, BreadcrumbService, CalculateControlInfoModel, CanUploadFilePipe, CodeEditorControlInfoModel, ColSetting, ColumnCustomComponentPipe, ColumnCustomUiPipe, ColumnIconPipe, ColumnResizerDirective, ColumnService, ColumnValuePipe, CommandControlInfoModel, ContainerComponent, ContainerService, ContextMenuPipe, ControlUiPipe, ConvertToStylePipe, CopyDirective, CustomCommand, CustomInjector, CustomRouteReuseStategy, DIALOG_SERVICE, DateHijriService, DateMiladiService, DateRanges, DateService, DateShamsiService, DateTimeControlInfoModel, DateTimeToCaptionPipe, DeviceWidth, DialogParams, DynamicCommandDirective, DynamicComponentService, DynamicFormComponent, DynamicFormToolbaritemComponent, DynamicItemComponent, DynamicLayoutComponent, EllapsisTextDirective, EllipsifyDirective, EmptyPageComponent, EmptyPageWithRouterAndRouterOutletComponent, EnumControlInfoModel, ExecuteDynamicCommand, ExecuteWorkflowChoiceDef, FORM_DIALOG_COMPONENT, FieldBaseComponent, FieldDirective, FieldInfoTypeEnum, FieldUiComponent, FileControlInfoModel, FileInfoCountPipe, FilePictureInfoModel, FilesValidationHelper, FillEmptySpaceDirective, FilterColumnsByDetailsPipe, FilterPipe, FilterStringPipe, FilterTabPipe, FilterToolbarControlPipe, FindColumnByDbNamePipe, FioriIconPipe, FormBaseComponent, FormCloseDirective, FormComponent, FormNewComponent, FormPageBaseComponent, FormPageComponent, FormPanelService, FormPropsBaseComponent, FormService, FormToolbarBaseComponent, GaugeControlInfoModel, GeneralControlInfoModel, GetAllColumnsSorted, GetDefaultMoObjectInfo, GridSetting, GroupByPipe, HeaderFacetValuePipe, HistoryControlInfoModel, HorizontalLayoutService, IconControlInfoModel, ImageLazyDirective, ImageMimeType, IndexedDbService, InputNumber, IntersectionObserverDirective, IntersectionStatus, ItemsRendererDirective, LayoutItemBaseComponent, LayoutPanelBaseComponent, LayoutService, LinearListControlInfoModel, LinearListHelper, ListCountPipe, ListRelationModel, LocalStorageService, LogService, MergeFieldsToColumnsPipe, MetaobjectDataModel, MetaobjectRelationModel, MoForReportModel, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, MoReportValueConcatPipe, MoReportValuePipe, MoValuePipe, MobileDirective, ModalRootComponent, MultipleGroupByPipe, NOTIFICATAION_POPUP_SERVER, NOTIFICATION_WEBWORKER_FACTORY, NetworkStatusService, NotFoundComponent, NotificationService, NumberBaseComponent, NumberControlInfoModel, NumbersOnlyInputDirective, NumeralPipe, PageBaseComponent, PageWithFormHandlerBaseComponent, PdfMimeType, PictureFieldSourcePipe, PictureFileControlInfoModel, PlaceHolderDirective, PortalDynamicPageResolver, PortalFormPageResolver, PortalPageComponent, PortalPageResolver, PortalReportPageResolver, PortalService, PreventDefaulEvent, PromptUpdateService, RabetehAkseTakiListiControlInfoModel, RedirectHomeGuard, RedirectReportNavigatorCommandComponent, RelatedReportControlInfoModel, RelationListControlInfoModel, RemoveNewlinePipe, RenderUlvPaginDirective, RenderUlvViewerDirective, ReportBaseComponent, ReportBaseInfo, ReportCalendarModel, ReportContainerComponent, ReportExtraInfo, ReportField, ReportFormModel, ReportItemBaseComponent, ReportListModel, ReportModel, ReportTreeModel, ReportViewBaseComponent, ReportViewColumn, ReversePipe, RichStringControlInfoModel, RootPageComponent, RootPortalComponent, RowDataOption, SanitizeTextPipe, SeperatorFixPipe, ServiceWorkerCommuncationService, ServiceWorkerNotificationService, SingleRelationControlInfoModel, SortPipe, SortSetting, StringControlInfoModel, SubformControlInfoModel, SystemBaseComponent, TOAST_SERVICE, TableResizerDirective, TilePropsComponent, TlbButtonsPipe, TotalSummaryPipe, UiService, UlvCommandDirective, UlvMainService, UntilInViewDirective, UploadService, VideoMimeType, VideoRecordingService, VisibleValuePipe, WordMimeType, WorfkflowwChoiceCommandDirective, availablePrefixes, cancelRequestAnimationFrame, createFormPanelMetaConditions, createGridEditorFormPanel, easeInOutCubic, elementInViewport2, enumValueToStringSize, executeUlvCommandHandler, formatBytes, fromIntersectionObserver, genrateInlineMoId, getComponentDefined, getControlList, getControlSizeMode, getDateService, getDeviceIsDesktop, getDeviceIsMobile, getDeviceIsPhone, getDeviceIsTablet, getFieldValue, getFormSettings, getGridSettings, getHeaderValue, getIcon, getImagePath, getLayout94ObjectInfo, getLayoutControl, getNewMoGridEditor, getParentHeight, getRequestAnimationFrame, getTargetRect, getUniqueId, getValidExtension, isFirefox, isFunction, isImage, isTargetWindow, measureText, requestAnimationFramePolyfill, shallowEqual, throwIfAlreadyLoaded, toNumber };
12322
+ export { APP_VERSION, AffixRespondEvents, AllFilesMimeType, AnchorScrollDirective, ApiService, ApplicationBaseComponent, AttrRtlDirective, AudioMimeType, AudioRecordingService, AuthGuard, BarsaApi, BarsaDialogService, BarsaIconDictPipe, BarsaNovinRayCoreModule, BarsaStorageService, BaseColumnPropsComponent, BaseComponent, BaseDirective, BaseDynamicComponent, BaseFormToolbaritemPropsComponent, BaseItemContentPropsComponent, BaseModule, BaseReportModel, BaseUlvSettingComponent, BaseViewContentPropsComponent, BaseViewItemPropsComponent, BaseViewPropsComponent, BbbTranslatePipe, BodyClickDirective, BoolControlInfoModel, BreadcrumbService, CalculateControlInfoModel, CanUploadFilePipe, CodeEditorControlInfoModel, ColSetting, ColumnCustomComponentPipe, ColumnCustomUiPipe, ColumnIconPipe, ColumnResizerDirective, ColumnService, ColumnValuePipe, CommandControlInfoModel, ContainerComponent, ContainerService, ContextMenuPipe, ControlUiPipe, ConvertToStylePipe, CopyDirective, CustomCommand, CustomInjector, CustomRouteReuseStategy, DIALOG_SERVICE, DateHijriService, DateMiladiService, DateRanges, DateService, DateShamsiService, DateTimeControlInfoModel, DateTimeToCaptionPipe, DeviceWidth, DialogParams, DynamicCommandDirective, DynamicComponentService, DynamicFormComponent, DynamicFormToolbaritemComponent, DynamicItemComponent, DynamicLayoutComponent, EllapsisTextDirective, EllipsifyDirective, EmptyPageComponent, EmptyPageWithRouterAndRouterOutletComponent, EnumControlInfoModel, ExecuteDynamicCommand, ExecuteWorkflowChoiceDef, FORM_DIALOG_COMPONENT, FieldBaseComponent, FieldDirective, FieldInfoTypeEnum, FieldUiComponent, FileControlInfoModel, FileInfoCountPipe, FilePictureInfoModel, FilesValidationHelper, FillEmptySpaceDirective, FilterColumnsByDetailsPipe, FilterPipe, FilterStringPipe, FilterTabPipe, FilterToolbarControlPipe, FindColumnByDbNamePipe, FioriIconPipe, FormBaseComponent, FormCloseDirective, FormComponent, FormNewComponent, FormPageBaseComponent, FormPageComponent, FormPanelService, FormPropsBaseComponent, FormService, FormToolbarBaseComponent, GaugeControlInfoModel, GeneralControlInfoModel, GetAllColumnsSorted, GetDefaultMoObjectInfo, GridSetting, GroupByPipe, HeaderFacetValuePipe, HistoryControlInfoModel, HorizontalLayoutService, IconControlInfoModel, ImageLazyDirective, ImageMimeType, IndexedDbService, InputNumber, IntersectionObserverDirective, IntersectionStatus, ItemsRendererDirective, LayoutItemBaseComponent, LayoutPanelBaseComponent, LayoutService, LinearListControlInfoModel, LinearListHelper, ListCountPipe, ListRelationModel, LocalStorageService, LogService, MergeFieldsToColumnsPipe, MetaobjectDataModel, MetaobjectRelationModel, MoForReportModel, MoInfoUlvMoListPipe, MoInfoUlvPagingPipe, MoReportValueConcatPipe, MoReportValuePipe, MoValuePipe, MobileDirective, ModalRootComponent, MultipleGroupByPipe, NOTIFICATAION_POPUP_SERVER, NOTIFICATION_WEBWORKER_FACTORY, NetworkStatusService, NotFoundComponent, NotificationService, NumberBaseComponent, NumberControlInfoModel, NumbersOnlyInputDirective, NumeralPipe, PageBaseComponent, PageWithFormHandlerBaseComponent, PdfMimeType, PictureFieldSourcePipe, PictureFileControlInfoModel, PlaceHolderDirective, PortalDynamicPageResolver, PortalFormPageResolver, PortalPageComponent, PortalPageResolver, PortalReportPageResolver, PortalService, PreventDefaulEvent, PromptUpdateService, RabetehAkseTakiListiControlInfoModel, RedirectHomeGuard, RedirectReportNavigatorCommandComponent, RelatedReportControlInfoModel, RelationListControlInfoModel, RemoveNewlinePipe, RenderUlvPaginDirective, RenderUlvViewerDirective, ReportBaseComponent, ReportBaseInfo, ReportCalendarModel, ReportContainerComponent, ReportExtraInfo, ReportField, ReportFormModel, ReportItemBaseComponent, ReportListModel, ReportModel, ReportTreeModel, ReportViewBaseComponent, ReportViewColumn, ReversePipe, RichStringControlInfoModel, RootPageComponent, RootPortalComponent, RowDataOption, SanitizeTextPipe, SaveScrollPositionService, SeperatorFixPipe, ServiceWorkerCommuncationService, ServiceWorkerNotificationService, SingleRelationControlInfoModel, SortPipe, SortSetting, StringControlInfoModel, SubformControlInfoModel, SystemBaseComponent, TOAST_SERVICE, TableResizerDirective, TilePropsComponent, TlbButtonsPipe, TotalSummaryPipe, UiService, UlvCommandDirective, UlvMainService, UntilInViewDirective, UploadService, VideoMimeType, VideoRecordingService, VisibleValuePipe, WordMimeType, WorfkflowwChoiceCommandDirective, availablePrefixes, cancelRequestAnimationFrame, createFormPanelMetaConditions, createGridEditorFormPanel, easeInOutCubic, elementInViewport2, enumValueToStringSize, executeUlvCommandHandler, formatBytes, fromIntersectionObserver, genrateInlineMoId, getComponentDefined, getControlList, getControlSizeMode, getDateService, getDeviceIsDesktop, getDeviceIsMobile, getDeviceIsPhone, getDeviceIsTablet, getFieldValue, getFormSettings, getGridSettings, getHeaderValue, getIcon, getImagePath, getLayout94ObjectInfo, getLayoutControl, getNewMoGridEditor, getParentHeight, getRequestAnimationFrame, getTargetRect, getUniqueId, getValidExtension, isFirefox, isFunction, isImage, isTargetWindow, measureText, requestAnimationFramePolyfill, shallowEqual, throwIfAlreadyLoaded, toNumber };
12296
12323
  //# sourceMappingURL=barsa-novin-ray-core.mjs.map