@csmart/ngc-smart-core 1.18.22 → 1.18.26

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.
Files changed (22) hide show
  1. package/esm2022/lib/ngc-smart-core.module.mjs +13 -5
  2. package/esm2022/lib/smart-auth/smart-access-control.directive.mjs +4 -4
  3. package/esm2022/lib/smart-auth/smart-auth.service.mjs +4 -4
  4. package/esm2022/lib/smart-auth/smart-authorization-guard.service.mjs +4 -4
  5. package/esm2022/lib/smart-auth/smart-error.component.mjs +4 -4
  6. package/esm2022/lib/smart-auth/smart-login-staff-resolver.service.mjs +4 -4
  7. package/esm2022/lib/smart-auth/smart-selected-offender-resolver.service.mjs +4 -4
  8. package/esm2022/lib/smart-navbar/smart-navbar.component.mjs +4 -4
  9. package/esm2022/lib/smart-navbar/smart-navbar.service.mjs +4 -4
  10. package/esm2022/lib/smart-offender-header/smart-offender-header.component.mjs +32 -8
  11. package/esm2022/lib/smart-offender-header/smart-offender-header.service.mjs +4 -4
  12. package/esm2022/lib/smart-offender-header/smart-offender-redirect.guard.mjs +4 -4
  13. package/esm2022/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.mjs +4 -4
  14. package/esm2022/lib/smart-staff-offender-options/smart-staff-offender-options.component.mjs +4 -4
  15. package/esm2022/lib/smart-staff-offender-options/smart-staff-offender-options.service.mjs +4 -4
  16. package/esm2022/lib/smart-storage/xdm.service.mjs +4 -4
  17. package/esm2022/lib/user-settings/user-settings.service.mjs +43 -43
  18. package/fesm2022/csmart-ngc-smart-core.mjs +126 -95
  19. package/fesm2022/csmart-ngc-smart-core.mjs.map +1 -1
  20. package/lib/ngc-smart-core.module.d.ts +6 -4
  21. package/lib/smart-offender-header/smart-offender-header.component.d.ts +7 -2
  22. package/package.json +1 -1
@@ -120,13 +120,13 @@ export class SmartStaffOffenderOptionsService {
120
120
  }
121
121
  return result;
122
122
  }
123
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SmartStaffOffenderOptionsService, deps: [{ token: i1.HttpClient }, { token: i2.MatSnackBar }, { token: SMART_DATA_SERVICE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
124
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SmartStaffOffenderOptionsService }); }
123
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SmartStaffOffenderOptionsService, deps: [{ token: i1.HttpClient }, { token: i2.MatSnackBar }, { token: SMART_DATA_SERVICE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
124
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SmartStaffOffenderOptionsService }); }
125
125
  }
126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: SmartStaffOffenderOptionsService, decorators: [{
126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SmartStaffOffenderOptionsService, decorators: [{
127
127
  type: Injectable
128
128
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.MatSnackBar }, { type: undefined, decorators: [{
129
129
  type: Inject,
130
130
  args: [SMART_DATA_SERVICE_URL]
131
131
  }] }] });
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3NtYXJ0L25nYy1zbWFydC1jb3JlL3NyYy9saWIvc21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucy9zbWFydC1zdGFmZi1vZmZlbmRlci1vcHRpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFHOUUsTUFBTSxPQUFPLGdDQUFnQztJQUMzQyxZQUNVLElBQWdCLEVBQ2hCLFdBQXdCLEVBQ1EsYUFBYTtRQUY3QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ1Esa0JBQWEsR0FBYixhQUFhLENBQUE7SUFDcEQsQ0FBQztJQUVHLFdBQVcsQ0FBQyxPQUFPO1FBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUU7WUFDbkMsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCLENBQUMsVUFBZ0I7UUFDekMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hCLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxVQUFVLFlBQVksS0FBSyxFQUFFLENBQUM7WUFDaEMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dC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QUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmcm9tLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcclxuaW1wb3J0IHsgU01BUlRfREFUQV9TRVJWSUNFX1VSTCB9IGZyb20gJy4uL3NtYXJ0LXN0b3JhZ2Uvc21hcnQtc3RvcmFnZS1tb2RlbCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTbWFydFN0YWZmT2ZmZW5kZXJPcHRpb25zU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIG1hdFNuYWNrQmFyOiBNYXRTbmFja0JhcixcclxuICAgIEBJbmplY3QoU01BUlRfREFUQV9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzZXJ2aWNlQXBpVXJsLFxyXG4gICkge31cclxuXHJcbiAgcHVibGljIHNob3dNZXNzYWdlKG1lc3NhZ2UpIHtcclxuICAgIHRoaXMubWF0U25hY2tCYXIub3BlbihtZXNzYWdlLCBudWxsLCB7XHJcbiAgICAgIGR1cmF0aW9uOiAyMDAwLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbnZlcnRFbXB0eVRvTnVsbChqc29uT2JqZWN0OiBKU09OKSB7XHJcbiAgICBpZiAoIWpzb25PYmplY3QpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChqc29uT2JqZWN0IGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAganNvbk9iamVjdC5mb3JFYWNoKChvYmopID0+IHtcclxuICAgICAgICB0aGlzLmNvbnZlcnRFbXB0eVRvTnVsbChvYmopO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoanNvbk9iamVjdCk7XHJcbiAgICBrZXlzLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICBpZiAodHlwZW9mIGpzb25PYmplY3Rba2V5XSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICB0aGlzLmNvbnZlcnRFbXB0eVRvTnVsbChqc29uT2JqZWN0W2tleV0pO1xyXG4gICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgIHR5cGVvZiBqc29uT2JqZWN0W2tleV0gPT09ICdzdHJpbmcnICYmXHJcbiAgICAgICAganNvbk9iamVjdFtrZXldLnRyaW0oKSA9PT0gJydcclxuICAgICAgKSB7XHJcbiAgICAgICAganNvbk9iamVjdFtrZXldID0gbnVsbDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEdyYXBoUXVlcnlEYXRhKFxyXG4gICAgcXVlcnlOYW1lOiBzdHJpbmcsXHJcbiAgICBxdWVyeVN0cmluZzogc3RyaW5nLFxyXG4gICk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih0aGlzLnNlcnZpY2VBcGlVcmwsIHsgcXVlcnk6IHF1ZXJ5U3RyaW5nIH0pLnBpcGUoXHJcbiAgICAgIG1hcCgoeyBkYXRhIH0pID0+IHtcclxuICAgICAgICByZXR1cm4gZGF0YVtxdWVyeU5hbWVdO1xyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRPZmZlbmRlckxpc3RPcHRpb25zKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBxdWVyeVN0cmluZyA9IGB7ZmluZE9mZmVuZGVyTGlzdE9wdGlvbnMoaW5wdXQ6e1xyXG4gICAgICB3aGVyZTp7XHJcbiAgICAgICAgZGVhY3RpdmF0ZWREYXRlOiBudWxsXHJcbiAgICAgIH1cclxuICAgIH0pe1xyXG4gICAgICBkYXRhe1xyXG4gICAgICAgIG9mZmVuZGVyTGlzdE9wdGlvbklkXHJcbiAgICAgICAgICBuYW1lXHJcbiAgICAgICAgICBzZXJ2aWNlQXBpRmllbGROYW1lXHJcbiAgICAgIH1cclxuICB9IH1gO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KHRoaXMuc2VydmljZUFwaVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkucGlwZShcclxuICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBkYXRhWydmaW5kT2ZmZW5kZXJMaXN0T3B0aW9ucyddO1xyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zKHN0YWZmSWQ6IG51bWJlcik6IE9ic2VydmFibGU8QXJyYXk8YW55Pj4ge1xyXG4gICAgY29uc3QgcXVlcnlTdHJpbmcgPSBge2ZpbmRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoaW5wdXQ6e1xyXG4gICAgICB3aGVyZTp7XHJcbiAgICAgICAgc3RhZmZJZDogJHtzdGFmZklkfVxyXG4gICAgICB9XHJcbiAgICB9KXtcclxuICAgICAgZGF0YXtcclxuICAgICAgICBvZmZlbmRlckxpc3RPcHRpb25JZFxyXG4gICAgICB9XHJcbiAgfSB9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KHRoaXMuc2VydmljZUFwaVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkucGlwZShcclxuICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBkYXRhLmZpbmRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YTtcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2F2ZVN0YWZmT2ZmZW5kZXJMaXN0T3B0aW9uc0RhdGEoZGF0YVRvU2F2ZTogYW55KSB7XHJcbiAgICAvL306IE9ic2VydmFibGU8YW55PiB7XHJcblxyXG4gICAgLy8gdGhpcy5jb252ZXJ0RW1wdHlUb051bGwoZGF0YVRvU2F2ZSk7XHJcbiAgICBjb25zdCBxdWVyeU5hbWUgPSAndXBzZXJ0U3RhZmZPZmZlbmRlckxpc3RPcHRpb24nO1xyXG4gICAgY29uc3QgcXVlcnkgPSBgbXV0YXRpb24gIHtcclxuICAgICAgICAgICAgdXBzZXJ0U3RhZmZPZmZlbmRlckxpc3RPcHRpb24oaW5wdXQ6ICR7dGhpcy5jb252ZXJ0VG9TdHJpbmcoXHJcbiAgICAgICAgICAgICAgZGF0YVRvU2F2ZSxcclxuICAgICAgICAgICAgKX0pIHtcclxuICAgICAgICAgICAgbWVzc2FnZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1gO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KHRoaXMuc2VydmljZUFwaVVybCwgeyBxdWVyeSB9KTtcclxuICAgIC8qLnBpcGUoXHJcbiAgICAgIG1hcCgoeyBkYXRhIH0pID0+IHtcclxuICAgICAgICByZXR1cm4gZGF0YVtxdWVyeU5hbWVdO1xyXG4gICAgICB9KSk7Ki9cclxuICB9XHJcblxyXG4gIGNvbnZlcnRUb1N0cmluZyhvYmopOiBzdHJpbmcge1xyXG4gICAgbGV0IHJlc3VsdCA9ICcnO1xyXG5cclxuICAgIGlmICghb2JqKSB7XHJcbiAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG9iaiBpbnN0YW5jZW9mIEFycmF5KSB7XHJcbiAgICAgIHJlc3VsdCArPSAnIFsnO1xyXG4gICAgICBvYmouZm9yRWFjaCgoZU9iaikgPT4ge1xyXG4gICAgICAgIHJlc3VsdCArPSB0aGlzLmNvbnZlcnRUb1N0cmluZyhlT2JqKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJlc3VsdCArPSAnXSwnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmVzdWx0ICs9ICd7JztcclxuICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iaik7XHJcbiAgICAgIGtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgaWYgKHR5cGVvZiBvYmpba2V5XSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgIHJlc3VsdCArPSBrZXkgKyAnOicgKyB0aGlzLmNvbnZlcnRUb1N0cmluZyhvYmpba2V5XSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChpc05hTihvYmpba2V5XSkpIHtcclxuICAgICAgICAgICAgcmVzdWx0ICs9IGtleSArICc6XCInICsgb2JqW2tleV0gKyAnXCIsJztcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc3VsdCArPSBrZXkgKyAnOicgKyBvYmpba2V5XSArICcsJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXN1bHQgPSByZXN1bHQuc3Vic3RyaW5nKDAsIHJlc3VsdC5sZW5ndGggLSAxKTtcclxuICAgICAgcmVzdWx0ICs9ICd9LCc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxufVxyXG4iXX0=
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3NtYXJ0L25nYy1zbWFydC1jb3JlL3NyYy9saWIvc21hcnQtc3RhZmYtb2ZmZW5kZXItb3B0aW9ucy9zbWFydC1zdGFmZi1vZmZlbmRlci1vcHRpb25zLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWxELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7QUFHOUUsTUFBTSxPQUFPLGdDQUFnQztJQUMzQyxZQUNVLElBQWdCLEVBQ2hCLFdBQXdCLEVBQ1EsYUFBYTtRQUY3QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ1Esa0JBQWEsR0FBYixhQUFhLENBQUE7SUFDcEQsQ0FBQztJQUVHLFdBQVcsQ0FBQyxPQUFPO1FBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUU7WUFDbkMsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sa0JBQWtCLENBQUMsVUFBZ0I7UUFDekMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hCLE9BQU87UUFDVCxDQUFDO1FBRUQsSUFBSSxVQUFVLFlBQVksS0FBSyxFQUFFLENBQUM7WUFDaEMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO2dC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QUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmcm9tLCBvZiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcclxuaW1wb3J0IHsgU01BUlRfREFUQV9TRVJWSUNFX1VSTCB9IGZyb20gJy4uL3NtYXJ0LXN0b3JhZ2Uvc21hcnQtc3RvcmFnZS1tb2RlbCc7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBTbWFydFN0YWZmT2ZmZW5kZXJPcHRpb25zU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXHJcbiAgICBwcml2YXRlIG1hdFNuYWNrQmFyOiBNYXRTbmFja0JhcixcclxuICAgIEBJbmplY3QoU01BUlRfREFUQV9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzZXJ2aWNlQXBpVXJsLFxyXG4gICkge31cclxuXHJcbiAgcHVibGljIHNob3dNZXNzYWdlKG1lc3NhZ2UpIHtcclxuICAgIHRoaXMubWF0U25hY2tCYXIub3BlbihtZXNzYWdlLCBudWxsLCB7XHJcbiAgICAgIGR1cmF0aW9uOiAyMDAwLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNvbnZlcnRFbXB0eVRvTnVsbChqc29uT2JqZWN0OiBKU09OKSB7XHJcbiAgICBpZiAoIWpzb25PYmplY3QpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChqc29uT2JqZWN0IGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAganNvbk9iamVjdC5mb3JFYWNoKChvYmopID0+IHtcclxuICAgICAgICB0aGlzLmNvbnZlcnRFbXB0eVRvTnVsbChvYmopO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBrZXlzID0gT2JqZWN0LmtleXMoanNvbk9iamVjdCk7XHJcbiAgICBrZXlzLmZvckVhY2goKGtleSkgPT4ge1xyXG4gICAgICBpZiAodHlwZW9mIGpzb25PYmplY3Rba2V5XSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICB0aGlzLmNvbnZlcnRFbXB0eVRvTnVsbChqc29uT2JqZWN0W2tleV0pO1xyXG4gICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgIHR5cGVvZiBqc29uT2JqZWN0W2tleV0gPT09ICdzdHJpbmcnICYmXHJcbiAgICAgICAganNvbk9iamVjdFtrZXldLnRyaW0oKSA9PT0gJydcclxuICAgICAgKSB7XHJcbiAgICAgICAganNvbk9iamVjdFtrZXldID0gbnVsbDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEdyYXBoUXVlcnlEYXRhKFxyXG4gICAgcXVlcnlOYW1lOiBzdHJpbmcsXHJcbiAgICBxdWVyeVN0cmluZzogc3RyaW5nLFxyXG4gICk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8YW55Pih0aGlzLnNlcnZpY2VBcGlVcmwsIHsgcXVlcnk6IHF1ZXJ5U3RyaW5nIH0pLnBpcGUoXHJcbiAgICAgIG1hcCgoeyBkYXRhIH0pID0+IHtcclxuICAgICAgICByZXR1cm4gZGF0YVtxdWVyeU5hbWVdO1xyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRPZmZlbmRlckxpc3RPcHRpb25zKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBxdWVyeVN0cmluZyA9IGB7ZmluZE9mZmVuZGVyTGlzdE9wdGlvbnMoaW5wdXQ6e1xyXG4gICAgICB3aGVyZTp7XHJcbiAgICAgICAgZGVhY3RpdmF0ZWREYXRlOiBudWxsXHJcbiAgICAgIH1cclxuICAgIH0pe1xyXG4gICAgICBkYXRhe1xyXG4gICAgICAgIG9mZmVuZGVyTGlzdE9wdGlvbklkXHJcbiAgICAgICAgICBuYW1lXHJcbiAgICAgICAgICBzZXJ2aWNlQXBpRmllbGROYW1lXHJcbiAgICAgIH1cclxuICB9IH1gO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KHRoaXMuc2VydmljZUFwaVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkucGlwZShcclxuICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBkYXRhWydmaW5kT2ZmZW5kZXJMaXN0T3B0aW9ucyddO1xyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zKHN0YWZmSWQ6IG51bWJlcik6IE9ic2VydmFibGU8QXJyYXk8YW55Pj4ge1xyXG4gICAgY29uc3QgcXVlcnlTdHJpbmcgPSBge2ZpbmRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoaW5wdXQ6e1xyXG4gICAgICB3aGVyZTp7XHJcbiAgICAgICAgc3RhZmZJZDogJHtzdGFmZklkfVxyXG4gICAgICB9XHJcbiAgICB9KXtcclxuICAgICAgZGF0YXtcclxuICAgICAgICBvZmZlbmRlckxpc3RPcHRpb25JZFxyXG4gICAgICB9XHJcbiAgfSB9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KHRoaXMuc2VydmljZUFwaVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkucGlwZShcclxuICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xyXG4gICAgICAgIHJldHVybiBkYXRhLmZpbmRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YTtcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgc2F2ZVN0YWZmT2ZmZW5kZXJMaXN0T3B0aW9uc0RhdGEoZGF0YVRvU2F2ZTogYW55KSB7XHJcbiAgICAvL306IE9ic2VydmFibGU8YW55PiB7XHJcblxyXG4gICAgLy8gdGhpcy5jb252ZXJ0RW1wdHlUb051bGwoZGF0YVRvU2F2ZSk7XHJcbiAgICBjb25zdCBxdWVyeU5hbWUgPSAndXBzZXJ0U3RhZmZPZmZlbmRlckxpc3RPcHRpb24nO1xyXG4gICAgY29uc3QgcXVlcnkgPSBgbXV0YXRpb24gIHtcclxuICAgICAgICAgICAgdXBzZXJ0U3RhZmZPZmZlbmRlckxpc3RPcHRpb24oaW5wdXQ6ICR7dGhpcy5jb252ZXJ0VG9TdHJpbmcoXHJcbiAgICAgICAgICAgICAgZGF0YVRvU2F2ZSxcclxuICAgICAgICAgICAgKX0pIHtcclxuICAgICAgICAgICAgbWVzc2FnZVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1gO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxhbnk+KHRoaXMuc2VydmljZUFwaVVybCwgeyBxdWVyeSB9KTtcclxuICAgIC8qLnBpcGUoXHJcbiAgICAgIG1hcCgoeyBkYXRhIH0pID0+IHtcclxuICAgICAgICByZXR1cm4gZGF0YVtxdWVyeU5hbWVdO1xyXG4gICAgICB9KSk7Ki9cclxuICB9XHJcblxyXG4gIGNvbnZlcnRUb1N0cmluZyhvYmopOiBzdHJpbmcge1xyXG4gICAgbGV0IHJlc3VsdCA9ICcnO1xyXG5cclxuICAgIGlmICghb2JqKSB7XHJcbiAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG9iaiBpbnN0YW5jZW9mIEFycmF5KSB7XHJcbiAgICAgIHJlc3VsdCArPSAnIFsnO1xyXG4gICAgICBvYmouZm9yRWFjaCgoZU9iaikgPT4ge1xyXG4gICAgICAgIHJlc3VsdCArPSB0aGlzLmNvbnZlcnRUb1N0cmluZyhlT2JqKTtcclxuICAgICAgfSk7XHJcbiAgICAgIHJlc3VsdCArPSAnXSwnO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmVzdWx0ICs9ICd7JztcclxuICAgICAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iaik7XHJcbiAgICAgIGtleXMuZm9yRWFjaCgoa2V5KSA9PiB7XHJcbiAgICAgICAgaWYgKHR5cGVvZiBvYmpba2V5XSA9PT0gJ29iamVjdCcpIHtcclxuICAgICAgICAgIHJlc3VsdCArPSBrZXkgKyAnOicgKyB0aGlzLmNvbnZlcnRUb1N0cmluZyhvYmpba2V5XSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChpc05hTihvYmpba2V5XSkpIHtcclxuICAgICAgICAgICAgcmVzdWx0ICs9IGtleSArICc6XCInICsgb2JqW2tleV0gKyAnXCIsJztcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc3VsdCArPSBrZXkgKyAnOicgKyBvYmpba2V5XSArICcsJztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICByZXN1bHQgPSByZXN1bHQuc3Vic3RyaW5nKDAsIHJlc3VsdC5sZW5ndGggLSAxKTtcclxuICAgICAgcmVzdWx0ICs9ICd9LCc7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -181,10 +181,10 @@ export class XdmService {
181
181
  throw error;
182
182
  }));
183
183
  }
184
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: XdmService, deps: [{ token: DOCUMENT }, { token: SMART_WEB_STORAGE_LISTENER_URL }, { token: i1.HttpClient }, { token: SMART_DATA_SERVICE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
185
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: XdmService, providedIn: 'root' }); }
184
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: XdmService, deps: [{ token: DOCUMENT }, { token: SMART_WEB_STORAGE_LISTENER_URL }, { token: i1.HttpClient }, { token: SMART_DATA_SERVICE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
185
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: XdmService, providedIn: 'root' }); }
186
186
  }
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: XdmService, decorators: [{
187
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: XdmService, decorators: [{
188
188
  type: Injectable,
189
189
  args: [{
190
190
  providedIn: 'root',
@@ -199,4 +199,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
199
199
  type: Inject,
200
200
  args: [SMART_DATA_SERVICE_URL]
201
201
  }] }] });
202
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGRtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jc21hcnQvbmdjLXNtYXJ0LWNvcmUvc3JjL2xpYi9zbWFydC1zdG9yYWdlL3hkbS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFJTCxVQUFVLEVBQ1YsOEJBQThCLEVBQzlCLHNCQUFzQixHQUV2QixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLDBEQUEwRDtBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBS2xELE1BQU0sT0FBTyxVQUFVO0lBTXJCLFlBQzRCLFFBQWEsRUFFL0IsdUJBQStCLEVBQy9CLFVBQXNCLEVBQ1UsbUJBQW1CO1FBSmpDLGFBQVEsR0FBUixRQUFRLENBQUs7UUFFL0IsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFRO1FBQy9CLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDVSx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQUE7UUFWckQsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBMkIsQ0FBQztRQUN6RCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFxQixDQUFDO1FBQ2hELHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUF3QixDQUFDO1FBVWpFLElBQUksU0FBUyxFQUFFLENBQUM7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Q0FBQyxFQUFDLENBQUMsQ0FBQztZQUN2RCxPQUFPLGdCQUFnQixDQUFDO1FBQzFCLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzNELE1BQU0sS0FBSyxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUNELENBQUM7SUFDSixDQUFDO2lJQXROVSxVQUFVLGtCQU9YLFFBQVEsYUFDUiw4QkFBOEIsdUNBRzlCLHNCQUFzQjtxSUFYckIsVUFBVSxjQUZULE1BQU07OzJGQUVQLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFRSSxNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsOEJBQThCOzswQkFHckMsTUFBTTsyQkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIGlzRGV2TW9kZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFN1YmplY3QsIE9ic2VydmFibGUsIG9mLCBmcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7XHJcbiAgU2VsZWN0ZWRPZmZlbmRlcixcclxuICBMb2dpblN0YWZmLFxyXG4gIE9mZmVuZGVyUXVlcnksXHJcbiAgU3RvcmFnZUtleSxcclxuICBTTUFSVF9XRUJfU1RPUkFHRV9MSVNURU5FUl9VUkwsXHJcbiAgU01BUlRfREFUQV9TRVJWSUNFX1VSTCxcclxuICBPcHRpb24sXHJcbn0gZnJvbSAnLi9zbWFydC1zdG9yYWdlLW1vZGVsJztcclxuXHJcbi8vIGltcG9ydCBjb25uZWN0VG9DaGlsZCBmcm9tIFwicGVucGFsL2xpYi9jb25uZWN0VG9DaGlsZFwiO1xyXG5pbXBvcnQgeyBjb25uZWN0VG9DaGlsZCB9IGZyb20gJ3BlbnBhbCc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWGRtU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBvZmZlbmRlclN1YmplY3QgPSBuZXcgU3ViamVjdDxTZWxlY3RlZE9mZmVuZGVyIHwgdm9pZD4oKTtcclxuICBwcml2YXRlIHN0YWZmU3ViamVjdCA9IG5ldyBTdWJqZWN0PExvZ2luU3RhZmYgfCB2b2lkPigpO1xyXG4gIHByaXZhdGUgb2ZmZW5kZXJRdWVyeVN1YmplY3QgPSBuZXcgU3ViamVjdDxPZmZlbmRlclF1ZXJ5IHwgdm9pZD4oKTtcclxuICBwcml2YXRlIGNvbm5lY3Rpb246IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnksXHJcbiAgICBASW5qZWN0KFNNQVJUX1dFQl9TVE9SQUdFX0xJU1RFTkVSX1VSTClcclxuICAgIHByaXZhdGUgc21hcnRTdG9yYWdlTGlzdGVuZXJVcmw6IHN0cmluZyxcclxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgIEBJbmplY3QoU01BUlRfREFUQV9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzbWFydERhdGFTZXJ2aWNlVXJsLFxyXG4gICkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSkge1xyXG4gICAgICBjb25zb2xlLmxvZygnU21hcnRTdG9yYWdlIFhkbVNlcnZpY2UgKENsaWVudCkgLSBjb25zdHJ1Y3RvcigpJyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmluaXQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZyYW1lID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpZnJhbWUnKTtcclxuICAgIGZyYW1lLnNyYyA9IHRoaXMuc21hcnRTdG9yYWdlTGlzdGVuZXJVcmw7XHJcbiAgICBmcmFtZS5pZCA9ICdjaGlsZGZyYW1lJztcclxuICAgIGZyYW1lLm5hbWUgPSBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKCk7XHJcbiAgICBmcmFtZS5vbmxvYWQgPSBudWxsO1xyXG4gICAgLy9mcmFtZS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XHJcbiAgICBmcmFtZS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gICAgdGhpcy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKTtcclxuXHJcbiAgICB0aGlzLmNvbm5lY3Rpb24gPSBjb25uZWN0VG9DaGlsZCh7XHJcbiAgICAgIGlmcmFtZTogZnJhbWUsXHJcbiAgICAgIGRlYnVnOiBmYWxzZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoXHJcbiAgICBzdGFmZklkOiBudW1iZXIsXHJcbiAgKTogT2JzZXJ2YWJsZTxBcnJheTxPcHRpb24+PiB7XHJcbiAgICBjb25zdCBxdWVyeVN0cmluZyA9IGB7ZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoaW5wdXQ6e1xyXG4gICAgICAgIHdoZXJlOntcclxuICAgICAgICAgIHN0YWZmSWQ6ICR7c3RhZmZJZH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pe1xyXG4gICAgICAgIGRhdGF7XHJcbiAgICAgICAgICBvZmZlbmRlckxpc3RPcHRpb25JZFxyXG4gICAgICAgICAgbmFtZVxyXG4gICAgICAgICAgc2VydmljZUFwaUZpZWxkTmFtZVxyXG4gICAgICAgICAgc2VsZWN0ZWRGbGFnXHJcbiAgICAgICAgfVxyXG4gICAgfSB9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnBvc3Q8YW55Pih0aGlzLnNtYXJ0RGF0YVNlcnZpY2VVcmwsIHsgcXVlcnk6IHF1ZXJ5U3RyaW5nIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IHtcclxuICAgICAgICAgIGRhdGEuZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YVsnb2ZmZW5kZXJPcHRpb25MaXN0SWQnXSA9XHJcbiAgICAgICAgICAgIGRhdGEuZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YVsnb2ZmZW5kZXJMaXN0T3B0aW9uSWQnXTtcclxuICAgICAgICAgIHJldHVybiBkYXRhLmZpbmR2U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zLmRhdGE7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICk7XHJcbiAgICAvKnJldHVybiBvZihbXHJcbiAgICAgIHsgb2ZmZW5kZXJMaXN0T3B0aW9uSWQ6ICdnZW5kZXJDb2RlJywgbmFtZTogJycsIHNlbGVjdGVkRmxhZzogdHJ1ZSB9XSk7Ki9cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyQWxsKCk7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgdGhpcy5zdGFmZlN1YmplY3QubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIE9mZmVuZGVyXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIHB1YmxpYyBzZXRTZWxlY3RlZE9mZmVuZGVyKHNlbGVjdGVkT2ZmZW5kZXI6IFNlbGVjdGVkT2ZmZW5kZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLnNldFNlbGVjdGVkT2ZmZW5kZXIoc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJTdWJqZWN0Lm5leHQoc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmdldExvZ2luU3RhZmYoKS50aGVuKChsb2dpblN0YWZmKSA9PiB7XHJcbiAgICAgIGxldCBub3cgPSAobmV3IERhdGUoKSkudG9JU09TdHJpbmcoKTtcclxuICAgICAgY29uc3QgcXVlcnlTdHJpbmcgPSBgbXV0YXRpb24geyBjcmVhdGVTdGFmZk9mZmVuZGVyQWNjZXNzKGlucHV0OiB7XHJcbiAgICAgICAgc3RhZmZJZDogJHtsb2dpblN0YWZmLnN0YWZmSWR9LFxyXG4gICAgICAgIG9mZmVuZGVySWQ6ICR7c2VsZWN0ZWRPZmZlbmRlci5vZmZlbmRlcklkfSxcclxuICAgICAgICBhY2Nlc3NEYXRlOiBcIiR7bm93fVwiXHJcbiAgICAgIH0pIHtcclxuICAgICAgICBkYXRhIHtcclxuICAgICAgICAgIHN0YWZmT2ZmZW5kZXJBY2Nlc3NJZFxyXG4gICAgICAgIH1cclxuICAgICAgfX1gO1xyXG4gICAgICB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkuc3Vic2NyaWJlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTZWxlY3RlZE9mZmVuZGVyKCk6IFByb21pc2U8U2VsZWN0ZWRPZmZlbmRlcj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PlxyXG4gICAgICBjaGlsZC5nZXRTZWxlY3RlZE9mZmVuZGVyKFN0b3JhZ2VLZXkuc2VsZWN0ZWRPZmZlbmRlciksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyU2VsZWN0ZWRPZmZlbmRlcigpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyU2VsZWN0ZWRPZmZlbmRlcigpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyU3ViamVjdC5uZXh0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPZmZlbmRlclVwZGF0ZSgpOiBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+IHtcclxuICAgIHJldHVybiB0aGlzLm9mZmVuZGVyU3ViamVjdC5hc09ic2VydmFibGUoKSBhcyBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+O1xyXG4gIH1cclxuXHJcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIFN0YWZmXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICBwdWJsaWMgc2V0TG9naW5TdGFmZihsb2dpblN0YWZmOiBMb2dpblN0YWZmKSB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5zZXRMb2dpblN0YWZmKGxvZ2luU3RhZmYpO1xyXG4gICAgICB0aGlzLnN0YWZmU3ViamVjdC5uZXh0KGxvZ2luU3RhZmYpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TG9naW5TdGFmZigpOiBQcm9taXNlPExvZ2luU3RhZmY+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT5cclxuICAgICAgY2hpbGQuZ2V0TG9naW5TdGFmZihTdG9yYWdlS2V5LmxvZ2luU3RhZmYpLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckxvZ2luU3RhZmYoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5jbGVhckxvZ2luU3RhZmYoKTtcclxuICAgICAgdGhpcy5zdGFmZlN1YmplY3QubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhZmZVcGRhdGUoKTogT2JzZXJ2YWJsZTxMb2dpblN0YWZmPiB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGFmZlN1YmplY3QuYXNPYnNlcnZhYmxlKCkgYXMgT2JzZXJ2YWJsZTxMb2dpblN0YWZmPjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWZyZXNoTG9naW5TdGFmZk9wdGlvbnMoKSB7XHJcbiAgICB0aGlzLmdldExvZ2luU3RhZmYoKS50aGVuKChvbGRMb2dpblN0YWZmKSA9PiB7XHJcbiAgICAgIHRoaXMuZ2V0U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zKG9sZExvZ2luU3RhZmYuc3RhZmZJZCkuc3Vic2NyaWJlKFxyXG4gICAgICAgIChvcHRpb25EYXRhKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhvcHRpb25EYXRhKTtcclxuICAgICAgICAgIG9sZExvZ2luU3RhZmYub3B0aW9ucyA9IG9wdGlvbkRhdGE7XHJcbiAgICAgICAgICB0aGlzLnNldExvZ2luU3RhZmYob2xkTG9naW5TdGFmZik7XHJcbiAgICAgICAgfSxcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIE9mZmVuZGVyIFF1ZXJ5XHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICBwdWJsaWMgc2V0T2ZmZW5kZXJRdWVyeShvZmZlbmRlclF1ZXJ5OiBPZmZlbmRlclF1ZXJ5KSB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5zZXRPZmZlbmRlclF1ZXJ5KG9mZmVuZGVyUXVlcnkpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyUXVlcnlTdWJqZWN0Lm5leHQob2ZmZW5kZXJRdWVyeSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPZmZlbmRlclF1ZXJ5KCk6IFByb21pc2U8T2ZmZW5kZXJRdWVyeT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PlxyXG4gICAgICBjaGlsZC5nZXRPZmZlbmRlclF1ZXJ5KFN0b3JhZ2VLZXkub2ZmZW5kZXJRdWVyeSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyT2ZmZW5kZXJRdWVyeSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyT2ZmZW5kZXJRdWVyeSgpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyUXVlcnlTdWJqZWN0Lm5leHQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE9mZmVuZGVyUXVlcnlVcGRhdGUoKTogT2JzZXJ2YWJsZTxPZmZlbmRlclF1ZXJ5PiB7XHJcbiAgICByZXR1cm4gdGhpcy5vZmZlbmRlclF1ZXJ5U3ViamVjdC5hc09ic2VydmFibGUoKSBhcyBPYnNlcnZhYmxlPE9mZmVuZGVyUXVlcnk+O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFNlbGVjdGVkT2ZmZW5kZXJGcm9tUm91dGUob2ZmZW5kZXJJZDogbnVtYmVyLCBpbnRha2VGbGFnOiBib29sZWFuKTogT2JzZXJ2YWJsZTxTZWxlY3RlZE9mZmVuZGVyPiB7XHJcbiAgICByZXR1cm4gZnJvbSh0aGlzLmdldExvZ2luU3RhZmYoKSkucGlwZShcclxuICAgICAgc3dpdGNoTWFwKGxvZ2luU3RhZmYgPT4ge1xyXG4gICAgICAgIGNvbnN0IHF1ZXJ5U3RyaW5nID0gYHtcclxuICAgICAgICAgIGdldFNlbGVjdGVkT2ZmZW5kZXIoaW5wdXQ6IHsgXHJcbiAgICAgICAgICAgIG9mZmVuZGVySWQ6ICR7b2ZmZW5kZXJJZH0sXHJcbiAgICAgICAgICAgIHN0YWZmSWQ6ICR7bG9naW5TdGFmZi5zdGFmZklkfVxyXG4gICAgICAgICAgfSl7XHJcbiAgICAgICAgICAgIGRhdGF7XHJcbiAgICAgICAgICAgICAgb2ZmZW5kZXJJZFxyXG4gICAgICAgICAgICAgIG5hbWU6IG9mZmVuZGVyTmFtZVxyXG4gICAgICAgICAgICAgIHBkSWRcclxuICAgICAgICAgICAgICBiaXJ0aERhdGVcclxuICAgICAgICAgICAgICBnZW5kZXJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1gO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkucGlwZShcclxuICAgICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IGRhdGEuZ2V0U2VsZWN0ZWRPZmZlbmRlci5kYXRhKSxcclxuICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdIVFRQIHJlcXVlc3QgZXJyb3I6JywgZXJyb3IpO1xyXG4gICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7IFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgfSksXHJcbiAgICAgIG1hcChzZWxlY3RlZE9mZmVuZGVyID0+IHtcclxuICAgICAgICBzZWxlY3RlZE9mZmVuZGVyLmludGFrZUZsYWcgPSBpbnRha2VGbGFnO1xyXG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRPZmZlbmRlcihzZWxlY3RlZE9mZmVuZGVyKTtcclxuICAgICAgICB0aGlzLnNldE9mZmVuZGVyUXVlcnkoe29mZmVuZGVyczogW3NlbGVjdGVkT2ZmZW5kZXJdfSk7XHJcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkT2ZmZW5kZXI7XHJcbiAgICAgIH0pLFxyXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBpbiBwcm9jZXNzaW5nIG9mZmVuZGVyIGRhdGE6JywgZXJyb3IpO1xyXG4gICAgICAgIHRocm93IGVycm9yOyBcclxuICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxufSJdfQ==
202
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGRtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jc21hcnQvbmdjLXNtYXJ0LWNvcmUvc3JjL2xpYi9zbWFydC1zdG9yYWdlL3hkbS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBTyxNQUFNLGdCQUFnQixDQUFDO0FBQ2pFLE9BQU8sRUFJTCxVQUFVLEVBQ1YsOEJBQThCLEVBQzlCLHNCQUFzQixHQUV2QixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLDBEQUEwRDtBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBS2xELE1BQU0sT0FBTyxVQUFVO0lBTXJCLFlBQzRCLFFBQWEsRUFFL0IsdUJBQStCLEVBQy9CLFVBQXNCLEVBQ1UsbUJBQW1CO1FBSmpDLGFBQVEsR0FBUixRQUFRLENBQUs7UUFFL0IsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFRO1FBQy9CLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDVSx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQUE7UUFWckQsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBMkIsQ0FBQztRQUN6RCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFxQixDQUFDO1FBQ2hELHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUF3QixDQUFDO1FBVWpFLElBQUksU0FBUyxFQUFFLENBQUM7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Q0FBQyxFQUFDLENBQUMsQ0FBQztZQUN2RCxPQUFPLGdCQUFnQixDQUFDO1FBQzFCLENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQzNELE1BQU0sS0FBSyxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUNELENBQUM7SUFDSixDQUFDO2tJQXROVSxVQUFVLGtCQU9YLFFBQVEsYUFDUiw4QkFBOEIsdUNBRzlCLHNCQUFzQjtzSUFYckIsVUFBVSxjQUZULE1BQU07OzRGQUVQLFVBQVU7a0JBSHRCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFRSSxNQUFNOzJCQUFDLFFBQVE7OzBCQUNmLE1BQU07MkJBQUMsOEJBQThCOzswQkFHckMsTUFBTTsyQkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIGlzRGV2TW9kZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFN1YmplY3QsIE9ic2VydmFibGUsIG9mLCBmcm9tIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7XHJcbiAgU2VsZWN0ZWRPZmZlbmRlcixcclxuICBMb2dpblN0YWZmLFxyXG4gIE9mZmVuZGVyUXVlcnksXHJcbiAgU3RvcmFnZUtleSxcclxuICBTTUFSVF9XRUJfU1RPUkFHRV9MSVNURU5FUl9VUkwsXHJcbiAgU01BUlRfREFUQV9TRVJWSUNFX1VSTCxcclxuICBPcHRpb24sXHJcbn0gZnJvbSAnLi9zbWFydC1zdG9yYWdlLW1vZGVsJztcclxuXHJcbi8vIGltcG9ydCBjb25uZWN0VG9DaGlsZCBmcm9tIFwicGVucGFsL2xpYi9jb25uZWN0VG9DaGlsZFwiO1xyXG5pbXBvcnQgeyBjb25uZWN0VG9DaGlsZCB9IGZyb20gJ3BlbnBhbCc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWGRtU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBvZmZlbmRlclN1YmplY3QgPSBuZXcgU3ViamVjdDxTZWxlY3RlZE9mZmVuZGVyIHwgdm9pZD4oKTtcclxuICBwcml2YXRlIHN0YWZmU3ViamVjdCA9IG5ldyBTdWJqZWN0PExvZ2luU3RhZmYgfCB2b2lkPigpO1xyXG4gIHByaXZhdGUgb2ZmZW5kZXJRdWVyeVN1YmplY3QgPSBuZXcgU3ViamVjdDxPZmZlbmRlclF1ZXJ5IHwgdm9pZD4oKTtcclxuICBwcml2YXRlIGNvbm5lY3Rpb246IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnksXHJcbiAgICBASW5qZWN0KFNNQVJUX1dFQl9TVE9SQUdFX0xJU1RFTkVSX1VSTClcclxuICAgIHByaXZhdGUgc21hcnRTdG9yYWdlTGlzdGVuZXJVcmw6IHN0cmluZyxcclxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgIEBJbmplY3QoU01BUlRfREFUQV9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzbWFydERhdGFTZXJ2aWNlVXJsLFxyXG4gICkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSkge1xyXG4gICAgICBjb25zb2xlLmxvZygnU21hcnRTdG9yYWdlIFhkbVNlcnZpY2UgKENsaWVudCkgLSBjb25zdHJ1Y3RvcigpJyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmluaXQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZyYW1lID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpZnJhbWUnKTtcclxuICAgIGZyYW1lLnNyYyA9IHRoaXMuc21hcnRTdG9yYWdlTGlzdGVuZXJVcmw7XHJcbiAgICBmcmFtZS5pZCA9ICdjaGlsZGZyYW1lJztcclxuICAgIGZyYW1lLm5hbWUgPSBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKCk7XHJcbiAgICBmcmFtZS5vbmxvYWQgPSBudWxsO1xyXG4gICAgLy9mcmFtZS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XHJcbiAgICBmcmFtZS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xyXG4gICAgdGhpcy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKTtcclxuXHJcbiAgICB0aGlzLmNvbm5lY3Rpb24gPSBjb25uZWN0VG9DaGlsZCh7XHJcbiAgICAgIGlmcmFtZTogZnJhbWUsXHJcbiAgICAgIGRlYnVnOiBmYWxzZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoXHJcbiAgICBzdGFmZklkOiBudW1iZXIsXHJcbiAgKTogT2JzZXJ2YWJsZTxBcnJheTxPcHRpb24+PiB7XHJcbiAgICBjb25zdCBxdWVyeVN0cmluZyA9IGB7ZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoaW5wdXQ6e1xyXG4gICAgICAgIHdoZXJlOntcclxuICAgICAgICAgIHN0YWZmSWQ6ICR7c3RhZmZJZH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pe1xyXG4gICAgICAgIGRhdGF7XHJcbiAgICAgICAgICBvZmZlbmRlckxpc3RPcHRpb25JZFxyXG4gICAgICAgICAgbmFtZVxyXG4gICAgICAgICAgc2VydmljZUFwaUZpZWxkTmFtZVxyXG4gICAgICAgICAgc2VsZWN0ZWRGbGFnXHJcbiAgICAgICAgfVxyXG4gICAgfSB9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnBvc3Q8YW55Pih0aGlzLnNtYXJ0RGF0YVNlcnZpY2VVcmwsIHsgcXVlcnk6IHF1ZXJ5U3RyaW5nIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IHtcclxuICAgICAgICAgIGRhdGEuZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YVsnb2ZmZW5kZXJPcHRpb25MaXN0SWQnXSA9XHJcbiAgICAgICAgICAgIGRhdGEuZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YVsnb2ZmZW5kZXJMaXN0T3B0aW9uSWQnXTtcclxuICAgICAgICAgIHJldHVybiBkYXRhLmZpbmR2U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zLmRhdGE7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICk7XHJcbiAgICAvKnJldHVybiBvZihbXHJcbiAgICAgIHsgb2ZmZW5kZXJMaXN0T3B0aW9uSWQ6ICdnZW5kZXJDb2RlJywgbmFtZTogJycsIHNlbGVjdGVkRmxhZzogdHJ1ZSB9XSk7Ki9cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyQWxsKCk7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgdGhpcy5zdGFmZlN1YmplY3QubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIE9mZmVuZGVyXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIHB1YmxpYyBzZXRTZWxlY3RlZE9mZmVuZGVyKHNlbGVjdGVkT2ZmZW5kZXI6IFNlbGVjdGVkT2ZmZW5kZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLnNldFNlbGVjdGVkT2ZmZW5kZXIoc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJTdWJqZWN0Lm5leHQoc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmdldExvZ2luU3RhZmYoKS50aGVuKChsb2dpblN0YWZmKSA9PiB7XHJcbiAgICAgIGxldCBub3cgPSAobmV3IERhdGUoKSkudG9JU09TdHJpbmcoKTtcclxuICAgICAgY29uc3QgcXVlcnlTdHJpbmcgPSBgbXV0YXRpb24geyBjcmVhdGVTdGFmZk9mZmVuZGVyQWNjZXNzKGlucHV0OiB7XHJcbiAgICAgICAgc3RhZmZJZDogJHtsb2dpblN0YWZmLnN0YWZmSWR9LFxyXG4gICAgICAgIG9mZmVuZGVySWQ6ICR7c2VsZWN0ZWRPZmZlbmRlci5vZmZlbmRlcklkfSxcclxuICAgICAgICBhY2Nlc3NEYXRlOiBcIiR7bm93fVwiXHJcbiAgICAgIH0pIHtcclxuICAgICAgICBkYXRhIHtcclxuICAgICAgICAgIHN0YWZmT2ZmZW5kZXJBY2Nlc3NJZFxyXG4gICAgICAgIH1cclxuICAgICAgfX1gO1xyXG4gICAgICB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkuc3Vic2NyaWJlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTZWxlY3RlZE9mZmVuZGVyKCk6IFByb21pc2U8U2VsZWN0ZWRPZmZlbmRlcj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PlxyXG4gICAgICBjaGlsZC5nZXRTZWxlY3RlZE9mZmVuZGVyKFN0b3JhZ2VLZXkuc2VsZWN0ZWRPZmZlbmRlciksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyU2VsZWN0ZWRPZmZlbmRlcigpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyU2VsZWN0ZWRPZmZlbmRlcigpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyU3ViamVjdC5uZXh0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPZmZlbmRlclVwZGF0ZSgpOiBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+IHtcclxuICAgIHJldHVybiB0aGlzLm9mZmVuZGVyU3ViamVjdC5hc09ic2VydmFibGUoKSBhcyBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+O1xyXG4gIH1cclxuXHJcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIFN0YWZmXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICBwdWJsaWMgc2V0TG9naW5TdGFmZihsb2dpblN0YWZmOiBMb2dpblN0YWZmKSB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5zZXRMb2dpblN0YWZmKGxvZ2luU3RhZmYpO1xyXG4gICAgICB0aGlzLnN0YWZmU3ViamVjdC5uZXh0KGxvZ2luU3RhZmYpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TG9naW5TdGFmZigpOiBQcm9taXNlPExvZ2luU3RhZmY+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT5cclxuICAgICAgY2hpbGQuZ2V0TG9naW5TdGFmZihTdG9yYWdlS2V5LmxvZ2luU3RhZmYpLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckxvZ2luU3RhZmYoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5jbGVhckxvZ2luU3RhZmYoKTtcclxuICAgICAgdGhpcy5zdGFmZlN1YmplY3QubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhZmZVcGRhdGUoKTogT2JzZXJ2YWJsZTxMb2dpblN0YWZmPiB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGFmZlN1YmplY3QuYXNPYnNlcnZhYmxlKCkgYXMgT2JzZXJ2YWJsZTxMb2dpblN0YWZmPjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWZyZXNoTG9naW5TdGFmZk9wdGlvbnMoKSB7XHJcbiAgICB0aGlzLmdldExvZ2luU3RhZmYoKS50aGVuKChvbGRMb2dpblN0YWZmKSA9PiB7XHJcbiAgICAgIHRoaXMuZ2V0U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zKG9sZExvZ2luU3RhZmYuc3RhZmZJZCkuc3Vic2NyaWJlKFxyXG4gICAgICAgIChvcHRpb25EYXRhKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhvcHRpb25EYXRhKTtcclxuICAgICAgICAgIG9sZExvZ2luU3RhZmYub3B0aW9ucyA9IG9wdGlvbkRhdGE7XHJcbiAgICAgICAgICB0aGlzLnNldExvZ2luU3RhZmYob2xkTG9naW5TdGFmZik7XHJcbiAgICAgICAgfSxcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIE9mZmVuZGVyIFF1ZXJ5XHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICBwdWJsaWMgc2V0T2ZmZW5kZXJRdWVyeShvZmZlbmRlclF1ZXJ5OiBPZmZlbmRlclF1ZXJ5KSB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5zZXRPZmZlbmRlclF1ZXJ5KG9mZmVuZGVyUXVlcnkpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyUXVlcnlTdWJqZWN0Lm5leHQob2ZmZW5kZXJRdWVyeSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPZmZlbmRlclF1ZXJ5KCk6IFByb21pc2U8T2ZmZW5kZXJRdWVyeT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PlxyXG4gICAgICBjaGlsZC5nZXRPZmZlbmRlclF1ZXJ5KFN0b3JhZ2VLZXkub2ZmZW5kZXJRdWVyeSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyT2ZmZW5kZXJRdWVyeSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyT2ZmZW5kZXJRdWVyeSgpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyUXVlcnlTdWJqZWN0Lm5leHQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE9mZmVuZGVyUXVlcnlVcGRhdGUoKTogT2JzZXJ2YWJsZTxPZmZlbmRlclF1ZXJ5PiB7XHJcbiAgICByZXR1cm4gdGhpcy5vZmZlbmRlclF1ZXJ5U3ViamVjdC5hc09ic2VydmFibGUoKSBhcyBPYnNlcnZhYmxlPE9mZmVuZGVyUXVlcnk+O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFNlbGVjdGVkT2ZmZW5kZXJGcm9tUm91dGUob2ZmZW5kZXJJZDogbnVtYmVyLCBpbnRha2VGbGFnOiBib29sZWFuKTogT2JzZXJ2YWJsZTxTZWxlY3RlZE9mZmVuZGVyPiB7XHJcbiAgICByZXR1cm4gZnJvbSh0aGlzLmdldExvZ2luU3RhZmYoKSkucGlwZShcclxuICAgICAgc3dpdGNoTWFwKGxvZ2luU3RhZmYgPT4ge1xyXG4gICAgICAgIGNvbnN0IHF1ZXJ5U3RyaW5nID0gYHtcclxuICAgICAgICAgIGdldFNlbGVjdGVkT2ZmZW5kZXIoaW5wdXQ6IHsgXHJcbiAgICAgICAgICAgIG9mZmVuZGVySWQ6ICR7b2ZmZW5kZXJJZH0sXHJcbiAgICAgICAgICAgIHN0YWZmSWQ6ICR7bG9naW5TdGFmZi5zdGFmZklkfVxyXG4gICAgICAgICAgfSl7XHJcbiAgICAgICAgICAgIGRhdGF7XHJcbiAgICAgICAgICAgICAgb2ZmZW5kZXJJZFxyXG4gICAgICAgICAgICAgIG5hbWU6IG9mZmVuZGVyTmFtZVxyXG4gICAgICAgICAgICAgIHBkSWRcclxuICAgICAgICAgICAgICBiaXJ0aERhdGVcclxuICAgICAgICAgICAgICBnZW5kZXJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1gO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkucGlwZShcclxuICAgICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IGRhdGEuZ2V0U2VsZWN0ZWRPZmZlbmRlci5kYXRhKSxcclxuICAgICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xyXG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdIVFRQIHJlcXVlc3QgZXJyb3I6JywgZXJyb3IpO1xyXG4gICAgICAgICAgICByZXR1cm4gb2YobnVsbCk7IFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgICAgfSksXHJcbiAgICAgIG1hcChzZWxlY3RlZE9mZmVuZGVyID0+IHtcclxuICAgICAgICBzZWxlY3RlZE9mZmVuZGVyLmludGFrZUZsYWcgPSBpbnRha2VGbGFnO1xyXG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRPZmZlbmRlcihzZWxlY3RlZE9mZmVuZGVyKTtcclxuICAgICAgICB0aGlzLnNldE9mZmVuZGVyUXVlcnkoe29mZmVuZGVyczogW3NlbGVjdGVkT2ZmZW5kZXJdfSk7XHJcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkT2ZmZW5kZXI7XHJcbiAgICAgIH0pLFxyXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBpbiBwcm9jZXNzaW5nIG9mZmVuZGVyIGRhdGE6JywgZXJyb3IpO1xyXG4gICAgICAgIHRocm93IGVycm9yOyBcclxuICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxufSJdfQ==
@@ -16,15 +16,15 @@ export class UserSettingsService {
16
16
  * @returns Observable of staff settings array
17
17
  */
18
18
  findStaffSettings(staffId) {
19
- const query = `{
20
- findStaffSettings(input: { where: { staffId: ${staffId} } }) {
21
- data {
22
- staffSettingId
23
- settingKey
24
- settingValue
25
- modifiedBy
26
- }
27
- }
19
+ const query = `{
20
+ findStaffSettings(input: { where: { staffId: ${staffId} } }) {
21
+ data {
22
+ staffSettingId
23
+ settingKey
24
+ settingValue
25
+ modifiedBy
26
+ }
27
+ }
28
28
  }`;
29
29
  return this.httpClient.post(this.smartDataServiceUrl, { query }).pipe(map(response => response?.data?.findStaffSettings?.data || []), catchError(error => {
30
30
  console.error('Error fetching staff settings:', error);
@@ -36,13 +36,13 @@ export class UserSettingsService {
36
36
  * @returns Observable of default settings array
37
37
  */
38
38
  findDefaultSettings() {
39
- const query = `{
40
- findDefaultSettings {
41
- data {
42
- defaultSettingId
43
- settingValue
44
- }
45
- }
39
+ const query = `{
40
+ findDefaultSettings {
41
+ data {
42
+ defaultSettingId
43
+ settingValue
44
+ }
45
+ }
46
46
  }`;
47
47
  return this.httpClient.post(this.smartDataServiceUrl, { query }).pipe(map(response => response?.data?.findDefaultSettings?.data || []), catchError(error => {
48
48
  console.error('Error fetching default settings:', error);
@@ -55,17 +55,17 @@ export class UserSettingsService {
55
55
  * @returns Observable with the created staff setting
56
56
  */
57
57
  createStaffSetting(input) {
58
- const mutation = `
59
- mutation CreateStaffSetting($input: CreateStaffSettingInput!) {
60
- createStaffSetting(input: $input) {
61
- data {
62
- staffSettingId
63
- settingKey
64
- settingValue
65
- }
66
- message
67
- }
68
- }
58
+ const mutation = `
59
+ mutation CreateStaffSetting($input: CreateStaffSettingInput!) {
60
+ createStaffSetting(input: $input) {
61
+ data {
62
+ staffSettingId
63
+ settingKey
64
+ settingValue
65
+ }
66
+ message
67
+ }
68
+ }
69
69
  `;
70
70
  return this.httpClient.post(this.smartDataServiceUrl, {
71
71
  query: mutation,
@@ -81,18 +81,18 @@ export class UserSettingsService {
81
81
  * @returns Observable with the updated staff setting
82
82
  */
83
83
  updateStaffSetting(input) {
84
- const mutation = `
85
- mutation UpdateStaffSetting($input: UpdateStaffSettingInput!) {
86
- updateStaffSetting(input: $input) {
87
- data {
88
- staffSettingId
89
- staffId
90
- settingKey
91
- settingValue
92
- }
93
- message
94
- }
95
- }
84
+ const mutation = `
85
+ mutation UpdateStaffSetting($input: UpdateStaffSettingInput!) {
86
+ updateStaffSetting(input: $input) {
87
+ data {
88
+ staffSettingId
89
+ staffId
90
+ settingKey
91
+ settingValue
92
+ }
93
+ message
94
+ }
95
+ }
96
96
  `;
97
97
  return this.httpClient.post(this.smartDataServiceUrl, {
98
98
  query: mutation,
@@ -102,10 +102,10 @@ export class UserSettingsService {
102
102
  return of({ data: null, message: 'Failed to update staff setting' });
103
103
  }));
104
104
  }
105
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UserSettingsService, deps: [{ token: i1.HttpClient }, { token: SMART_DATA_SERVICE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
106
- /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UserSettingsService, providedIn: 'root' }); }
105
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSettingsService, deps: [{ token: i1.HttpClient }, { token: SMART_DATA_SERVICE_URL }], target: i0.ɵɵFactoryTarget.Injectable }); }
106
+ /** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSettingsService, providedIn: 'root' }); }
107
107
  }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: UserSettingsService, decorators: [{
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserSettingsService, decorators: [{
109
109
  type: Injectable,
110
110
  args: [{
111
111
  providedIn: 'root'
@@ -114,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
114
114
  type: Inject,
115
115
  args: [SMART_DATA_SERVICE_URL]
116
116
  }] }] });
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZXR0aW5ncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3NtYXJ0L25nYy1zbWFydC1jb3JlL3NyYy9saWIvdXNlci1zZXR0aW5ncy91c2VyLXNldHRpbmdzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7O0FBOEM5RSxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQ1UsVUFBc0IsRUFDVSxtQkFBMkI7UUFEM0QsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBUTtJQUNsRSxDQUFDO0lBRUo7Ozs7T0FJRztJQUNILGlCQUFpQixDQUFDLE9BQWU7UUFDL0IsTUFBTSxLQUFLLEdBQUc7cURBQ21DLE9BQU87Ozs7Ozs7O01BUXRELENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFNLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN4RSxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsRUFDOUQsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdkQsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxtQkFBbUI7UUFDakIsTUFBTSxLQUFLLEdBQUc7Ozs7Ozs7TUFPWixDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDeEUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLEVBQ2hFLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3pELE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGtCQUFrQixDQUFDLEtBQThCO1FBQy9DLE1BQU0sUUFBUSxHQUFHOzs7Ozs7Ozs7OztLQVdoQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDekQsS0FBSyxFQUFFLFFBQVE7WUFDZixTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUU7U0FDckIsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFDbEYsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdEQsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsa0JBQWtCLENBQUMsS0FBOEI7UUFDL0MsTUFBTSxRQUFRLEdBQUc7Ozs7Ozs7Ozs7OztLQVloQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDekQsS0FBSyxFQUFFLFFBQVE7WUFDZixTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUU7U0FDckIsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFDbEYsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdEQsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7aUlBcEhVLG1CQUFtQiw0Q0FHcEIsc0JBQXNCO3FJQUhyQixtQkFBbUIsY0FGbEIsTUFBTTs7MkZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBSUksTUFBTTsyQkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU01BUlRfREFUQV9TRVJWSUNFX1VSTCB9IGZyb20gJy4uL3NtYXJ0LXN0b3JhZ2Uvc21hcnQtc3RvcmFnZS1tb2RlbCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhZmZTZXR0aW5nIHtcbiAgc3RhZmZTZXR0aW5nSWQ6IHN0cmluZztcbiAgc2V0dGluZ0tleTogc3RyaW5nO1xuICBzZXR0aW5nVmFsdWU6IHN0cmluZztcbiAgbW9kaWZpZWRCeTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERlZmF1bHRTZXR0aW5nIHtcbiAgZGVmYXVsdFNldHRpbmdJZDogc3RyaW5nO1xuICBzZXR0aW5nVmFsdWU6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVTdGFmZlNldHRpbmdJbnB1dCB7XG4gIHN0YWZmSWQ6IG51bWJlcjtcbiAgc2V0dGluZ0tleTogc3RyaW5nO1xuICBzZXR0aW5nVmFsdWU6IHN0cmluZztcbiAgbW9kaWZpZWRCeTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZVN0YWZmU2V0dGluZ0lucHV0IHtcbiAgd2hlcmU6IHtcbiAgICBzdGFmZlNldHRpbmdJZDogbnVtYmVyO1xuICB9O1xuICBkYXRhOiB7XG4gICAgc3RhZmZJZDogbnVtYmVyO1xuICAgIHNldHRpbmdLZXk6IHN0cmluZztcbiAgICBzZXR0aW5nVmFsdWU6IHN0cmluZztcbiAgICBtb2RpZmllZEJ5OiBudW1iZXI7XG4gIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhZmZTZXR0aW5nUmVzcG9uc2Uge1xuICBkYXRhOiB7XG4gICAgc3RhZmZTZXR0aW5nSWQ6IG51bWJlcjtcbiAgICBzdGFmZklkPzogbnVtYmVyO1xuICAgIHNldHRpbmdLZXk6IHN0cmluZztcbiAgICBzZXR0aW5nVmFsdWU6IHN0cmluZztcbiAgfTtcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyU2V0dGluZ3NTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxuICAgIEBJbmplY3QoU01BUlRfREFUQV9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzbWFydERhdGFTZXJ2aWNlVXJsOiBzdHJpbmdcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBGZXRjaGVzIHN0YWZmIHNldHRpbmdzIGZvciBhIGdpdmVuIHN0YWZmIElEXG4gICAqIEBwYXJhbSBzdGFmZklkIFRoZSBJRCBvZiB0aGUgc3RhZmYgbWVtYmVyXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGUgb2Ygc3RhZmYgc2V0dGluZ3MgYXJyYXlcbiAgICovXG4gIGZpbmRTdGFmZlNldHRpbmdzKHN0YWZmSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8U3RhZmZTZXR0aW5nW10+IHtcbiAgICBjb25zdCBxdWVyeSA9IGB7XG4gICAgICBmaW5kU3RhZmZTZXR0aW5ncyhpbnB1dDogeyB3aGVyZTogeyBzdGFmZklkOiAke3N0YWZmSWR9IH0gfSkge1xuICAgICAgICBkYXRhIHtcbiAgICAgICAgICBzdGFmZlNldHRpbmdJZFxuICAgICAgICAgIHNldHRpbmdLZXlcbiAgICAgICAgICBzZXR0aW5nVmFsdWVcbiAgICAgICAgICBtb2RpZmllZEJ5XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9YDtcblxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeSB9KS5waXBlKFxuICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlPy5kYXRhPy5maW5kU3RhZmZTZXR0aW5ncz8uZGF0YSB8fCBbXSksXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3IgZmV0Y2hpbmcgc3RhZmYgc2V0dGluZ3M6JywgZXJyb3IpO1xuICAgICAgICByZXR1cm4gb2YoW10pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoZXMgZGVmYXVsdCBzZXR0aW5nc1xuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIGRlZmF1bHQgc2V0dGluZ3MgYXJyYXlcbiAgICovXG4gIGZpbmREZWZhdWx0U2V0dGluZ3MoKTogT2JzZXJ2YWJsZTxEZWZhdWx0U2V0dGluZ1tdPiB7XG4gICAgY29uc3QgcXVlcnkgPSBge1xuICAgICAgZmluZERlZmF1bHRTZXR0aW5ncyB7XG4gICAgICAgIGRhdGEge1xuICAgICAgICAgIGRlZmF1bHRTZXR0aW5nSWRcbiAgICAgICAgICBzZXR0aW5nVmFsdWVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1gO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PGFueT4odGhpcy5zbWFydERhdGFTZXJ2aWNlVXJsLCB7IHF1ZXJ5IH0pLnBpcGUoXG4gICAgICBtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2U/LmRhdGE/LmZpbmREZWZhdWx0U2V0dGluZ3M/LmRhdGEgfHwgW10pLFxuICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGRlZmF1bHQgc2V0dGluZ3M6JywgZXJyb3IpO1xuICAgICAgICByZXR1cm4gb2YoW10pO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgc3RhZmYgc2V0dGluZ1xuICAgKiBAcGFyYW0gaW5wdXQgVGhlIHN0YWZmIHNldHRpbmcgZGF0YSB0byBjcmVhdGVcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSB3aXRoIHRoZSBjcmVhdGVkIHN0YWZmIHNldHRpbmdcbiAgICovXG4gIGNyZWF0ZVN0YWZmU2V0dGluZyhpbnB1dDogQ3JlYXRlU3RhZmZTZXR0aW5nSW5wdXQpOiBPYnNlcnZhYmxlPFN0YWZmU2V0dGluZ1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgbXV0YXRpb24gPSBgXG4gICAgICBtdXRhdGlvbiBDcmVhdGVTdGFmZlNldHRpbmcoJGlucHV0OiBDcmVhdGVTdGFmZlNldHRpbmdJbnB1dCEpIHtcbiAgICAgICAgY3JlYXRlU3RhZmZTZXR0aW5nKGlucHV0OiAkaW5wdXQpIHtcbiAgICAgICAgICBkYXRhIHtcbiAgICAgICAgICAgIHN0YWZmU2V0dGluZ0lkXG4gICAgICAgICAgICBzZXR0aW5nS2V5XG4gICAgICAgICAgICBzZXR0aW5nVmFsdWVcbiAgICAgICAgICB9XG4gICAgICAgICAgbWVzc2FnZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcblxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwge1xuICAgICAgcXVlcnk6IG11dGF0aW9uLFxuICAgICAgdmFyaWFibGVzOiB7IGlucHV0IH1cbiAgICB9KS5waXBlKFxuICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlPy5kYXRhPy5jcmVhdGVTdGFmZlNldHRpbmcgfHwgeyBkYXRhOiBudWxsLCBtZXNzYWdlOiAnJyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBjcmVhdGluZyBzdGFmZiBzZXR0aW5nOicsIGVycm9yKTtcbiAgICAgICAgcmV0dXJuIG9mKHsgZGF0YTogbnVsbCwgbWVzc2FnZTogJ0ZhaWxlZCB0byBjcmVhdGUgc3RhZmYgc2V0dGluZycgfSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyBhbiBleGlzdGluZyBzdGFmZiBzZXR0aW5nXG4gICAqIEBwYXJhbSBpbnB1dCBUaGUgdXBkYXRlIGRhdGEgYW5kIGNvbmRpdGlvbnNcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSB3aXRoIHRoZSB1cGRhdGVkIHN0YWZmIHNldHRpbmdcbiAgICovXG4gIHVwZGF0ZVN0YWZmU2V0dGluZyhpbnB1dDogVXBkYXRlU3RhZmZTZXR0aW5nSW5wdXQpOiBPYnNlcnZhYmxlPFN0YWZmU2V0dGluZ1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgbXV0YXRpb24gPSBgXG4gICAgICBtdXRhdGlvbiBVcGRhdGVTdGFmZlNldHRpbmcoJGlucHV0OiBVcGRhdGVTdGFmZlNldHRpbmdJbnB1dCEpIHtcbiAgICAgICAgdXBkYXRlU3RhZmZTZXR0aW5nKGlucHV0OiAkaW5wdXQpIHtcbiAgICAgICAgICBkYXRhIHtcbiAgICAgICAgICAgIHN0YWZmU2V0dGluZ0lkXG4gICAgICAgICAgICBzdGFmZklkXG4gICAgICAgICAgICBzZXR0aW5nS2V5XG4gICAgICAgICAgICBzZXR0aW5nVmFsdWVcbiAgICAgICAgICB9XG4gICAgICAgICAgbWVzc2FnZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgYDtcblxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwge1xuICAgICAgcXVlcnk6IG11dGF0aW9uLFxuICAgICAgdmFyaWFibGVzOiB7IGlucHV0IH1cbiAgICB9KS5waXBlKFxuICAgICAgbWFwKHJlc3BvbnNlID0+IHJlc3BvbnNlPy5kYXRhPy51cGRhdGVTdGFmZlNldHRpbmcgfHwgeyBkYXRhOiBudWxsLCBtZXNzYWdlOiAnJyB9KSxcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciB1cGRhdGluZyBzdGFmZiBzZXR0aW5nOicsIGVycm9yKTtcbiAgICAgICAgcmV0dXJuIG9mKHsgZGF0YTogbnVsbCwgbWVzc2FnZTogJ0ZhaWxlZCB0byB1cGRhdGUgc3RhZmYgc2V0dGluZycgfSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1zZXR0aW5ncy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3NtYXJ0L25nYy1zbWFydC1jb3JlL3NyYy9saWIvdXNlci1zZXR0aW5ncy91c2VyLXNldHRpbmdzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7O0FBOEM5RSxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQ1UsVUFBc0IsRUFDVSxtQkFBMkI7UUFEM0QsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNVLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBUTtJQUNsRSxDQUFDO0lBRUo7Ozs7T0FJRztJQUNILGlCQUFpQixDQUFDLE9BQWU7UUFDL0IsTUFBTSxLQUFLLEdBQUc7cURBQ21DLE9BQU87Ozs7Ozs7O01BUXRELENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFNLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUN4RSxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsRUFDOUQsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdkQsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxtQkFBbUI7UUFDakIsTUFBTSxLQUFLLEdBQUc7Ozs7Ozs7TUFPWixDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDeEUsR0FBRyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLEVBQ2hFLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNqQixPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3pELE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2hCLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGtCQUFrQixDQUFDLEtBQThCO1FBQy9DLE1BQU0sUUFBUSxHQUFHOzs7Ozs7Ozs7OztLQVdoQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDekQsS0FBSyxFQUFFLFFBQVE7WUFDZixTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUU7U0FDckIsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFDbEYsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdEQsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsa0JBQWtCLENBQUMsS0FBOEI7UUFDL0MsTUFBTSxRQUFRLEdBQUc7Ozs7Ozs7Ozs7OztLQVloQixDQUFDO1FBRUYsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUU7WUFDekQsS0FBSyxFQUFFLFFBQVE7WUFDZixTQUFTLEVBQUUsRUFBRSxLQUFLLEVBQUU7U0FDckIsQ0FBQyxDQUFDLElBQUksQ0FDTCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFDbEYsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsK0JBQStCLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDdEQsT0FBTyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7a0lBcEhVLG1CQUFtQiw0Q0FHcEIsc0JBQXNCO3NJQUhyQixtQkFBbUIsY0FGbEIsTUFBTTs7NEZBRVAsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBSUksTUFBTTsyQkFBQyxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgbWFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTTUFSVF9EQVRBX1NFUlZJQ0VfVVJMIH0gZnJvbSAnLi4vc21hcnQtc3RvcmFnZS9zbWFydC1zdG9yYWdlLW1vZGVsJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU3RhZmZTZXR0aW5nIHtcclxuICBzdGFmZlNldHRpbmdJZDogc3RyaW5nO1xyXG4gIHNldHRpbmdLZXk6IHN0cmluZztcclxuICBzZXR0aW5nVmFsdWU6IHN0cmluZztcclxuICBtb2RpZmllZEJ5OiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRGVmYXVsdFNldHRpbmcge1xyXG4gIGRlZmF1bHRTZXR0aW5nSWQ6IHN0cmluZztcclxuICBzZXR0aW5nVmFsdWU6IHN0cmluZztcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVTdGFmZlNldHRpbmdJbnB1dCB7XHJcbiAgc3RhZmZJZDogbnVtYmVyO1xyXG4gIHNldHRpbmdLZXk6IHN0cmluZztcclxuICBzZXR0aW5nVmFsdWU6IHN0cmluZztcclxuICBtb2RpZmllZEJ5OiBudW1iZXI7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgVXBkYXRlU3RhZmZTZXR0aW5nSW5wdXQge1xyXG4gIHdoZXJlOiB7XHJcbiAgICBzdGFmZlNldHRpbmdJZDogbnVtYmVyO1xyXG4gIH07XHJcbiAgZGF0YToge1xyXG4gICAgc3RhZmZJZDogbnVtYmVyO1xyXG4gICAgc2V0dGluZ0tleTogc3RyaW5nO1xyXG4gICAgc2V0dGluZ1ZhbHVlOiBzdHJpbmc7XHJcbiAgICBtb2RpZmllZEJ5OiBudW1iZXI7XHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTdGFmZlNldHRpbmdSZXNwb25zZSB7XHJcbiAgZGF0YToge1xyXG4gICAgc3RhZmZTZXR0aW5nSWQ6IG51bWJlcjtcclxuICAgIHN0YWZmSWQ/OiBudW1iZXI7XHJcbiAgICBzZXR0aW5nS2V5OiBzdHJpbmc7XHJcbiAgICBzZXR0aW5nVmFsdWU6IHN0cmluZztcclxuICB9O1xyXG4gIG1lc3NhZ2U6IHN0cmluZztcclxufVxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVXNlclNldHRpbmdzU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGh0dHBDbGllbnQ6IEh0dHBDbGllbnQsXHJcbiAgICBASW5qZWN0KFNNQVJUX0RBVEFfU0VSVklDRV9VUkwpIHByaXZhdGUgc21hcnREYXRhU2VydmljZVVybDogc3RyaW5nXHJcbiAgKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBGZXRjaGVzIHN0YWZmIHNldHRpbmdzIGZvciBhIGdpdmVuIHN0YWZmIElEXHJcbiAgICogQHBhcmFtIHN0YWZmSWQgVGhlIElEIG9mIHRoZSBzdGFmZiBtZW1iZXJcclxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIHN0YWZmIHNldHRpbmdzIGFycmF5XHJcbiAgICovXHJcbiAgZmluZFN0YWZmU2V0dGluZ3Moc3RhZmZJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxTdGFmZlNldHRpbmdbXT4ge1xyXG4gICAgY29uc3QgcXVlcnkgPSBge1xyXG4gICAgICBmaW5kU3RhZmZTZXR0aW5ncyhpbnB1dDogeyB3aGVyZTogeyBzdGFmZklkOiAke3N0YWZmSWR9IH0gfSkge1xyXG4gICAgICAgIGRhdGEge1xyXG4gICAgICAgICAgc3RhZmZTZXR0aW5nSWRcclxuICAgICAgICAgIHNldHRpbmdLZXlcclxuICAgICAgICAgIHNldHRpbmdWYWx1ZVxyXG4gICAgICAgICAgbW9kaWZpZWRCeVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfWA7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PGFueT4odGhpcy5zbWFydERhdGFTZXJ2aWNlVXJsLCB7IHF1ZXJ5IH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZT8uZGF0YT8uZmluZFN0YWZmU2V0dGluZ3M/LmRhdGEgfHwgW10pLFxyXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciBmZXRjaGluZyBzdGFmZiBzZXR0aW5nczonLCBlcnJvcik7XHJcbiAgICAgICAgcmV0dXJuIG9mKFtdKTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBGZXRjaGVzIGRlZmF1bHQgc2V0dGluZ3NcclxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIG9mIGRlZmF1bHQgc2V0dGluZ3MgYXJyYXlcclxuICAgKi9cclxuICBmaW5kRGVmYXVsdFNldHRpbmdzKCk6IE9ic2VydmFibGU8RGVmYXVsdFNldHRpbmdbXT4ge1xyXG4gICAgY29uc3QgcXVlcnkgPSBge1xyXG4gICAgICBmaW5kRGVmYXVsdFNldHRpbmdzIHtcclxuICAgICAgICBkYXRhIHtcclxuICAgICAgICAgIGRlZmF1bHRTZXR0aW5nSWRcclxuICAgICAgICAgIHNldHRpbmdWYWx1ZVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfWA7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PGFueT4odGhpcy5zbWFydERhdGFTZXJ2aWNlVXJsLCB7IHF1ZXJ5IH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZT8uZGF0YT8uZmluZERlZmF1bHRTZXR0aW5ncz8uZGF0YSB8fCBbXSksXHJcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGZldGNoaW5nIGRlZmF1bHQgc2V0dGluZ3M6JywgZXJyb3IpO1xyXG4gICAgICAgIHJldHVybiBvZihbXSk7XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ3JlYXRlcyBhIG5ldyBzdGFmZiBzZXR0aW5nXHJcbiAgICogQHBhcmFtIGlucHV0IFRoZSBzdGFmZiBzZXR0aW5nIGRhdGEgdG8gY3JlYXRlXHJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSB3aXRoIHRoZSBjcmVhdGVkIHN0YWZmIHNldHRpbmdcclxuICAgKi9cclxuICBjcmVhdGVTdGFmZlNldHRpbmcoaW5wdXQ6IENyZWF0ZVN0YWZmU2V0dGluZ0lucHV0KTogT2JzZXJ2YWJsZTxTdGFmZlNldHRpbmdSZXNwb25zZT4ge1xyXG4gICAgY29uc3QgbXV0YXRpb24gPSBgXHJcbiAgICAgIG11dGF0aW9uIENyZWF0ZVN0YWZmU2V0dGluZygkaW5wdXQ6IENyZWF0ZVN0YWZmU2V0dGluZ0lucHV0ISkge1xyXG4gICAgICAgIGNyZWF0ZVN0YWZmU2V0dGluZyhpbnB1dDogJGlucHV0KSB7XHJcbiAgICAgICAgICBkYXRhIHtcclxuICAgICAgICAgICAgc3RhZmZTZXR0aW5nSWRcclxuICAgICAgICAgICAgc2V0dGluZ0tleVxyXG4gICAgICAgICAgICBzZXR0aW5nVmFsdWVcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIG1lc3NhZ2VcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIGA7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0PGFueT4odGhpcy5zbWFydERhdGFTZXJ2aWNlVXJsLCB7XHJcbiAgICAgIHF1ZXJ5OiBtdXRhdGlvbixcclxuICAgICAgdmFyaWFibGVzOiB7IGlucHV0IH1cclxuICAgIH0pLnBpcGUoXHJcbiAgICAgIG1hcChyZXNwb25zZSA9PiByZXNwb25zZT8uZGF0YT8uY3JlYXRlU3RhZmZTZXR0aW5nIHx8IHsgZGF0YTogbnVsbCwgbWVzc2FnZTogJycgfSksXHJcbiAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIGNyZWF0aW5nIHN0YWZmIHNldHRpbmc6JywgZXJyb3IpO1xyXG4gICAgICAgIHJldHVybiBvZih7IGRhdGE6IG51bGwsIG1lc3NhZ2U6ICdGYWlsZWQgdG8gY3JlYXRlIHN0YWZmIHNldHRpbmcnIH0pO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVwZGF0ZXMgYW4gZXhpc3Rpbmcgc3RhZmYgc2V0dGluZ1xyXG4gICAqIEBwYXJhbSBpbnB1dCBUaGUgdXBkYXRlIGRhdGEgYW5kIGNvbmRpdGlvbnNcclxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHdpdGggdGhlIHVwZGF0ZWQgc3RhZmYgc2V0dGluZ1xyXG4gICAqL1xyXG4gIHVwZGF0ZVN0YWZmU2V0dGluZyhpbnB1dDogVXBkYXRlU3RhZmZTZXR0aW5nSW5wdXQpOiBPYnNlcnZhYmxlPFN0YWZmU2V0dGluZ1Jlc3BvbnNlPiB7XHJcbiAgICBjb25zdCBtdXRhdGlvbiA9IGBcclxuICAgICAgbXV0YXRpb24gVXBkYXRlU3RhZmZTZXR0aW5nKCRpbnB1dDogVXBkYXRlU3RhZmZTZXR0aW5nSW5wdXQhKSB7XHJcbiAgICAgICAgdXBkYXRlU3RhZmZTZXR0aW5nKGlucHV0OiAkaW5wdXQpIHtcclxuICAgICAgICAgIGRhdGEge1xyXG4gICAgICAgICAgICBzdGFmZlNldHRpbmdJZFxyXG4gICAgICAgICAgICBzdGFmZklkXHJcbiAgICAgICAgICAgIHNldHRpbmdLZXlcclxuICAgICAgICAgICAgc2V0dGluZ1ZhbHVlXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBtZXNzYWdlXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICBgO1xyXG5cclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwge1xyXG4gICAgICBxdWVyeTogbXV0YXRpb24sXHJcbiAgICAgIHZhcmlhYmxlczogeyBpbnB1dCB9XHJcbiAgICB9KS5waXBlKFxyXG4gICAgICBtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2U/LmRhdGE/LnVwZGF0ZVN0YWZmU2V0dGluZyB8fCB7IGRhdGE6IG51bGwsIG1lc3NhZ2U6ICcnIH0pLFxyXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcclxuICAgICAgICBjb25zb2xlLmVycm9yKCdFcnJvciB1cGRhdGluZyBzdGFmZiBzZXR0aW5nOicsIGVycm9yKTtcclxuICAgICAgICByZXR1cm4gb2YoeyBkYXRhOiBudWxsLCBtZXNzYWdlOiAnRmFpbGVkIHRvIHVwZGF0ZSBzdGFmZiBzZXR0aW5nJyB9KTtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG59XHJcbiJdfQ==