@tuki-io/tuki-widgets 0.0.165 → 0.0.167
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.
- package/esm2020/contact-center/cc-readiness/cc-readiness.module.mjs +1 -1
- package/esm2020/contact-center/cc-readiness/cc-readiness.service.mjs +1 -1
- package/esm2020/contact-center/cc-readiness/widgets/licences-requirement/licences-requirement.component.mjs +3 -3
- package/esm2020/di2mt/shared/services/api.service.mjs +2 -2
- package/esm2020/di2mt/widgets/site-upgrade/progress-bar/progress-bar.component.mjs +3 -3
- package/esm2020/di2mt/widgets/site-upgrade/site-upgrade-data-table/site-upgrade-data-table.component.mjs +2 -2
- package/esm2020/di2mt/widgets/upgrade-overview/cards/pending-activation-users/pending-activation-users.component.mjs +17 -17
- package/esm2020/user-creation/src/app.constants.mjs +1 -1
- package/esm2020/user-creation/src/classes/site.mjs +1 -1
- package/esm2020/user-creation/src/shared/api/api.service.mjs +2 -2
- package/esm2020/user-creation/src/shared/services/user-creation-api.service.mjs +1 -1
- package/esm2020/user-creation/src/shared/services/utils.mjs +1 -1
- package/esm2020/user-creation/src/widgets/user-creation-wizard/user-creation-wizard.component.mjs +3 -3
- package/esm2020/user-device-manage/src/app.constants.mjs +1 -1
- package/esm2020/user-device-manage/src/classes/deviceProfile.mjs +1 -1
- package/esm2020/user-device-manage/src/device-associated-line/device-associated-line-extension/device-associated-line-extension.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-info/device-info.component.mjs +3 -3
- package/esm2020/user-device-manage/src/device-manage-widget.component.mjs +2 -2
- package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
- package/esm2020/user-device-manage/src/pipes/mac-address.pipe.mjs +1 -1
- package/esm2020/user-device-manage/src/services/api.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/dns.service.mjs +1 -1
- package/esm2020/user-device-manage/src/services/line.service.mjs +2 -2
- package/esm2020/user-device-manage/src/services/user.service.mjs +1 -1
- package/esm2020/user-device-manage/src/shared/tk-page-section/page-section.component.mjs +1 -1
- package/esm2020/user-device-manage/src/utils/app-loader/app-loader.mjs +3 -3
- package/esm2020/user-manage/src/app.constants.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-association-interface.mjs +1 -1
- package/esm2020/user-manage/src/classes/line-directory.mjs +1 -1
- package/esm2020/user-manage/src/classes/line.mjs +1 -1
- package/esm2020/user-manage/src/classes/pagination.mjs +1 -1
- package/esm2020/user-manage/src/classes/simplified-user.mjs +1 -1
- package/esm2020/user-manage/src/device-list/device-list.component.mjs +3 -3
- package/esm2020/user-manage/src/device-list/device-row/device-row.component.mjs +3 -3
- package/esm2020/user-manage/src/lazy-loading-select/lazy-loading-select.component.mjs +3 -3
- package/esm2020/user-manage/src/services/api.service.mjs +1 -1
- package/esm2020/user-manage/src/services/user.service.mjs +1 -1
- package/esm2020/user-manage/src/user-info/user-info.component.mjs +3 -3
- package/esm2020/user-manage/src/user-manage.module.mjs +1 -1
- package/esm2020/user-manage/src/utils/app-loader/app-loader.mjs +3 -3
- package/esm2020/users-list/src/app.constants.mjs +1 -1
- package/esm2020/users-list/src/classes/move-user.mjs +1 -1
- package/esm2020/users-list/src/services/dns.service.mjs +1 -1
- package/esm2020/users-list/src/services/user.service.mjs +1 -1
- package/esm2020/users-list/src/utils/app-loader/app-loader.mjs +3 -3
- package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs +2 -2
- package/fesm2015/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs +21 -21
- package/fesm2015/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs +3 -3
- package/fesm2015/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs +10 -10
- package/fesm2015/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs +10 -10
- package/fesm2015/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
- package/fesm2015/tuki-io-tuki-widgets-users-list.mjs +2 -2
- package/fesm2015/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs +2 -2
- package/fesm2020/tuki-io-tuki-widgets-contact-center.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs +21 -21
- package/fesm2020/tuki-io-tuki-widgets-di2mt.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs +3 -3
- package/fesm2020/tuki-io-tuki-widgets-user-creation.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs +10 -10
- package/fesm2020/tuki-io-tuki-widgets-user-device-manage.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs +10 -10
- package/fesm2020/tuki-io-tuki-widgets-user-manage.mjs.map +1 -1
- package/fesm2020/tuki-io-tuki-widgets-users-list.mjs +2 -2
- package/fesm2020/tuki-io-tuki-widgets-users-list.mjs.map +1 -1
- package/package.json +1 -1
- package/user-device-manage/src/services/line.service.d.ts +1 -1
|
@@ -122,7 +122,7 @@ export class DeviceManageWidgetComponent {
|
|
|
122
122
|
// const value = (event.target as HTMLElement).innerText.trim();
|
|
123
123
|
const extension = this.dnsService.getDnValue(value);
|
|
124
124
|
const number = this.dnsService.getMappedDids(extension, '0');
|
|
125
|
-
this.device.lines[index].extension =
|
|
125
|
+
this.device.lines[index].extension = extension;
|
|
126
126
|
this.device.lines[index].number = number || '';
|
|
127
127
|
this.linesControls.at(index).setValue(extension);
|
|
128
128
|
this.onChange.emit();
|
|
@@ -175,4 +175,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
175
175
|
type: ViewChild,
|
|
176
176
|
args: ['tagInput']
|
|
177
177
|
}] } });
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLW1hbmFnZS13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvZGV2aWNlLW1hbmFnZS13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvZGV2aWNlLW1hbmFnZS13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBMEMsTUFBTSxnQkFBZ0IsQ0FBQztBQUtoRyxPQUFPLEVBQUUsUUFBUSxFQUFZLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWtCOUQsTUFBTSxPQUFPLDJCQUEyQjtJQTZCdEMsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxLQUFLLE1BQU0sQ0FBQztJQUMzRixDQUFDO0lBRUQsWUFDUyxXQUF3QixFQUN4QixhQUE0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Y2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBGb3JtQ29udHJvbE5hbWUsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2ltcGxpZmllZFVzZXIgfSBmcm9tICcuL2NsYXNzZXMvc2ltcGxpZmllZC11c2VyJztcclxuaW1wb3J0IHsgTGluZUFzc29jaWF0aW9uIH0gZnJvbSAnLi9jbGFzc2VzL2xpbmUtYXNzb2NpYXRpb24nO1xyXG5pbXBvcnQgeyBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2UgfSBmcm9tICcuL2NsYXNzZXMvbGluZS1hc3NvY2lhdGlvbi1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBEZXZpY2UsIERldmljZVZpZXdUeXBlIH0gZnJvbSAnLi9jbGFzc2VzL2RldmljZSc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCBmb3JrSm9pbiwgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1hdFRhYkdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEluZm9EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbmZpcm0tZGlhbG9nL2luZm8tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEZXZpY2VTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kZXZpY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEFQSVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGluZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2xpbmUuc2VydmljZSc7XHJcbmltcG9ydCB7IFNpdGVTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3NpdGUtc2V0dGluZ3Muc2VydmljZSc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy92YWxpZGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUT0dHTEVfVFlQRVMgfSBmcm9tICcuL2FwcC5jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBEbnNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kbnMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1kZXZpY2UtbWFuYWdlLXdpZGdldCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RldmljZS1tYW5hZ2Utd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kZXZpY2UtbWFuYWdlLXdpZGdldC5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGV2aWNlTWFuYWdlV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBAT3V0cHV0KCkgb25TYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIGRpc2NhcmRDaGFuZ2VzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBnb0JhY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgdG9rZW4hOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaG9zdCE6IHN0cmluZztcclxuICBASW5wdXQoKSBzaXRlSWQhOiBudW1iZXI7XHJcbiAgQElucHV0KCkgdXNlcklkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzTGRhcCE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGV2aWNlTmFtZSE6IHN0cmluZztcclxuXHJcbiAgQFZpZXdDaGlsZCgndGFnSW5wdXQnKSB0YWdJbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XHJcblxyXG4gIGRhdGFQZW5kaW5nITogYm9vbGVhbjtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwdWJsaWMgZGV2aWNlOiBhbnkgPSBudWxsO1xyXG4gIHB1YmxpYyB0b2tlbk9iajogYW55ID0gbnVsbDtcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IEhPVEVMSU5HX1RJTUVfSE9VUlMgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiAxMjAgfSwgKF8sIGluZGV4KSA9PiBpbmRleCk7XHJcblxyXG4gIC8vIHB1YmxpYyByZWFkb25seSBob3RlbGluZ0xpbWl0VGltZSA9IG5ldyBGb3JtQ29udHJvbCgyNCk7XHJcbiAgcHVibGljIGxvZ01pc3NlZENhbGwgPSBuZXcgRm9ybUNvbnRyb2wodHJ1ZSk7XHJcblxyXG4gIHRhZ3M6IHN0cmluZ1tdID0gW107XHJcbiAgaXNBZGRpbmcgPSBmYWxzZTtcclxuICBuZXdUYWcgPSAnJztcclxuICBsaW5lc0NvbnRyb2xzID0gbmV3IEZvcm1BcnJheTxGb3JtQ29udHJvbDxzdHJpbmc+PihbXSk7XHJcblxyXG4gIGdldCBmaXJzdE5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLnVzZXJOYW1lO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxhc3ROYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy51c2VyU2VydmljZS51c2VyTGFzdE5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXQgZm9ybSgpOiBGb3JtR3JvdXAgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlclNlcnZpY2UudXNlckRldmljZT8uZm9ybTtcclxuICB9XHJcblxyXG4gIGdldCBpc1dlYmV4KCkge1xyXG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJleFVVSUQnKSAmJiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnd2ViZXhVVUlEJykgIT09ICdudWxsJztcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcclxuICAgIHB1YmxpYyBkZXZpY2VTZXJ2aWNlOiBEZXZpY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBUElTZXJ2aWNlLFxyXG4gICAgcHVibGljIGxpbmVTZXJ2aWNlOiBMaW5lU2VydmljZSxcclxuICAgIHB1YmxpYyBzaXRlU2V0dGluZ3NTZXJ2aWNlOiBTaXRlU2V0dGluZ3NTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB2YWxpZGF0aW9uU2VydmljZTogVmFsaWRhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkbnNTZXJ2aWNlOiBEbnNTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2UudG9rZW4gPSB0aGlzLnRva2VuO1xyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLmFwaVVybCA9IHRoaXMuaG9zdDtcclxuICAgIGNvbnNvbGUubG9nKCd0aGlzLmFwaVNlcnZpY2UuYXBpVXJsID0gJywgdGhpcy5hcGlTZXJ2aWNlLmFwaVVybCk7XHJcbiAgICB0aGlzLmdldERhdGEoKTtcclxuICB9XHJcblxyXG4gIHNob3dJbnB1dCgpIHtcclxuICAgIHRoaXMuaXNBZGRpbmcgPSB0cnVlO1xyXG5cclxuICAgIC8vIHdhaXQgdW50aWwgaW5wdXQgYXBwZWFycyBpbiBET01cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnRhZ0lucHV0Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uQmx1cigpIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5uZXdUYWcudHJpbSgpO1xyXG5cclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnRhZ3MucHVzaCh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5uZXdUYWcgPSAnJztcclxuICAgIHRoaXMuaXNBZGRpbmcgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHJlbW92ZVRhZyhpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnRhZ3Muc3BsaWNlKGluZGV4LCAxKTtcclxuICB9XHJcblxyXG4gIGdldCBob3RlbGluZ0VuYWJsZWQoKTogRm9ybUNvbnRyb2wge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybT8uZ2V0KCdob3RlbGluZycpPy5nZXQoJ2VuYWJsZWQnKSBhcyBGb3JtQ29udHJvbDtcclxuICB9XHJcblxyXG4gIGdldCBndWVzdEhvdXJzTGltaXQoKTogRm9ybUNvbnRyb2wge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybT8uZ2V0KCdob3RlbGluZycpPy5nZXQoJ2d1ZXN0SG91cnNMaW1pdCcpIGFzIEZvcm1Db250cm9sO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXREYXRhKCkge1xyXG4gICAgdGhpcy5kYXRhUGVuZGluZyA9IHRydWU7XHJcbiAgICBsZXQgcmVxdWVzdDtcclxuICAgIGNvbnN0IGRldmljZVR5cGUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnZGV2aWNlVHlwZScpO1xyXG4gICAgLy8gY29uc3QgZGV2aWNlVHlwZSA9IHRoaXMuZGV2aWNlTmFtZTtcclxuICAgIGlmKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdpc1dlYmV4JykgPT09ICd0cnVlJykge1xyXG4gICAgICAvLyByZXF1ZXN0XHJcbiAgICAgIGNvbnN0IGN1c3RvbWVySWQgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY3VzdG9tZXJJZCcpO1xyXG4gICAgICBjb25zdCB3ZWJleElkID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYmV4VVVJRCcpO1xyXG4gICAgICByZXF1ZXN0ID0gdGhpcy51c2VyU2VydmljZS5mZXRjaFdlYmV4VXNlckRldmljZShjdXN0b21lcklkISwgd2ViZXhJZCEsIGRldmljZVR5cGUhKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJlcXVlc3QgPSB0aGlzLnVzZXJTZXJ2aWNlLmZldGNoRElVc2VyRGV2aWNlKHRoaXMuc2l0ZUlkLCB0aGlzLnVzZXJJZCwgZGV2aWNlVHlwZSEpO1xyXG4gICAgfVxyXG4gICAgcmVxdWVzdFxyXG4gICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgLnBpcGUoZmluYWxpemUoKCkgPT4gdGhpcy5kYXRhUGVuZGluZyA9IGZhbHNlKSlcclxuICAgIC5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLmRldmljZSA9IGRhdGE7XHJcbiAgICAgIHRoaXMuaW5pdEZvcm1EYXRhKHRoaXMuZGV2aWNlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaW5pdEZvcm1EYXRhKGRldmljZTogYW55KSB7XHJcblxyXG4gICAgdGhpcy5saW5lc0NvbnRyb2xzID0gbmV3IEZvcm1BcnJheShcclxuICAgICAgdGhpcy5kZXZpY2UubGluZXMubWFwKChsaW5lOiBhbnkpID0+XHJcbiAgICAgICAgbmV3IEZvcm1Db250cm9sKFN0cmluZyhsaW5lLmV4dGVuc2lvbikgfHwgJycpXHJcbiAgICAgIClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25OdW1iZXJDaGFuZ2UoZXZlbnQ6IEV2ZW50LCBpbmRleDogbnVtYmVyKSB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dC50cmltKCk7XHJcbiAgICB0aGlzLmRldmljZS5saW5lc1tpbmRleF0ubnVtYmVyID0gdmFsdWU7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkV4dGVuc2lvbkNoYW5nZSh2YWx1ZTogc3RyaW5nLCBpbmRleDogbnVtYmVyKSB7XHJcbiAgICAvLyBjb25zdCB2YWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dC50cmltKCk7XHJcbiAgICBjb25zdCBleHRlbnNpb24gPSB0aGlzLmRuc1NlcnZpY2UuZ2V0RG5WYWx1ZSh2YWx1ZSk7XHJcbiAgICBjb25zdCBudW1iZXIgPSB0aGlzLmRuc1NlcnZpY2UuZ2V0TWFwcGVkRGlkcyhleHRlbnNpb24sICcwJyk7XHJcbiAgICB0aGlzLmRldmljZS5saW5lc1tpbmRleF0uZXh0ZW5zaW9uID0gdmFsdWU7XHJcbiAgICB0aGlzLmRldmljZS5saW5lc1tpbmRleF0ubnVtYmVyID0gbnVtYmVyIHx8ICcnO1xyXG4gICAgdGhpcy5saW5lc0NvbnRyb2xzLmF0KGluZGV4KS5zZXRWYWx1ZShleHRlbnNpb24pO1xyXG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICBzYXZlQ2hhbmdlcygpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy51c2VyU2VydmljZS5oYXNVbnNhdmVkQ2hhbmdlcygpIHx8IHRoaXMuZm9ybT8uaW52YWxpZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgdXBkYXRlZExpbmVzID0gdGhpcy5kZXZpY2UubGluZXMuZmlsdGVyKChsaW5lOiBhbnksIGluZGV4OiBhbnkpID0+IHRoaXMudXNlclNlcnZpY2UubGluZVVwZGF0ZWQobGluZSwgaW5kZXgpKTtcclxuICAgIHVwZGF0ZWRMaW5lcy5mb3JFYWNoKChsaW5lOiBhbnkpID0+IHRoaXMudXNlclNlcnZpY2Uuc2F2ZU5ld0xpbmUobGluZSkpO1xyXG5cclxuICAgIHRoaXMuZGF0YVBlbmRpbmcgPSB0cnVlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuZGF0YVBlbmRpbmcgPSBmYWxzZTtcclxuICAgIH0sIDIwMDAwKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBvbkdvQmFjaygpOiB2b2lkIHtcclxuICAgIHRoaXMuZ29CYWNrLmVtaXQoKTtcclxuICB9XHJcbn1cclxuIiwiXHJcblxyXG48YXBwLWxvYWRlciAqbmdJZj1cImRhdGFQZW5kaW5nXCI+PC9hcHAtbG9hZGVyPlxyXG48ZGl2ICpuZ0lmPVwiIWRhdGFQZW5kaW5nXCI+XHJcbiAgPCEtLSA8ZGl2IGNsYXNzPVwiZ28tYmFjay1ib3hcIiAoY2xpY2spPVwib25Hb0JhY2soKVwiPiAtLT5cclxuICA8ZGl2IGNsYXNzPVwiZ28tYmFjay1ib3hcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJnby1iYWNrLWJveC1jb250YWluZXJcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJhcHAtaWNvbiBpY29uLXdlYmV4LWxlZnQtYXJyb3dcIj48L3NwYW4+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiZ28tYmFjay10aXRsZVwiPkRldmljZXM8L3NwYW4+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuXHJcbiAgPGFwcC1kZXZpY2UtaW5mbyBcclxuICAgIFtkZXZpY2VdPVwiZGV2aWNlXCIgXHJcbiAgICBbZmlyc3ROYW1lXT1cImZpcnN0TmFtZVwiIFxyXG4gICAgW2xhc3ROYW1lXT1cImxhc3ROYW1lXCJcclxuICAgIChvbmNsaWNrQmFjayk9XCJvbkdvQmFjaygpXCJcclxuICAgID5cclxuICAgIFxyXG4gIDwvYXBwLWRldmljZS1pbmZvPlxyXG4gIDxkaXYgY2xhc3M9XCJkZXZpY2UtaW5mb1wiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJkZXZpY2UtaW5mby1wYXJ0XCI+XHJcblxyXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+RGV0YWlsczwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWwtcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpZGUgbGVmdC1wYXJ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWFpbi12YWx1ZVwiPnt7IGZvcm0/LmdldCgnbWF4TGluZUNvdW50Jyk/LnZhbHVlIHx8ICdOL0EnIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV4dHJhLWluZm9cIj5MaW5lczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2lkZSByaWdodC1wYXJ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWFpbi12YWx1ZVwiPnt7IChmb3JtPy5nZXQoJ21hY0FkZHJlc3MnKT8udmFsdWUgfCBtYWNBZGRyZXNzKSB8fCAnTi9BJyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJleHRyYS1pbmZvXCI+TUFDIGFkZHJlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbC1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2lkZSBsZWZ0LXBhcnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYWluLXZhbHVlXCI+e3sgZm9ybT8uZ2V0KCdpcEFkZHJlc3MnKT8udmFsdWUgfHwgJ04vQScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXh0cmEtaW5mb1wiPkhvc3QgSVAgYWRkcmVzczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2lkZSByaWdodC1wYXJ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWFpbi12YWx1ZVwiPnt7IGZvcm0/LmdldCgncmVtb3RlSXBBZGRyZXNzJyk/LnZhbHVlIHx8ICdOL0EnIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV4dHJhLWluZm9cIj5SZW1vdGUgSVAgYWRkcmVzczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlIGxlZnQtcGFydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1haW4tdmFsdWVcIj5DaXNjbzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJleHRyYS1pbmZvXCI+TWFuYWdlZCBCeTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcblxyXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+U29mdHdhcmU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1ib3JkZXJlZC13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGNvbmZpZ3VyZS1pY29uIHJlbTFcIj48L2k+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWwtcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpZGUgbGVmdC1wYXJ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWFpbi12YWx1ZVwiPnt7IGZvcm0/LmdldCgnc29mdHdhcmVWZXJzaW9uJyk/LnZhbHVlIHx8ICdOL0EnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXh0cmEtaW5mb1wiPlNvZnR3YXJlIENoYW5uZWw8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpZGUgcmlnaHQtcGFydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1haW4tdmFsdWVcIj57eyBmb3JtPy5nZXQoJ3NvZnR3YXJlQ2hhbm5lbCcpPy52YWx1ZSB8fCAnTi9BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV4dHJhLWluZm9cIj5Tb2Z0d2FyZSB2ZXJzaW9uPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIj5UYWdzPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbC1yb3dcIiBzdHlsZT1cImZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGdhcDogMXJlbTtcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFncy1saXN0LWNvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCB0YWcgb2YgdGFnczsgbGV0IGkgPSBpbmRleFwiIGNsYXNzPVwidGFnLWxhYmVsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRhZy1kZXNjY3JpcHRpb25cIj57eyB0YWcgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gY2xvc2UtaWNvblwiIChjbGljayk9XCJyZW1vdmVUYWcoaSlcIiBzdHlsZT1cIndpZHRoOiAwLjc1cmVtOyBoZWlnaHQ6IDAuNzVyZW07IGZsZXg6IDAgMCBhdXRvO1wiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhZ3MtbGlzdC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInRhZy1sYWJlbCBhZGQtdGFnXCIgKGNsaWNrKT1cInNob3dJbnB1dCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24gcGx1cy1pY29uXCIgc3R5bGU9XCJ3aWR0aDogMC43NXJlbTsgaGVpZ2h0OiAwLjc1cmVtO1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPkFkZCB0YWc8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjdGFnSW5wdXRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiZW50ZXItdGFnLWlucHV0XCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImlzQWRkaW5nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwibmV3VGFnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChibHVyKT1cIm9uQmx1cigpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRkLXRhZy1pbnB1dFwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJFbnRlciB0YWcuLi5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJkZXZpY2UtaW5mby1wYXJ0XCI+XHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+SXNzdWVzICYgSW5mb3JtYXRpb248L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXNjcmlwdGlvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gY2hlY2staWNvbiByZW0xXCIgc3R5bGU9XCJmaWx0ZXI6IGludmVydCgyNiUpIHNlcGlhKDI3JSkgc2F0dXJhdGUoMTA5MyUpIGh1ZS1yb3RhdGUoMTE0ZGVnKSBicmlnaHRuZXNzKDkzJSkgY29udHJhc3QoOTAlKTtcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPk5vIHJlcG9ydGVkIGlzc3VlcyBhdCB0aGlzIHRpbWU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIj5Ib3RlbGluZzwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWwtcm93IGZsZXgtY29sdW1uIGdhcC0wXzc1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCI+QWxsb3cgdGhpcyBkZXZpY2UgdG8gYmUgdXNlZCBhcyBhIEhvdGVsaW5nIEhvc3QgYnkgdmlzaXRpbmcgZ3Vlc3RzLjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidG9nZ2xlLXdyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1zbGlkZS10b2dnbGUgY2xhc3M9XCJjdXN0b20tdG9nZ2xlXCIgbmFtZT1cImxvZ01pc3NlZENhbGxzXCIgW2Zvcm1Db250cm9sXT1cImhvdGVsaW5nRW5hYmxlZFwiPjwvbWF0LXNsaWRlLXRvZ2dsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGluZm8taWNvbiByZW0xXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHlsZT1cImZpbHRlcjogaW52ZXJ0KDIwJSkgc2VwaWEoOTklKSBzYXR1cmF0ZSgyMDY1JSkgaHVlLXJvdGF0ZSgxOTdkZWcpIGJyaWdodG5lc3MoOTIlKSBjb250cmFzdCgxMDElKTtcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ0VuYWJsaW5nIHRoaXMgZGV2aWNlIGZvciBIb3RlbGluZyBtZWFucyB0aGF0IGEgZ3Vlc3QgKGVuZCB1c2VyKSBjYW4gbG9nIGludG8gdGhpcyBob3N0ICh3b3Jrc3BhY2UgcGhvbmUpIGFuZCB1c2UgdGhpcyBwaG9uZSBhcyBpZiBpdCB3ZXJlIHRoZWlyIG93bi4gVGhpcyBpcyB1c2VmdWwgd2hlbiB0cmF2ZWxpbmcgdG8gYSByZW1vdGUgb2ZmaWNlIGJ1dCBzdGlsbCBuZWVkaW5nIHRvIHBsYWNlL3JlY2VpdmUgY2FsbHMgd2l0aCB0aGVpciB0ZWxlcGhvbmUgbnVtYmVyIGFuZCB0byBhY2Nlc3MgZmVhdHVyZXMgbm9ybWFsbHkgYXZhaWxhYmxlIHRvIHRoZW0gb24gdGhlaXIgb3duIG9mZmljZSBwaG9uZS4nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5MaW1pdCB0aGUgdGltZSBhIGd1ZXN0IGNhbiB1c2UgdGhpcyBwaG9uZSB0bzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8bWF0LXNlbGVjdCBbZm9ybUNvbnRyb2xdPVwiZ3Vlc3RIb3Vyc0xpbWl0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB0eXBlIG9mIEhPVEVMSU5HX1RJTUVfSE9VUlNcIiBbdmFsdWVdPVwidHlwZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0eXBlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtb3B0aW9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvbWF0LXNlbGVjdD5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIj5EZXZpY2UgTWFuYWdlbWVudDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWwtcm93IGZsZXgtY29sdW1uIGdhcC0wXzc1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCI+VGhlIHVzZXJzIGFuZCB3b3Jrc3BhY2VzIHRoYXQgYXBwZWFyIG9uIHRoaXMgZGV2aWNlIGFyZSBkaXNwbGF5ZWQgYmVsb3cgaW4gdGhlIG9yZGVyIG9mIGFwcGVhcmFuY2UuPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5UbyBhZGQgYW5kIHJlbW92ZSB1c2VycyBhbmQgd29ya3NwYWNlcywgc2VsZWN0IDxiPkNvbmZpZ3VyZSBMaW5lcy48L2I+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5UbyBjdXN0b21pemUgdGhlIHByb2dyYW1tYWJsZSBMaW5lIEtleXMsIHNlbGVjdCA8Yj5Db25maWd1cmUgTGF5b3V0LjwvYj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPlRvIHNldCB1cCB0aGUgZGlzcGxheSBzZXR0aW5ncyBhbmQgZGlhbGluZyBvcHRpb25zLCBzZWxlY3QgPGI+RGV2aWNlIFNldHRpbmdzPC9iPi48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRhYmxlIHN0eWxlPVwiYm9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBzdHlsZT1cImJhY2tncm91bmQ6I2VkZWRlZDtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cInBhZGRpbmc6MTBweCAxNnB4OyBmb250LXNpemU6Ljc1cmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiM1NDU0NTQ7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5JbmRleCAjPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cInBhZGRpbmc6MTBweCAxNnB4OyBmb250LXNpemU6Ljc1cmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiM1NDU0NTQ7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5OYW1lPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cInBhZGRpbmc6MTBweCAxNnB4OyBmb250LXNpemU6Ljc1cmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiM1NDU0NTQ7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5OdW1iZXIvRXh0ZW5zaW9uPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aCBzdHlsZT1cInBhZGRpbmc6MTBweCAxNnB4OyBmb250LXNpemU6Ljc1cmVtOyBmb250LXdlaWdodDo0MDA7IGNvbG9yOiM1NDU0NTQ7IHRleHQtYWxpZ246bGVmdDsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5BcHBlYXJhbmNlczwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJwYWRkaW5nOjEwcHggMTZweDsgZm9udC1zaXplOi43NXJlbTsgZm9udC13ZWlnaHQ6NDAwOyBjb2xvcjojNTQ1NDU0OyB0ZXh0LWFsaWduOmxlZnQ7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+UmVnaXN0ZXJlZDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRldmljZT8ubGluZXMgJiYgZGV2aWNlPy5saW5lcy5sZW5ndGhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciBzdHlsZT1cImJhY2tncm91bmQ6I2ZmZjsgY3Vyc29yOnBvaW50ZXI7XCIgb25tb3VzZW92ZXI9XCJ0aGlzLnN0eWxlLmJhY2tncm91bmQ9JyNmYWZhZmEnXCIgb25tb3VzZW91dD1cInRoaXMuc3R5bGUuYmFja2dyb3VuZD0nI2ZmZidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgbGluZSBvZiBkZXZpY2UubGluZXM7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJwYWRkaW5nOiAuMjVyZW0gMS4yNXJlbSAuMjVyZW0gLjc1cmVtOzsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9XCJkaXNwbGF5OmlubGluZS1ibG9jazsgY29sb3I6IzAwMDAwMGYyOyBwYWRkaW5nOjRweCAxNHB4OyBmb250LXNpemU6Ljg3NXJlbTsgZm9udC13ZWlnaHQ6NDAwO1wiPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCBzdHlsZT1cInBhZGRpbmc6IC4yNXJlbSAxLjI1cmVtIC4yNXJlbSAuNzVyZW07OyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZThlOGU4O1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBzdHlsZT1cImRpc3BsYXk6aW5saW5lLWJsb2NrOyBjb2xvcjojMDAwMDAwZjI7IHBhZGRpbmc6NHB4IDE0cHg7IGZvbnQtc2l6ZTouODc1cmVtOyBmb250LXdlaWdodDo0MDA7XCI+e3tsaW5lPy5uYW1lfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJwYWRkaW5nOiAuMjVyZW0gMS4yNXJlbSAuMjVyZW0gLjc1cmVtOzsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwid2lkdGg6IDEyMHB4O1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuY29udGVudGVkaXRhYmxlXT1cIiFpc1dlYmV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJvbk51bWJlckNoYW5nZSgkZXZlbnQsIGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgbGluZT8ubnVtYmVyIHx8ICdOQScgfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPiAmbmJzcDsvJm5ic3A7IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5jb250ZW50ZWRpdGFibGVdPVwiIWlzV2ViZXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChibHVyKT1cIm9uRXh0ZW5zaW9uQ2hhbmdlKCRldmVudCwgaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBsaW5lPy5leHRlbnNpb24gfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YXBwLWRldmljZS1hc3NvY2lhdGVkLWxpbmUtZXh0ZW5zaW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtjb250cm9sXT1cImxpbmVzQ29udHJvbHMuYXQoaSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVQYXJ0aXRpb25dPVwibGluZS5yb3V0ZVBhcnRpdGlvbk5hbWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlyZWN0b3J5TnVtYmVyXT1cImxpbmUuZGlyZWN0b3J5TnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3NpdGVJZF09XCJzaXRlSWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob25DaGFuZ2UpPVwib25FeHRlbnNpb25DaGFuZ2UoJGV2ZW50LCBpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYXBwLWRldmljZS1hc3NvY2lhdGVkLWxpbmUtZXh0ZW5zaW9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJwYWRkaW5nOiAuMjVyZW0gMS4yNXJlbSAuMjVyZW0gLjc1cmVtOzsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9XCJkaXNwbGF5OmlubGluZS1ibG9jazsgY29sb3I6IzAwMDAwMGYyOyBwYWRkaW5nOjRweCAxNHB4OyBmb250LXNpemU6Ljg3NXJlbTsgZm9udC13ZWlnaHQ6NDAwO1wiPjE8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJwYWRkaW5nOiAuMjVyZW0gMS4yNXJlbSAuMjVyZW0gLjc1cmVtOzsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIHdhcm5pbmctaWNvbiByZW0xXCIgW21hdFRvb2x0aXBdPVwiJ1VucmVnaXN0ZXJlZCdcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdGFibGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvdGFsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPjE1IG9mIDE2IHRvdGFsIGxpbmVzIGF2YWlsYWJsZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29uZmlndXJlLWxpbmVzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaW5lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBjb25maWd1cmUtaWNvbiByZW0xLTI1XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPkNvbmZpZ3VyZSBMaW5lczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiIHN0eWxlPVwiZm9udC13ZWlnaHQ6IDUwMDtcIj5NYW5hZ2U8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGFycm93LXJpZ2h0LWljb24gcmVtMS0yNVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaW5lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBjb25maWd1cmUtaWNvbiByZW0xLTI1XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPkNvbmZpZ3VyZSBMYXlvdXQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIiBzdHlsZT1cImZvbnQtd2VpZ2h0OiA1MDA7XCI+TWFuYWdlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBhcnJvdy1yaWdodC1pY29uIHJlbTEtMjVcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGluZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gY29uZmlndXJlLWljb24gcmVtMS0yNVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5EZXZpY2UgU2V0dGluZ3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIiBzdHlsZT1cImZvbnQtd2VpZ2h0OiA1MDA7XCI+TWFuYWdlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBhcnJvdy1yaWdodC1pY29uIHJlbTEtMjVcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGl0bGVcIj5TdXBwb3J0PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbC1yb3cgZmxleC1jb2x1bW4gZ2FwLTBfNzVcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29uZmlndXJlLWxpbmVzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaW5lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPk1lZXRpbmdzICYgQ2FsbHM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJsYWJlbCBuZXdcIj5OZXc8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGluZm8taWNvbiByZW0xXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiJ1Ryb3VibGVzaG9vdGluZyBwcm92aWRlcyBkZXRhaWxzIGFib3V0IHRoZSBkZXZpY2UgcmVsYXRlZCB0byBzdGF0dXMsIG5ldHdvcmsgYWN0aXZpdHksIGFuZCBjYWxsIGluZm9ybWF0aW9uLidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIiBzdHlsZT1cImZvbnQtd2VpZ2h0OiA1MDA7XCI+R28gdG8gdHJvdWJsZXNob290aW5nPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBhcnJvdy1yaWdodC1pY29uIHJlbTEtMjVcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGluZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5EZXZpY2UgTG9nczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gaW5mby1pY29uIHJlbTFcIiBbbWF0VG9vbHRpcF09XCInR2VuZXJhdGUgZGV2aWNlIGxvZ3MgYW5kIGRvd25sb2FkIHRoZW0gdG8geW91ciBjb21wdXRlci4nXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCIgc3R5bGU9XCJmb250LXdlaWdodDogNTAwO1wiPk1hbmFnZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gYXJyb3ctcmlnaHQtaWNvbiByZW0xLTI1XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuICAgIDwvZGl2PlxyXG5cclxuICA8L2Rpdj5cclxuICBcclxuPC9kaXY+Il19
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLW1hbmFnZS13aWRnZXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvZGV2aWNlLW1hbmFnZS13aWRnZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvZGV2aWNlLW1hbmFnZS13aWRnZXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBMEMsTUFBTSxnQkFBZ0IsQ0FBQztBQUtoRyxPQUFPLEVBQUUsUUFBUSxFQUFZLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQWtCOUQsTUFBTSxPQUFPLDJCQUEyQjtJQTZCdEMsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7SUFDM0MsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxLQUFLLE1BQU0sQ0FBQztJQUMzRixDQUFDO0lBRUQsWUFDUyxXQUF3QixFQUN4QixhQUE0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Y2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQXJyYXksIEZvcm1Db250cm9sLCBGb3JtQ29udHJvbE5hbWUsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgU2ltcGxpZmllZFVzZXIgfSBmcm9tICcuL2NsYXNzZXMvc2ltcGxpZmllZC11c2VyJztcclxuaW1wb3J0IHsgTGluZUFzc29jaWF0aW9uIH0gZnJvbSAnLi9jbGFzc2VzL2xpbmUtYXNzb2NpYXRpb24nO1xyXG5pbXBvcnQgeyBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2UgfSBmcm9tICcuL2NsYXNzZXMvbGluZS1hc3NvY2lhdGlvbi1pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBEZXZpY2UsIERldmljZVZpZXdUeXBlIH0gZnJvbSAnLi9jbGFzc2VzL2RldmljZSc7XHJcbmltcG9ydCB7IGZpbmFsaXplLCBmb3JrSm9pbiwgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1hdFRhYkdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFicyc7XHJcbmltcG9ydCB7IE1hdERpYWxvZyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XHJcbmltcG9ydCB7IEluZm9EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbmZpcm0tZGlhbG9nL2luZm8tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzZXJTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEZXZpY2VTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kZXZpY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEFQSVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGluZVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2xpbmUuc2VydmljZSc7XHJcbmltcG9ydCB7IFNpdGVTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL3NpdGUtc2V0dGluZ3Muc2VydmljZSc7XHJcbmltcG9ydCB7IFZhbGlkYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy92YWxpZGF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUT0dHTEVfVFlQRVMgfSBmcm9tICcuL2FwcC5jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBEbnNTZXJ2aWNlIH0gZnJvbSAnLi9zZXJ2aWNlcy9kbnMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1kZXZpY2UtbWFuYWdlLXdpZGdldCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2RldmljZS1tYW5hZ2Utd2lkZ2V0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kZXZpY2UtbWFuYWdlLXdpZGdldC5jb21wb25lbnQuc2NzcyddLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGV2aWNlTWFuYWdlV2lkZ2V0Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBAT3V0cHV0KCkgb25TYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcbiAgQE91dHB1dCgpIGRpc2NhcmRDaGFuZ2VzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIEBPdXRwdXQoKSBnb0JhY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQElucHV0KCkgdG9rZW4hOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaG9zdCE6IHN0cmluZztcclxuICBASW5wdXQoKSBzaXRlSWQhOiBudW1iZXI7XHJcbiAgQElucHV0KCkgdXNlcklkITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGlzTGRhcCE6IGJvb2xlYW47XHJcbiAgQElucHV0KCkgZGV2aWNlTmFtZSE6IHN0cmluZztcclxuXHJcbiAgQFZpZXdDaGlsZCgndGFnSW5wdXQnKSB0YWdJbnB1dCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XHJcblxyXG4gIGRhdGFQZW5kaW5nITogYm9vbGVhbjtcclxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuICBwdWJsaWMgZGV2aWNlOiBhbnkgPSBudWxsO1xyXG4gIHB1YmxpYyB0b2tlbk9iajogYW55ID0gbnVsbDtcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IEhPVEVMSU5HX1RJTUVfSE9VUlMgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiAxMjAgfSwgKF8sIGluZGV4KSA9PiBpbmRleCk7XHJcblxyXG4gIC8vIHB1YmxpYyByZWFkb25seSBob3RlbGluZ0xpbWl0VGltZSA9IG5ldyBGb3JtQ29udHJvbCgyNCk7XHJcbiAgcHVibGljIGxvZ01pc3NlZENhbGwgPSBuZXcgRm9ybUNvbnRyb2wodHJ1ZSk7XHJcblxyXG4gIHRhZ3M6IHN0cmluZ1tdID0gW107XHJcbiAgaXNBZGRpbmcgPSBmYWxzZTtcclxuICBuZXdUYWcgPSAnJztcclxuICBsaW5lc0NvbnRyb2xzID0gbmV3IEZvcm1BcnJheTxGb3JtQ29udHJvbDxzdHJpbmc+PihbXSk7XHJcblxyXG4gIGdldCBmaXJzdE5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLnVzZXJOYW1lO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGxhc3ROYW1lKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy51c2VyU2VydmljZS51c2VyTGFzdE5hbWU7XHJcbiAgfVxyXG5cclxuICBnZXQgZm9ybSgpOiBGb3JtR3JvdXAgfCB1bmRlZmluZWQge1xyXG4gICAgcmV0dXJuIHRoaXMudXNlclNlcnZpY2UudXNlckRldmljZT8uZm9ybTtcclxuICB9XHJcblxyXG4gIGdldCBpc1dlYmV4KCkge1xyXG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd3ZWJleFVVSUQnKSAmJiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnd2ViZXhVVUlEJykgIT09ICdudWxsJztcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcclxuICAgIHB1YmxpYyBkZXZpY2VTZXJ2aWNlOiBEZXZpY2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBUElTZXJ2aWNlLFxyXG4gICAgcHVibGljIGxpbmVTZXJ2aWNlOiBMaW5lU2VydmljZSxcclxuICAgIHB1YmxpYyBzaXRlU2V0dGluZ3NTZXJ2aWNlOiBTaXRlU2V0dGluZ3NTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB2YWxpZGF0aW9uU2VydmljZTogVmFsaWRhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRpYWxvZzogTWF0RGlhbG9nLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBkbnNTZXJ2aWNlOiBEbnNTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFwaVNlcnZpY2UudG9rZW4gPSB0aGlzLnRva2VuO1xyXG4gICAgdGhpcy5hcGlTZXJ2aWNlLmFwaVVybCA9IHRoaXMuaG9zdDtcclxuICAgIGNvbnNvbGUubG9nKCd0aGlzLmFwaVNlcnZpY2UuYXBpVXJsID0gJywgdGhpcy5hcGlTZXJ2aWNlLmFwaVVybCk7XHJcbiAgICB0aGlzLmdldERhdGEoKTtcclxuICB9XHJcblxyXG4gIHNob3dJbnB1dCgpIHtcclxuICAgIHRoaXMuaXNBZGRpbmcgPSB0cnVlO1xyXG5cclxuICAgIC8vIHdhaXQgdW50aWwgaW5wdXQgYXBwZWFycyBpbiBET01cclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLnRhZ0lucHV0Py5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uQmx1cigpIHtcclxuICAgIGNvbnN0IHZhbHVlID0gdGhpcy5uZXdUYWcudHJpbSgpO1xyXG5cclxuICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICB0aGlzLnRhZ3MucHVzaCh2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5uZXdUYWcgPSAnJztcclxuICAgIHRoaXMuaXNBZGRpbmcgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIHJlbW92ZVRhZyhpbmRleDogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnRhZ3Muc3BsaWNlKGluZGV4LCAxKTtcclxuICB9XHJcblxyXG4gIGdldCBob3RlbGluZ0VuYWJsZWQoKTogRm9ybUNvbnRyb2wge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybT8uZ2V0KCdob3RlbGluZycpPy5nZXQoJ2VuYWJsZWQnKSBhcyBGb3JtQ29udHJvbDtcclxuICB9XHJcblxyXG4gIGdldCBndWVzdEhvdXJzTGltaXQoKTogRm9ybUNvbnRyb2wge1xyXG4gICAgcmV0dXJuIHRoaXMuZm9ybT8uZ2V0KCdob3RlbGluZycpPy5nZXQoJ2d1ZXN0SG91cnNMaW1pdCcpIGFzIEZvcm1Db250cm9sO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXREYXRhKCkge1xyXG4gICAgdGhpcy5kYXRhUGVuZGluZyA9IHRydWU7XHJcbiAgICBsZXQgcmVxdWVzdDtcclxuICAgIGNvbnN0IGRldmljZVR5cGUgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnZGV2aWNlVHlwZScpO1xyXG4gICAgLy8gY29uc3QgZGV2aWNlVHlwZSA9IHRoaXMuZGV2aWNlTmFtZTtcclxuICAgIGlmKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdpc1dlYmV4JykgPT09ICd0cnVlJykge1xyXG4gICAgICAvLyByZXF1ZXN0XHJcbiAgICAgIGNvbnN0IGN1c3RvbWVySWQgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnY3VzdG9tZXJJZCcpO1xyXG4gICAgICBjb25zdCB3ZWJleElkID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3dlYmV4VVVJRCcpO1xyXG4gICAgICByZXF1ZXN0ID0gdGhpcy51c2VyU2VydmljZS5mZXRjaFdlYmV4VXNlckRldmljZShjdXN0b21lcklkISwgd2ViZXhJZCEsIGRldmljZVR5cGUhKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJlcXVlc3QgPSB0aGlzLnVzZXJTZXJ2aWNlLmZldGNoRElVc2VyRGV2aWNlKHRoaXMuc2l0ZUlkLCB0aGlzLnVzZXJJZCwgZGV2aWNlVHlwZSEpO1xyXG4gICAgfVxyXG4gICAgcmVxdWVzdFxyXG4gICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgLnBpcGUoZmluYWxpemUoKCkgPT4gdGhpcy5kYXRhUGVuZGluZyA9IGZhbHNlKSlcclxuICAgIC5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICB0aGlzLmRldmljZSA9IGRhdGE7XHJcbiAgICAgIHRoaXMuaW5pdEZvcm1EYXRhKHRoaXMuZGV2aWNlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgaW5pdEZvcm1EYXRhKGRldmljZTogYW55KSB7XHJcblxyXG4gICAgdGhpcy5saW5lc0NvbnRyb2xzID0gbmV3IEZvcm1BcnJheShcclxuICAgICAgdGhpcy5kZXZpY2UubGluZXMubWFwKChsaW5lOiBhbnkpID0+XHJcbiAgICAgICAgbmV3IEZvcm1Db250cm9sKFN0cmluZyhsaW5lLmV4dGVuc2lvbikgfHwgJycpXHJcbiAgICAgIClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25OdW1iZXJDaGFuZ2UoZXZlbnQ6IEV2ZW50LCBpbmRleDogbnVtYmVyKSB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dC50cmltKCk7XHJcbiAgICB0aGlzLmRldmljZS5saW5lc1tpbmRleF0ubnVtYmVyID0gdmFsdWU7XHJcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkV4dGVuc2lvbkNoYW5nZSh2YWx1ZTogc3RyaW5nLCBpbmRleDogbnVtYmVyKSB7XHJcbiAgICAvLyBjb25zdCB2YWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmlubmVyVGV4dC50cmltKCk7XHJcbiAgICBjb25zdCBleHRlbnNpb24gPSB0aGlzLmRuc1NlcnZpY2UuZ2V0RG5WYWx1ZSh2YWx1ZSk7XHJcbiAgICBjb25zdCBudW1iZXIgPSB0aGlzLmRuc1NlcnZpY2UuZ2V0TWFwcGVkRGlkcyhleHRlbnNpb24sICcwJyk7XHJcbiAgICB0aGlzLmRldmljZS5saW5lc1tpbmRleF0uZXh0ZW5zaW9uID0gZXh0ZW5zaW9uO1xyXG4gICAgdGhpcy5kZXZpY2UubGluZXNbaW5kZXhdLm51bWJlciA9IG51bWJlciB8fCAnJztcclxuICAgIHRoaXMubGluZXNDb250cm9scy5hdChpbmRleCkuc2V0VmFsdWUoZXh0ZW5zaW9uKTtcclxuICAgIHRoaXMub25DaGFuZ2UuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgc2F2ZUNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMudXNlclNlcnZpY2UuaGFzVW5zYXZlZENoYW5nZXMoKSB8fCB0aGlzLmZvcm0/LmludmFsaWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHVwZGF0ZWRMaW5lcyA9IHRoaXMuZGV2aWNlLmxpbmVzLmZpbHRlcigobGluZTogYW55LCBpbmRleDogYW55KSA9PiB0aGlzLnVzZXJTZXJ2aWNlLmxpbmVVcGRhdGVkKGxpbmUsIGluZGV4KSk7XHJcbiAgICB1cGRhdGVkTGluZXMuZm9yRWFjaCgobGluZTogYW55KSA9PiB0aGlzLnVzZXJTZXJ2aWNlLnNhdmVOZXdMaW5lKGxpbmUpKTtcclxuXHJcbiAgICB0aGlzLmRhdGFQZW5kaW5nID0gdHJ1ZTtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aGlzLmRhdGFQZW5kaW5nID0gZmFsc2U7XHJcbiAgICB9LCAyMDAwMCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xyXG4gICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgb25Hb0JhY2soKTogdm9pZCB7XHJcbiAgICB0aGlzLmdvQmFjay5lbWl0KCk7XHJcbiAgfVxyXG59XHJcbiIsIlxyXG5cclxuPGFwcC1sb2FkZXIgKm5nSWY9XCJkYXRhUGVuZGluZ1wiPjwvYXBwLWxvYWRlcj5cclxuPGRpdiAqbmdJZj1cIiFkYXRhUGVuZGluZ1wiPlxyXG4gIDwhLS0gPGRpdiBjbGFzcz1cImdvLWJhY2stYm94XCIgKGNsaWNrKT1cIm9uR29CYWNrKClcIj4gLS0+XHJcbiAgPGRpdiBjbGFzcz1cImdvLWJhY2stYm94XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZ28tYmFjay1ib3gtY29udGFpbmVyXCI+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwiYXBwLWljb24gaWNvbi13ZWJleC1sZWZ0LWFycm93XCI+PC9zcGFuPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImdvLWJhY2stdGl0bGVcIj5EZXZpY2VzPC9zcGFuPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxhcHAtZGV2aWNlLWluZm8gXHJcbiAgICBbZGV2aWNlXT1cImRldmljZVwiIFxyXG4gICAgW2ZpcnN0TmFtZV09XCJmaXJzdE5hbWVcIiBcclxuICAgIFtsYXN0TmFtZV09XCJsYXN0TmFtZVwiXHJcbiAgICAob25jbGlja0JhY2spPVwib25Hb0JhY2soKVwiXHJcbiAgICA+XHJcbiAgICBcclxuICA8L2FwcC1kZXZpY2UtaW5mbz5cclxuICA8ZGl2IGNsYXNzPVwiZGV2aWNlLWluZm9cIj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiZGV2aWNlLWluZm8tcGFydFwiPlxyXG5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPkRldGFpbHM8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlIGxlZnQtcGFydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1haW4tdmFsdWVcIj57eyBmb3JtPy5nZXQoJ21heExpbmVDb3VudCcpPy52YWx1ZSB8fCAnTi9BJyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJleHRyYS1pbmZvXCI+TGluZXM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpZGUgcmlnaHQtcGFydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1haW4tdmFsdWVcIj57eyAoZm9ybT8uZ2V0KCdtYWNBZGRyZXNzJyk/LnZhbHVlIHwgbWFjQWRkcmVzcykgfHwgJ04vQScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXh0cmEtaW5mb1wiPk1BQyBhZGRyZXNzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWwtcm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpZGUgbGVmdC1wYXJ0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWFpbi12YWx1ZVwiPnt7IGZvcm0/LmdldCgnaXBBZGRyZXNzJyk/LnZhbHVlIHx8ICdOL0EnIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV4dHJhLWluZm9cIj5Ib3N0IElQIGFkZHJlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNpZGUgcmlnaHQtcGFydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1haW4tdmFsdWVcIj57eyBmb3JtPy5nZXQoJ3JlbW90ZUlwQWRkcmVzcycpPy52YWx1ZSB8fCAnTi9BJyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJleHRyYS1pbmZvXCI+UmVtb3RlIElQIGFkZHJlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbC1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2lkZSBsZWZ0LXBhcnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYWluLXZhbHVlXCI+Q2lzY288L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZXh0cmEtaW5mb1wiPk1hbmFnZWQgQnk8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG5cclxuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNhcmRcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPlNvZnR3YXJlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb24tYm9yZGVyZWQtd3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBjb25maWd1cmUtaWNvbiByZW0xXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlIGxlZnQtcGFydFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1haW4tdmFsdWVcIj57eyBmb3JtPy5nZXQoJ3NvZnR3YXJlVmVyc2lvbicpPy52YWx1ZSB8fCAnTi9BJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImV4dHJhLWluZm9cIj5Tb2Z0d2FyZSBDaGFubmVsPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaWRlIHJpZ2h0LXBhcnRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtYWluLXZhbHVlXCI+e3sgZm9ybT8uZ2V0KCdzb2Z0d2FyZUNoYW5uZWwnKT8udmFsdWUgfHwgJ04vQSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJleHRyYS1pbmZvXCI+U29mdHdhcmUgdmVyc2lvbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcblxyXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+VGFnczwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWwtcm93XCIgc3R5bGU9XCJmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDFyZW07XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhZ3MtbGlzdC1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgdGFnIG9mIHRhZ3M7IGxldCBpID0gaW5kZXhcIiBjbGFzcz1cInRhZy1sYWJlbFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWctZGVzY2NyaXB0aW9uXCI+e3sgdGFnIH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGNsb3NlLWljb25cIiAoY2xpY2spPVwicmVtb3ZlVGFnKGkpXCIgc3R5bGU9XCJ3aWR0aDogMC43NXJlbTsgaGVpZ2h0OiAwLjc1cmVtOyBmbGV4OiAwIDAgYXV0bztcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWdzLWxpc3QtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ0YWctbGFiZWwgYWRkLXRhZ1wiIChjbGljayk9XCJzaG93SW5wdXQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIHBsdXMtaWNvblwiIHN0eWxlPVwid2lkdGg6IDAuNzVyZW07IGhlaWdodDogMC43NXJlbTtcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5BZGQgdGFnPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgI3RhZ0lucHV0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImVudGVyLXRhZy1pbnB1dFwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJpc0FkZGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm5ld1RhZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJvbkJsdXIoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImFkZC10YWctaW5wdXRcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiRW50ZXIgdGFnLi4uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiZGV2aWNlLWluZm8tcGFydFwiPlxyXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPklzc3VlcyAmIEluZm9ybWF0aW9uPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1haW4tY29udGVudFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRldGFpbC1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVzY3JpcHRpb25cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGNoZWNrLWljb24gcmVtMVwiIHN0eWxlPVwiZmlsdGVyOiBpbnZlcnQoMjYlKSBzZXBpYSgyNyUpIHNhdHVyYXRlKDEwOTMlKSBodWUtcm90YXRlKDExNGRlZykgYnJpZ2h0bmVzcyg5MyUpIGNvbnRyYXN0KDkwJSk7XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5ObyByZXBvcnRlZCBpc3N1ZXMgYXQgdGhpcyB0aW1lPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+SG90ZWxpbmc8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsLXJvdyBmbGV4LWNvbHVtbiBnYXAtMF83NVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPkFsbG93IHRoaXMgZGV2aWNlIHRvIGJlIHVzZWQgYXMgYSBIb3RlbGluZyBIb3N0IGJ5IHZpc2l0aW5nIGd1ZXN0cy48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRvZ2dsZS13cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtc2xpZGUtdG9nZ2xlIGNsYXNzPVwiY3VzdG9tLXRvZ2dsZVwiIG5hbWU9XCJsb2dNaXNzZWRDYWxsc1wiIFtmb3JtQ29udHJvbF09XCJob3RlbGluZ0VuYWJsZWRcIj48L21hdC1zbGlkZS10b2dnbGU+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBpbmZvLWljb24gcmVtMVwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3R5bGU9XCJmaWx0ZXI6IGludmVydCgyMCUpIHNlcGlhKDk5JSkgc2F0dXJhdGUoMjA2NSUpIGh1ZS1yb3RhdGUoMTk3ZGVnKSBicmlnaHRuZXNzKDkyJSkgY29udHJhc3QoMTAxJSk7XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidFbmFibGluZyB0aGlzIGRldmljZSBmb3IgSG90ZWxpbmcgbWVhbnMgdGhhdCBhIGd1ZXN0IChlbmQgdXNlcikgY2FuIGxvZyBpbnRvIHRoaXMgaG9zdCAod29ya3NwYWNlIHBob25lKSBhbmQgdXNlIHRoaXMgcGhvbmUgYXMgaWYgaXQgd2VyZSB0aGVpciBvd24uIFRoaXMgaXMgdXNlZnVsIHdoZW4gdHJhdmVsaW5nIHRvIGEgcmVtb3RlIG9mZmljZSBidXQgc3RpbGwgbmVlZGluZyB0byBwbGFjZS9yZWNlaXZlIGNhbGxzIHdpdGggdGhlaXIgdGVsZXBob25lIG51bWJlciBhbmQgdG8gYWNjZXNzIGZlYXR1cmVzIG5vcm1hbGx5IGF2YWlsYWJsZSB0byB0aGVtIG9uIHRoZWlyIG93biBvZmZpY2UgcGhvbmUuJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCI+TGltaXQgdGhlIHRpbWUgYSBndWVzdCBjYW4gdXNlIHRoaXMgcGhvbmUgdG88L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1zZWxlY3QgW2Zvcm1Db250cm9sXT1cImd1ZXN0SG91cnNMaW1pdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgdHlwZSBvZiBIT1RFTElOR19USU1FX0hPVVJTXCIgW3ZhbHVlXT1cInR5cGVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dHlwZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgICAgICAgICAgICAgICA8L21hdC1zZWxlY3Q+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9zZWN0aW9uPlxyXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+RGV2aWNlIE1hbmFnZW1lbnQ8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFpbi1jb250ZW50XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGV0YWlsLXJvdyBmbGV4LWNvbHVtbiBnYXAtMF83NVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiPlRoZSB1c2VycyBhbmQgd29ya3NwYWNlcyB0aGF0IGFwcGVhciBvbiB0aGlzIGRldmljZSBhcmUgZGlzcGxheWVkIGJlbG93IGluIHRoZSBvcmRlciBvZiBhcHBlYXJhbmNlLjwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCI+VG8gYWRkIGFuZCByZW1vdmUgdXNlcnMgYW5kIHdvcmtzcGFjZXMsIHNlbGVjdCA8Yj5Db25maWd1cmUgTGluZXMuPC9iPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCI+VG8gY3VzdG9taXplIHRoZSBwcm9ncmFtbWFibGUgTGluZSBLZXlzLCBzZWxlY3QgPGI+Q29uZmlndXJlIExheW91dC48L2I+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5UbyBzZXQgdXAgdGhlIGRpc3BsYXkgc2V0dGluZ3MgYW5kIGRpYWxpbmcgb3B0aW9ucywgc2VsZWN0IDxiPkRldmljZSBTZXR0aW5nczwvYj4uPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDx0YWJsZSBzdHlsZT1cImJvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dHIgc3R5bGU9XCJiYWNrZ3JvdW5kOiNlZGVkZWQ7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJwYWRkaW5nOjEwcHggMTZweDsgZm9udC1zaXplOi43NXJlbTsgZm9udC13ZWlnaHQ6NDAwOyBjb2xvcjojNTQ1NDU0OyB0ZXh0LWFsaWduOmxlZnQ7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+SW5kZXggIzwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJwYWRkaW5nOjEwcHggMTZweDsgZm9udC1zaXplOi43NXJlbTsgZm9udC13ZWlnaHQ6NDAwOyBjb2xvcjojNTQ1NDU0OyB0ZXh0LWFsaWduOmxlZnQ7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+TmFtZTwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJwYWRkaW5nOjEwcHggMTZweDsgZm9udC1zaXplOi43NXJlbTsgZm9udC13ZWlnaHQ6NDAwOyBjb2xvcjojNTQ1NDU0OyB0ZXh0LWFsaWduOmxlZnQ7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+TnVtYmVyL0V4dGVuc2lvbjwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGggc3R5bGU9XCJwYWRkaW5nOjEwcHggMTZweDsgZm9udC1zaXplOi43NXJlbTsgZm9udC13ZWlnaHQ6NDAwOyBjb2xvcjojNTQ1NDU0OyB0ZXh0LWFsaWduOmxlZnQ7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+QXBwZWFyYW5jZXM8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoIHN0eWxlPVwicGFkZGluZzoxMHB4IDE2cHg7IGZvbnQtc2l6ZTouNzVyZW07IGZvbnQtd2VpZ2h0OjQwMDsgY29sb3I6IzU0NTQ1NDsgdGV4dC1hbGlnbjpsZWZ0OyBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjZThlOGU4O1wiPlJlZ2lzdGVyZWQ8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJkZXZpY2U/LmxpbmVzICYmIGRldmljZT8ubGluZXMubGVuZ3RoXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dHIgc3R5bGU9XCJiYWNrZ3JvdW5kOiNmZmY7IGN1cnNvcjpwb2ludGVyO1wiIG9ubW91c2VvdmVyPVwidGhpcy5zdHlsZS5iYWNrZ3JvdW5kPScjZmFmYWZhJ1wiIG9ubW91c2VvdXQ9XCJ0aGlzLnN0eWxlLmJhY2tncm91bmQ9JyNmZmYnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGxpbmUgb2YgZGV2aWNlLmxpbmVzOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwicGFkZGluZzogLjI1cmVtIDEuMjVyZW0gLjI1cmVtIC43NXJlbTs7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiZGlzcGxheTppbmxpbmUtYmxvY2s7IGNvbG9yOiMwMDAwMDBmMjsgcGFkZGluZzo0cHggMTRweDsgZm9udC1zaXplOi44NzVyZW07IGZvbnQtd2VpZ2h0OjQwMDtcIj48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQgc3R5bGU9XCJwYWRkaW5nOiAuMjVyZW0gMS4yNXJlbSAuMjVyZW0gLjc1cmVtOzsgYm9yZGVyLWJvdHRvbToxcHggc29saWQgI2U4ZThlODtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gc3R5bGU9XCJkaXNwbGF5OmlubGluZS1ibG9jazsgY29sb3I6IzAwMDAwMGYyOyBwYWRkaW5nOjRweCAxNHB4OyBmb250LXNpemU6Ljg3NXJlbTsgZm9udC13ZWlnaHQ6NDAwO1wiPnt7bGluZT8ubmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwicGFkZGluZzogLjI1cmVtIDEuMjVyZW0gLjI1cmVtIC43NXJlbTs7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyO1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cIndpZHRoOiAxMjBweDtcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmNvbnRlbnRlZGl0YWJsZV09XCIhaXNXZWJleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGJsdXIpPVwib25OdW1iZXJDaGFuZ2UoJGV2ZW50LCBpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGxpbmU/Lm51bWJlciB8fCAnTkEnIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj4gJm5ic3A7LyZuYnNwOyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuY29udGVudGVkaXRhYmxlXT1cIiFpc1dlYmV4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoYmx1cik9XCJvbkV4dGVuc2lvbkNoYW5nZSgkZXZlbnQsIGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3sgbGluZT8uZXh0ZW5zaW9uIH19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFwcC1kZXZpY2UtYXNzb2NpYXRlZC1saW5lLWV4dGVuc2lvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY29udHJvbF09XCJsaW5lc0NvbnRyb2xzLmF0KGkpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlUGFydGl0aW9uXT1cImxpbmUucm91dGVQYXJ0aXRpb25OYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2RpcmVjdG9yeU51bWJlcl09XCJsaW5lLmRpcmVjdG9yeU51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzaXRlSWRdPVwic2l0ZUlkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9uQ2hhbmdlKT1cIm9uRXh0ZW5zaW9uQ2hhbmdlKCRldmVudCwgaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2FwcC1kZXZpY2UtYXNzb2NpYXRlZC1saW5lLWV4dGVuc2lvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwicGFkZGluZzogLjI1cmVtIDEuMjVyZW0gLjI1cmVtIC43NXJlbTs7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIHN0eWxlPVwiZGlzcGxheTppbmxpbmUtYmxvY2s7IGNvbG9yOiMwMDAwMDBmMjsgcGFkZGluZzo0cHggMTRweDsgZm9udC1zaXplOi44NzVyZW07IGZvbnQtd2VpZ2h0OjQwMDtcIj4xPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkIHN0eWxlPVwicGFkZGluZzogLjI1cmVtIDEuMjVyZW0gLjI1cmVtIC43NXJlbTs7IGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNlOGU4ZTg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiB3YXJuaW5nLWljb24gcmVtMVwiIFttYXRUb29sdGlwXT1cIidVbnJlZ2lzdGVyZWQnXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICA8L3RhYmxlPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b3RhbHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj4xNSBvZiAxNiB0b3RhbCBsaW5lcyBhdmFpbGFibGU8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZ3VyZS1saW5lc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGluZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gY29uZmlndXJlLWljb24gcmVtMS0yNVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5Db25maWd1cmUgTGluZXM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJjdXJzb3I6IHBvaW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIiBzdHlsZT1cImZvbnQtd2VpZ2h0OiA1MDA7XCI+TWFuYWdlPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBhcnJvdy1yaWdodC1pY29uIHJlbTEtMjVcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGluZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gY29uZmlndXJlLWljb24gcmVtMS0yNVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5Db25maWd1cmUgTGF5b3V0PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCIgc3R5bGU9XCJmb250LXdlaWdodDogNTAwO1wiPk1hbmFnZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gYXJyb3ctcmlnaHQtaWNvbiByZW0xLTI1XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxpbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGNvbmZpZ3VyZS1pY29uIHJlbTEtMjVcIj48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCI+RGV2aWNlIFNldHRpbmdzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCIgc3R5bGU9XCJmb250LXdlaWdodDogNTAwO1wiPk1hbmFnZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gYXJyb3ctcmlnaHQtaWNvbiByZW0xLTI1XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjYXJkXCI+XHJcbiAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlXCI+U3VwcG9ydDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkZXRhaWwtcm93IGZsZXgtY29sdW1uIGdhcC0wXzc1XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbmZpZ3VyZS1saW5lc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGluZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGVzY3JpcHRpb25cIj5NZWV0aW5ncyAmIENhbGxzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibGFiZWwgbmV3XCI+TmV3PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbiBpbmZvLWljb24gcmVtMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cIidUcm91Ymxlc2hvb3RpbmcgcHJvdmlkZXMgZGV0YWlscyBhYm91dCB0aGUgZGV2aWNlIHJlbGF0ZWQgdG8gc3RhdHVzLCBuZXR3b3JrIGFjdGl2aXR5LCBhbmQgY2FsbCBpbmZvcm1hdGlvbi4nXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiY3Vyc29yOiBwb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCIgc3R5bGU9XCJmb250LXdlaWdodDogNTAwO1wiPkdvIHRvIHRyb3VibGVzaG9vdGluZzwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gYXJyb3ctcmlnaHQtaWNvbiByZW0xLTI1XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxpbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRlc2NyaXB0aW9uXCI+RGV2aWNlIExvZ3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGluZm8taWNvbiByZW0xXCIgW21hdFRvb2x0aXBdPVwiJ0dlbmVyYXRlIGRldmljZSBsb2dzIGFuZCBkb3dubG9hZCB0aGVtIHRvIHlvdXIgY29tcHV0ZXIuJ1wiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImN1cnNvcjogcG9pbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kZXNjcmlwdGlvblwiIHN0eWxlPVwiZm9udC13ZWlnaHQ6IDUwMDtcIj5NYW5hZ2U8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGFycm93LXJpZ2h0LWljb24gcmVtMS0yNVwiPjwvaT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L3NlY3Rpb24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgPC9kaXY+XHJcbiAgXHJcbjwvZGl2PiJdfQ==
|
package/esm2020/user-device-manage/src/lazy-loading-select/lazy-loading-select.component.mjs
CHANGED
|
@@ -42,10 +42,10 @@ export class LazyLoadingSelectComponent {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
LazyLoadingSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LazyLoadingSelectComponent, deps: [{ token: i1.NotificationService }, { token: i2.SiteSettingsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
45
|
-
LazyLoadingSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: LazyLoadingSelectComponent, selector: "app-lazy-loading-select", inputs: { siteId: "siteId", form: "form", standalone: "standalone", placeholder: "placeholder", controlName: "controlName", optionsToken: "optionsToken", appearance: "appearance", errorCode: "errorCode", errorText: "errorText", default: "default", id: "id" }, outputs: { changeField: "changeField" }, ngImport: i0, template: "<ng-container *ngIf=\"standalone\">\n <mat-form-field appearance=\"outline\">\n <mat-select [formControl]=\"formControl\"\n (openedChange)=\"getOptions()\"\n [placeholder]=\"placeholder\"\n (selectionChange)=\"onFieldChange(controlName)\"\n [id]=\"id\">\n <mat-option>\n <div class=\"select-search-wrapper\">\n <input\n type=\"text\"\n placeholder=\"Search\"\n class=\"select-search-input\"\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"$event.stopPropagation()\"\n >\n <span class=\"search-icon-inside\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 32 32\">\n <path d=\"M13 2.25C7.063 2.25 2.25 7.063 2.25 13S7.063 23.75 13 23.75c2.699 0 5.165-.994 7.053-2.637l8.417 8.417a.75.75 0 1 0 1.06-1.06l-8.417-8.417A10.7 10.7 0 0 0 23.75 13c0-5.937-4.813-10.75-10.75-10.75M3.75 13a9.25 9.25 0 1 1 18.5 0 9.25 9.25 0 0 1-18.5 0\" fill=\"#000\"/>\n </svg>\n </span>\n </div>\n </mat-option>\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\n {{type}}\n </mat-option>\n <mat-progress-spinner class=\"field-spinner\"\n [diameter]=\"70\"\n strokeWidth=\"3\"\n mode=\"indeterminate\"\n *ngIf=\"optionsPending\"></mat-progress-spinner>\n </mat-select>\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\n <i class=\"fa fa-exclamation-triangle\"></i>\n {{errorText}}\n </mat-error>\n </mat-form-field>\n</ng-container>\n\n<!--\nThis duplication is caused by the following bug: https://github.com/angular/components/issues/9411\nWhich doesn't allow projection in mat-form-field\n-->\n\n<ng-container *ngIf=\"!standalone\">\n <mat-select *ngIf=\"form.get(controlName)\"\n [formControl]=\"formControl\"\n (openedChange)=\"getOptions()\"\n [placeholder]=\"placeholder\"\n (selectionChange)=\"onFieldChange(controlName)\"\n [id]=\"id\"\n >\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\n {{type}}\n </mat-option>\n <mat-progress-spinner class=\"field-spinner\"\n [diameter]=\"20\"\n mode=\"indeterminate\"\n *ngIf=\"optionsPending\"></mat-progress-spinner>\n </mat-select>\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\n <i class=\"fa fa-exclamation-triangle\"></i>\n {{errorText}}\n </mat-error>\n</ng-container>\n", styles: ["mat-form-field{width:300px;max-width:300px}::ng-deep .mat-option{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;line-height:48px!important;height:48px!important;padding:0 10px!important;text-align:left!important;text-decoration:none!important;position:relative!important;cursor:pointer!important;outline:none!important;display:flex!important;flex-direction:row!important;max-width:100%!important;box-sizing:border-box!important;align-items:center!important;-webkit-tap-highlight-color:rgba(0,0,0,0)!important}.select-search-wrapper{position:relative;width:100%}.search-icon-inside{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;z-index:2;display:flex;align-items:center}:host{height:35px;width:93%!important;max-width:93%!important;min-width:0!important;height:auto!important;box-sizing:border-box}:host ::ng-deep mat-form-field{width:100%;max-width:100%;height:35px}:host ::ng-deep mat-form-field .mat-form-field-flex .mat-form-field-outline .mat-form-field-outline-start{border:none!important}.select-search-input{width:100%;box-sizing:border-box;padding:7px 14px 7px 38px;margin:10px 0;border:3px solid #ccc;border-radius:.5rem;outline:none;font-size:14px;transition:border-color .2s}.select-search-input:focus{border-color:#1170cf}.field-spinner{margin-top:-30px}::ng-deep .mat-select-arrow{display:none}::ng-deep .mat-select-trigger{background:url(\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%2232%22 height%3D%2232%22 viewBox%3D%220 0 32 32%22%3E%3Cpath d%3D%22M28.708 9.293a1 1 0 0 0-1.415 0L16 20.586 4.707 9.293a1 1 0 0 0-1.414 1.414l12 12a1 1 0 0 0 1.414 0l12-12a1 1 0 0 0 0-1.414%22%2F%3E%3C%2Fsvg%3E\") no-repeat right 12px center;background-size:16px;padding-right:32px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i6.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }] });
|
|
45
|
+
LazyLoadingSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: LazyLoadingSelectComponent, selector: "app-lazy-loading-select", inputs: { siteId: "siteId", form: "form", standalone: "standalone", placeholder: "placeholder", controlName: "controlName", optionsToken: "optionsToken", appearance: "appearance", errorCode: "errorCode", errorText: "errorText", default: "default", id: "id" }, outputs: { changeField: "changeField" }, ngImport: i0, template: "<ng-container *ngIf=\"standalone\">\r\n <mat-form-field appearance=\"outline\">\r\n <mat-select [formControl]=\"formControl\"\r\n (openedChange)=\"getOptions()\"\r\n [placeholder]=\"placeholder\"\r\n (selectionChange)=\"onFieldChange(controlName)\"\r\n [id]=\"id\">\r\n <mat-option>\r\n <div class=\"select-search-wrapper\">\r\n <input\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n class=\"select-search-input\"\r\n (click)=\"$event.stopPropagation()\"\r\n (keydown)=\"$event.stopPropagation()\"\r\n >\r\n <span class=\"search-icon-inside\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 32 32\">\r\n <path d=\"M13 2.25C7.063 2.25 2.25 7.063 2.25 13S7.063 23.75 13 23.75c2.699 0 5.165-.994 7.053-2.637l8.417 8.417a.75.75 0 1 0 1.06-1.06l-8.417-8.417A10.7 10.7 0 0 0 23.75 13c0-5.937-4.813-10.75-10.75-10.75M3.75 13a9.25 9.25 0 1 1 18.5 0 9.25 9.25 0 0 1-18.5 0\" fill=\"#000\"/>\r\n </svg>\r\n </span>\r\n </div>\r\n </mat-option>\r\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\r\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\r\n {{type}}\r\n </mat-option>\r\n <mat-progress-spinner class=\"field-spinner\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"\r\n mode=\"indeterminate\"\r\n *ngIf=\"optionsPending\"></mat-progress-spinner>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\r\n <i class=\"fa fa-exclamation-triangle\"></i>\r\n {{errorText}}\r\n </mat-error>\r\n </mat-form-field>\r\n</ng-container>\r\n\r\n<!--\r\nThis duplication is caused by the following bug: https://github.com/angular/components/issues/9411\r\nWhich doesn't allow projection in mat-form-field\r\n-->\r\n\r\n<ng-container *ngIf=\"!standalone\">\r\n <mat-select *ngIf=\"form.get(controlName)\"\r\n [formControl]=\"formControl\"\r\n (openedChange)=\"getOptions()\"\r\n [placeholder]=\"placeholder\"\r\n (selectionChange)=\"onFieldChange(controlName)\"\r\n [id]=\"id\"\r\n >\r\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\r\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\r\n {{type}}\r\n </mat-option>\r\n <mat-progress-spinner class=\"field-spinner\"\r\n [diameter]=\"20\"\r\n mode=\"indeterminate\"\r\n *ngIf=\"optionsPending\"></mat-progress-spinner>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\r\n <i class=\"fa fa-exclamation-triangle\"></i>\r\n {{errorText}}\r\n </mat-error>\r\n</ng-container>\r\n", styles: ["mat-form-field{width:300px;max-width:300px}::ng-deep .mat-option{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;line-height:48px!important;height:48px!important;padding:0 10px!important;text-align:left!important;text-decoration:none!important;position:relative!important;cursor:pointer!important;outline:none!important;display:flex!important;flex-direction:row!important;max-width:100%!important;box-sizing:border-box!important;align-items:center!important;-webkit-tap-highlight-color:rgba(0,0,0,0)!important}.select-search-wrapper{position:relative;width:100%}.search-icon-inside{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;z-index:2;display:flex;align-items:center}:host{height:35px;width:93%!important;max-width:93%!important;min-width:0!important;height:auto!important;box-sizing:border-box}:host ::ng-deep mat-form-field{width:100%;max-width:100%;height:35px}:host ::ng-deep mat-form-field .mat-form-field-flex .mat-form-field-outline .mat-form-field-outline-start{border:none!important}.select-search-input{width:100%;box-sizing:border-box;padding:7px 14px 7px 38px;margin:10px 0;border:3px solid #ccc;border-radius:.5rem;outline:none;font-size:14px;transition:border-color .2s}.select-search-input:focus{border-color:#1170cf}.field-spinner{margin-top:-30px}::ng-deep .mat-select-arrow{display:none}::ng-deep .mat-select-trigger{background:url(\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%2232%22 height%3D%2232%22 viewBox%3D%220 0 32 32%22%3E%3Cpath d%3D%22M28.708 9.293a1 1 0 0 0-1.415 0L16 20.586 4.707 9.293a1 1 0 0 0-1.414 1.414l12 12a1 1 0 0 0 1.414 0l12-12a1 1 0 0 0 0-1.414%22%2F%3E%3C%2Fsvg%3E\") no-repeat right 12px center;background-size:16px;padding-right:32px}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i5.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "directive", type: i6.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i6.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "component", type: i7.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "component", type: i8.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }] });
|
|
46
46
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LazyLoadingSelectComponent, decorators: [{
|
|
47
47
|
type: Component,
|
|
48
|
-
args: [{ selector: 'app-lazy-loading-select', template: "<ng-container *ngIf=\"standalone\">\n <mat-form-field appearance=\"outline\">\n <mat-select [formControl]=\"formControl\"\n (openedChange)=\"getOptions()\"\n [placeholder]=\"placeholder\"\n (selectionChange)=\"onFieldChange(controlName)\"\n [id]=\"id\">\n <mat-option>\n <div class=\"select-search-wrapper\">\n <input\n type=\"text\"\n placeholder=\"Search\"\n class=\"select-search-input\"\n (click)=\"$event.stopPropagation()\"\n (keydown)=\"$event.stopPropagation()\"\n >\n <span class=\"search-icon-inside\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 32 32\">\n <path d=\"M13 2.25C7.063 2.25 2.25 7.063 2.25 13S7.063 23.75 13 23.75c2.699 0 5.165-.994 7.053-2.637l8.417 8.417a.75.75 0 1 0 1.06-1.06l-8.417-8.417A10.7 10.7 0 0 0 23.75 13c0-5.937-4.813-10.75-10.75-10.75M3.75 13a9.25 9.25 0 1 1 18.5 0 9.25 9.25 0 0 1-18.5 0\" fill=\"#000\"/>\n </svg>\n </span>\n </div>\n </mat-option>\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\n {{type}}\n </mat-option>\n <mat-progress-spinner class=\"field-spinner\"\n [diameter]=\"70\"\n strokeWidth=\"3\"\n mode=\"indeterminate\"\n *ngIf=\"optionsPending\"></mat-progress-spinner>\n </mat-select>\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\n <i class=\"fa fa-exclamation-triangle\"></i>\n {{errorText}}\n </mat-error>\n </mat-form-field>\n</ng-container>\n\n<!--\nThis duplication is caused by the following bug: https://github.com/angular/components/issues/9411\nWhich doesn't allow projection in mat-form-field\n-->\n\n<ng-container *ngIf=\"!standalone\">\n <mat-select *ngIf=\"form.get(controlName)\"\n [formControl]=\"formControl\"\n (openedChange)=\"getOptions()\"\n [placeholder]=\"placeholder\"\n (selectionChange)=\"onFieldChange(controlName)\"\n [id]=\"id\"\n >\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\n {{type}}\n </mat-option>\n <mat-progress-spinner class=\"field-spinner\"\n [diameter]=\"20\"\n mode=\"indeterminate\"\n *ngIf=\"optionsPending\"></mat-progress-spinner>\n </mat-select>\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\n <i class=\"fa fa-exclamation-triangle\"></i>\n {{errorText}}\n </mat-error>\n</ng-container>\n", styles: ["mat-form-field{width:300px;max-width:300px}::ng-deep .mat-option{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;line-height:48px!important;height:48px!important;padding:0 10px!important;text-align:left!important;text-decoration:none!important;position:relative!important;cursor:pointer!important;outline:none!important;display:flex!important;flex-direction:row!important;max-width:100%!important;box-sizing:border-box!important;align-items:center!important;-webkit-tap-highlight-color:rgba(0,0,0,0)!important}.select-search-wrapper{position:relative;width:100%}.search-icon-inside{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;z-index:2;display:flex;align-items:center}:host{height:35px;width:93%!important;max-width:93%!important;min-width:0!important;height:auto!important;box-sizing:border-box}:host ::ng-deep mat-form-field{width:100%;max-width:100%;height:35px}:host ::ng-deep mat-form-field .mat-form-field-flex .mat-form-field-outline .mat-form-field-outline-start{border:none!important}.select-search-input{width:100%;box-sizing:border-box;padding:7px 14px 7px 38px;margin:10px 0;border:3px solid #ccc;border-radius:.5rem;outline:none;font-size:14px;transition:border-color .2s}.select-search-input:focus{border-color:#1170cf}.field-spinner{margin-top:-30px}::ng-deep .mat-select-arrow{display:none}::ng-deep .mat-select-trigger{background:url(\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%2232%22 height%3D%2232%22 viewBox%3D%220 0 32 32%22%3E%3Cpath d%3D%22M28.708 9.293a1 1 0 0 0-1.415 0L16 20.586 4.707 9.293a1 1 0 0 0-1.414 1.414l12 12a1 1 0 0 0 1.414 0l12-12a1 1 0 0 0 0-1.414%22%2F%3E%3C%2Fsvg%3E\") no-repeat right 12px center;background-size:16px;padding-right:32px}\n"] }]
|
|
48
|
+
args: [{ selector: 'app-lazy-loading-select', template: "<ng-container *ngIf=\"standalone\">\r\n <mat-form-field appearance=\"outline\">\r\n <mat-select [formControl]=\"formControl\"\r\n (openedChange)=\"getOptions()\"\r\n [placeholder]=\"placeholder\"\r\n (selectionChange)=\"onFieldChange(controlName)\"\r\n [id]=\"id\">\r\n <mat-option>\r\n <div class=\"select-search-wrapper\">\r\n <input\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n class=\"select-search-input\"\r\n (click)=\"$event.stopPropagation()\"\r\n (keydown)=\"$event.stopPropagation()\"\r\n >\r\n <span class=\"search-icon-inside\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 32 32\">\r\n <path d=\"M13 2.25C7.063 2.25 2.25 7.063 2.25 13S7.063 23.75 13 23.75c2.699 0 5.165-.994 7.053-2.637l8.417 8.417a.75.75 0 1 0 1.06-1.06l-8.417-8.417A10.7 10.7 0 0 0 23.75 13c0-5.937-4.813-10.75-10.75-10.75M3.75 13a9.25 9.25 0 1 1 18.5 0 9.25 9.25 0 0 1-18.5 0\" fill=\"#000\"/>\r\n </svg>\r\n </span>\r\n </div>\r\n </mat-option>\r\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\r\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\r\n {{type}}\r\n </mat-option>\r\n <mat-progress-spinner class=\"field-spinner\"\r\n [diameter]=\"70\"\r\n strokeWidth=\"3\"\r\n mode=\"indeterminate\"\r\n *ngIf=\"optionsPending\"></mat-progress-spinner>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\r\n <i class=\"fa fa-exclamation-triangle\"></i>\r\n {{errorText}}\r\n </mat-error>\r\n </mat-form-field>\r\n</ng-container>\r\n\r\n<!--\r\nThis duplication is caused by the following bug: https://github.com/angular/components/issues/9411\r\nWhich doesn't allow projection in mat-form-field\r\n-->\r\n\r\n<ng-container *ngIf=\"!standalone\">\r\n <mat-select *ngIf=\"form.get(controlName)\"\r\n [formControl]=\"formControl\"\r\n (openedChange)=\"getOptions()\"\r\n [placeholder]=\"placeholder\"\r\n (selectionChange)=\"onFieldChange(controlName)\"\r\n [id]=\"id\"\r\n >\r\n <mat-option *ngIf=\"default\" [disabled]=\"default.disabled\" [value]=\"default.key\">{{default.value}}</mat-option>\r\n <mat-option *ngFor=\"let type of options\" [value]=\"type\">\r\n {{type}}\r\n </mat-option>\r\n <mat-progress-spinner class=\"field-spinner\"\r\n [diameter]=\"20\"\r\n mode=\"indeterminate\"\r\n *ngIf=\"optionsPending\"></mat-progress-spinner>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get(controlName)?.hasError(errorCode)\">\r\n <i class=\"fa fa-exclamation-triangle\"></i>\r\n {{errorText}}\r\n </mat-error>\r\n</ng-container>\r\n", styles: ["mat-form-field{width:300px;max-width:300px}::ng-deep .mat-option{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;line-height:48px!important;height:48px!important;padding:0 10px!important;text-align:left!important;text-decoration:none!important;position:relative!important;cursor:pointer!important;outline:none!important;display:flex!important;flex-direction:row!important;max-width:100%!important;box-sizing:border-box!important;align-items:center!important;-webkit-tap-highlight-color:rgba(0,0,0,0)!important}.select-search-wrapper{position:relative;width:100%}.search-icon-inside{position:absolute;left:12px;top:50%;transform:translateY(-50%);pointer-events:none;z-index:2;display:flex;align-items:center}:host{height:35px;width:93%!important;max-width:93%!important;min-width:0!important;height:auto!important;box-sizing:border-box}:host ::ng-deep mat-form-field{width:100%;max-width:100%;height:35px}:host ::ng-deep mat-form-field .mat-form-field-flex .mat-form-field-outline .mat-form-field-outline-start{border:none!important}.select-search-input{width:100%;box-sizing:border-box;padding:7px 14px 7px 38px;margin:10px 0;border:3px solid #ccc;border-radius:.5rem;outline:none;font-size:14px;transition:border-color .2s}.select-search-input:focus{border-color:#1170cf}.field-spinner{margin-top:-30px}::ng-deep .mat-select-arrow{display:none}::ng-deep .mat-select-trigger{background:url(\"data:image/svg+xml,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%2232%22 height%3D%2232%22 viewBox%3D%220 0 32 32%22%3E%3Cpath d%3D%22M28.708 9.293a1 1 0 0 0-1.415 0L16 20.586 4.707 9.293a1 1 0 0 0-1.414 1.414l12 12a1 1 0 0 0 1.414 0l12-12a1 1 0 0 0 0-1.414%22%2F%3E%3C%2Fsvg%3E\") no-repeat right 12px center;background-size:16px;padding-right:32px}\n"] }]
|
|
49
49
|
}], ctorParameters: function () { return [{ type: i1.NotificationService }, { type: i2.SiteSettingsService }]; }, propDecorators: { siteId: [{
|
|
50
50
|
type: Input
|
|
51
51
|
}], form: [{
|
|
@@ -71,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
71
71
|
}], changeField: [{
|
|
72
72
|
type: Output
|
|
73
73
|
}] } });
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS1sb2FkaW5nLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1kZXZpY2UtbWFuYWdlL3NyYy9sYXp5LWxvYWRpbmctc2VsZWN0L2xhenktbG9hZGluZy1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvbGF6eS1sb2FkaW5nLXNlbGVjdC9sYXp5LWxvYWRpbmctc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBb0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7O0FBZ0J6RixNQUFNLE9BQU8sMEJBQTBCO0lBNkJyQyxJQUFJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQWdCLENBQUM7SUFDekQsQ0FBQztJQUdELFlBQ1UsbUJBQXdDLEVBQ3hDLG1CQUF3QztRQUR4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUEzQjNDLGVBQVUsR0FBRyxJQUFJLENBQUM7UUFRbEIsZUFBVSxHQUFHLFVBQVUsQ0FBQztRQVV4QixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFXaEQsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzNDLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQzNCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUM7YUFDekUsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1lBQzVCLGFBQWE7WUFDYixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0QsQ0FBQyxFQUFFLEdBQUcsRUFBRTtZQUNOLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO1lBQzVCLCtGQUErRjtRQUNqRyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBYTtRQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDOzt3SEE5RFUsMEJBQTBCOzRHQUExQiwwQkFBMEIsNFdDaEJ2QyxtakdBbUVBOzRGRG5EYSwwQkFBMEI7a0JBTHRDLFNBQVM7K0JBQ0UseUJBQXlCOzRJQVM1QixNQUFNO3NCQURaLEtBQUs7Z0JBR0MsSUFBSTtzQkFEVixLQUFLO2dCQUdDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBR0MsV0FBVztzQkFEakIsS0FBSztnQkFHQyxXQUFXO3NCQURqQixLQUFLO2dCQUdDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBR0MsVUFBVTtzQkFEaEIsS0FBSztnQkFHQyxTQUFTO3NCQURmLEtBQUs7Z0JBR0MsU0FBUztzQkFEZixLQUFLO2dCQUdDLE9BQU87c0JBRGIsS0FBSztnQkFHQyxFQUFFO3NCQURSLEtBQUs7Z0JBR0MsV0FBVztzQkFEakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFNpdGVTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zaXRlLXNldHRpbmdzLnNlcnZpY2UnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBPcHRpb25WYWx1ZSB7XHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxuICBkaXNhYmxlZDogYm9vbGVhbjtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtbGF6eS1sb2FkaW5nLXNlbGVjdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2xhenktbG9hZGluZy1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xhenktbG9hZGluZy1zZWxlY3QuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTGF6eUxvYWRpbmdTZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcclxuICBvcHRpb25zUGVuZGluZyE6IGJvb2xlYW47XHJcbiAgb3B0aW9ucyE6IGFueTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgc2l0ZUlkITogbnVtYmVyXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZm9ybSE6IEZvcm1Hcm91cDtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBzdGFuZGFsb25lID0gdHJ1ZTtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBwbGFjZWhvbGRlciE6IHN0cmluZztcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBjb250cm9sTmFtZSE6IHN0cmluZztcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBvcHRpb25zVG9rZW4hOiBzdHJpbmc7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgYXBwZWFyYW5jZSA9ICdzdGFuZGFyZCc7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZXJyb3JDb2RlITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIGVycm9yVGV4dCE6IHN0cmluZztcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBkZWZhdWx0ITogT3B0aW9uVmFsdWU7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaWQhOiBzdHJpbmc7XHJcbiAgQE91dHB1dCgpXHJcbiAgcHVibGljIGNoYW5nZUZpZWxkID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XHJcblxyXG4gIGdldCBmb3JtQ29udHJvbCgpOiBGb3JtQ29udHJvbCB7XHJcbiAgICByZXR1cm4gdGhpcy5mb3JtPy5nZXQodGhpcy5jb250cm9sTmFtZSkgYXMgRm9ybUNvbnRyb2w7XHJcbiAgfVxyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIG5vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHNpdGVTZXR0aW5nc1NlcnZpY2U6IFNpdGVTZXR0aW5nc1NlcnZpY2UsXHJcbiAgKSB7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSBbdGhpcy5mb3JtPy5nZXQodGhpcy5jb250cm9sTmFtZSk/LnZhbHVlXTtcclxuICB9XHJcblxyXG4gIGdldE9wdGlvbnMoKSB7XHJcbiAgICBpZiAoIXRoaXMuc2l0ZUlkICYmIHRoaXMub3B0aW9ucy5sZW5ndGggPiAxKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMub3B0aW9uc1BlbmRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5zaXRlU2V0dGluZ3NTZXJ2aWNlLmdldFNlbGVjdGlvbk9wdGlvbnModGhpcy5zaXRlSWQsIHRoaXMub3B0aW9uc1Rva2VuKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLm9wdGlvbnNQZW5kaW5nID0gZmFsc2U7XHJcbiAgICAgICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuc2l0ZVNldHRpbmdzU2VydmljZVt0aGlzLm9wdGlvbnNUb2tlbl07XHJcbiAgICAgIH0sICgpID0+IHtcclxuICAgICAgICB0aGlzLm9wdGlvbnNQZW5kaW5nID0gZmFsc2U7XHJcbiAgICAgICAgLy8gdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmVycm9yKHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0NPTU1PTi5MT0FEX1NFTEVDVF9PUFRJT05TX0ZBSUxFRCcpKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25GaWVsZENoYW5nZSh0b2tlbjogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmNoYW5nZUZpZWxkLmVtaXQodG9rZW4pO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0YW5kYWxvbmVcIj5cclxuICA8bWF0LWZvcm0tZmllbGQgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgIDxtYXQtc2VsZWN0IFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiXHJcbiAgICAgICAgICAgICAgICAob3BlbmVkQ2hhbmdlKT1cImdldE9wdGlvbnMoKVwiXHJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgICAgICAgICAgICAgKHNlbGVjdGlvbkNoYW5nZSk9XCJvbkZpZWxkQ2hhbmdlKGNvbnRyb2xOYW1lKVwiXHJcbiAgICAgICAgICAgICAgICBbaWRdPVwiaWRcIj5cclxuICAgICAgPG1hdC1vcHRpb24+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdC1zZWFyY2gtd3JhcHBlclwiPlxyXG4gICAgICAgICAgPGlucHV0XHJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIlxyXG4gICAgICAgICAgICBjbGFzcz1cInNlbGVjdC1zZWFyY2gtaW5wdXRcIlxyXG4gICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuICAgICAgICAgICAgKGtleWRvd24pPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2VhcmNoLWljb24taW5zaWRlXCI+XHJcbiAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj5cclxuICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzIDIuMjVDNy4wNjMgMi4yNSAyLjI1IDcuMDYzIDIuMjUgMTNTNy4wNjMgMjMuNzUgMTMgMjMuNzVjMi42OTkgMCA1LjE2NS0uOTk0IDcuMDUzLTIuNjM3bDguNDE3IDguNDE3YS43NS43NSAwIDEgMCAxLjA2LTEuMDZsLTguNDE3LTguNDE3QTEwLjcgMTAuNyAwIDAgMCAyMy43NSAxM2MwLTUuOTM3LTQuODEzLTEwLjc1LTEwLjc1LTEwLjc1TTMuNzUgMTNhOS4yNSA5LjI1IDAgMSAxIDE4LjUgMCA5LjI1IDkuMjUgMCAwIDEtMTguNSAwXCIgZmlsbD1cIiMwMDBcIi8+XHJcbiAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L21hdC1vcHRpb24+XHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0lmPVwiZGVmYXVsdFwiIFtkaXNhYmxlZF09XCJkZWZhdWx0LmRpc2FibGVkXCIgW3ZhbHVlXT1cImRlZmF1bHQua2V5XCI+e3tkZWZhdWx0LnZhbHVlfX08L21hdC1vcHRpb24+XHJcbiAgICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCB0eXBlIG9mIG9wdGlvbnNcIiBbdmFsdWVdPVwidHlwZVwiPlxyXG4gICAgICAgIHt7dHlwZX19XHJcbiAgICAgIDwvbWF0LW9wdGlvbj5cclxuICAgICAgPG1hdC1wcm9ncmVzcy1zcGlubmVyIGNsYXNzPVwiZmllbGQtc3Bpbm5lclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlhbWV0ZXJdPVwiNzBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlV2lkdGg9XCIzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGU9XCJpbmRldGVybWluYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwib3B0aW9uc1BlbmRpbmdcIj48L21hdC1wcm9ncmVzcy1zcGlubmVyPlxyXG4gICAgPC9tYXQtc2VsZWN0PlxyXG4gICAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uZ2V0KGNvbnRyb2xOYW1lKT8uaGFzRXJyb3IoZXJyb3JDb2RlKVwiPlxyXG4gICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlXCI+PC9pPlxyXG4gICAgICB7e2Vycm9yVGV4dH19XHJcbiAgICA8L21hdC1lcnJvcj5cclxuICA8L21hdC1mb3JtLWZpZWxkPlxyXG48L25nLWNvbnRhaW5lcj5cclxuXHJcbjwhLS1cclxuVGhpcyBkdXBsaWNhdGlvbiBpcyBjYXVzZWQgYnkgdGhlIGZvbGxvd2luZyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbmd1bGFyL2NvbXBvbmVudHMvaXNzdWVzLzk0MTFcclxuV2hpY2ggZG9lc24ndCBhbGxvdyBwcm9qZWN0aW9uIGluIG1hdC1mb3JtLWZpZWxkXHJcbi0tPlxyXG5cclxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFzdGFuZGFsb25lXCI+XHJcbiAgPG1hdC1zZWxlY3QgKm5nSWY9XCJmb3JtLmdldChjb250cm9sTmFtZSlcIlxyXG4gICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtQ29udHJvbFwiXHJcbiAgICAgICAgICAgICAgKG9wZW5lZENoYW5nZSk9XCJnZXRPcHRpb25zKClcIlxyXG4gICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgICAgKHNlbGVjdGlvbkNoYW5nZSk9XCJvbkZpZWxkQ2hhbmdlKGNvbnRyb2xOYW1lKVwiXHJcbiAgICAgICAgICAgICAgW2lkXT1cImlkXCJcclxuICA+XHJcbiAgICA8bWF0LW9wdGlvbiAqbmdJZj1cImRlZmF1bHRcIiBbZGlzYWJsZWRdPVwiZGVmYXVsdC5kaXNhYmxlZFwiIFt2YWx1ZV09XCJkZWZhdWx0LmtleVwiPnt7ZGVmYXVsdC52YWx1ZX19PC9tYXQtb3B0aW9uPlxyXG4gICAgPG1hdC1vcHRpb24gKm5nRm9yPVwibGV0IHR5cGUgb2Ygb3B0aW9uc1wiIFt2YWx1ZV09XCJ0eXBlXCI+XHJcbiAgICAgIHt7dHlwZX19XHJcbiAgICA8L21hdC1vcHRpb24+XHJcbiAgICA8bWF0LXByb2dyZXNzLXNwaW5uZXIgY2xhc3M9XCJmaWVsZC1zcGlubmVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZGlhbWV0ZXJdPVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGU9XCJpbmRldGVybWluYXRlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm9wdGlvbnNQZW5kaW5nXCI+PC9tYXQtcHJvZ3Jlc3Mtc3Bpbm5lcj5cclxuICA8L21hdC1zZWxlY3Q+XHJcbiAgPG1hdC1lcnJvciAqbmdJZj1cImZvcm0uZ2V0KGNvbnRyb2xOYW1lKT8uaGFzRXJyb3IoZXJyb3JDb2RlKVwiPlxyXG4gICAgPGkgY2xhc3M9XCJmYSBmYS1leGNsYW1hdGlvbi10cmlhbmdsZVwiPjwvaT5cclxuICAgIHt7ZXJyb3JUZXh0fX1cclxuICA8L21hdC1lcnJvcj5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
|
|
@@ -23,4 +23,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
23
23
|
name: 'macAddress'
|
|
24
24
|
}]
|
|
25
25
|
}] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFjLWFkZHJlc3MucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R1a2kvd2lkZ2V0cy91c2VyLWRldmljZS1tYW5hZ2Uvc3JjL3BpcGVzL21hYy1hZGRyZXNzLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7O0FBS3BELE1BQU0sT0FBTyxjQUFjO0lBRXpCLFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBRUQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFFbkQsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRTtZQUN6QixPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsT0FBTyxPQUFPO2FBQ1gsS0FBSyxDQUFDLFNBQVMsQ0FBQztZQUNqQixFQUFFLElBQUksQ0FBQyxHQUFHLENBQUM7YUFDVixXQUFXLEVBQUUsSUFBSSxLQUFLLENBQUM7SUFDNUIsQ0FBQzs7NEdBakJVLGNBQWM7MEdBQWQsY0FBYzs0RkFBZCxjQUFjO2tCQUgxQixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxZQUFZO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnbWFjQWRkcmVzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIE1hY0FkZHJlc3NQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcblxyXG4gIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGlmICghdmFsdWUpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGNsZWFuZWQgPSB2YWx1ZS5yZXBsYWNlKC9bXmEtZkEtRjAtOV0vZywgJycpO1xyXG5cclxuICAgIGlmIChjbGVhbmVkLmxlbmd0aCAhPT0gMTIpIHtcclxuICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjbGVhbmVkXHJcbiAgICAgIC5tYXRjaCgvLnsxLDJ9L2cpXHJcbiAgICAgID8uam9pbignOicpXHJcbiAgICAgIC50b1VwcGVyQ2FzZSgpIHx8IHZhbHVlO1xyXG4gIH1cclxufSJdfQ==
|
|
@@ -76,4 +76,4 @@ APIService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version:
|
|
|
76
76
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: APIService, decorators: [{
|
|
77
77
|
type: Injectable
|
|
78
78
|
}], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1kZXZpY2UtbWFuYWdlL3NyYy9zZXJ2aWNlcy9hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBSy9ELE1BQU0sT0FBTyxVQUFVO0lBR3JCLFlBQ1UsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUZoQyxXQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEdBQUcsSUFBSSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQztJQUk3RSxDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQVcsRUFBRSxNQUFZLEVBQUUsS0FBZTtRQUM5QyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sR0FBRyxNQUFNLElBQUksRUFBRSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sQ0FBQyxFQUFFLE9BQU8sRUFBQyxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFXLEVBQUUsSUFBUyxFQUFFLE1BQU0sR0FBRyxFQUFFO1FBQ3RDLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDO1FBQ3BCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUks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LFdBQVcsRUFBRSxDQUFDO1FBQ2hDLElBQUksS0FBSyxFQUFFO1lBQ1QsT0FBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQzdDO1FBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0QsT0FBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLFNBQVMsR0FBRSxLQUFLLENBQUMsQ0FBQztRQUM1RCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBUyxFQUFFLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUk7UUFDOUQsSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLElBQUksS0FBSyxHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLEdBQUcsbUJBQW1CLENBQUMsRUFDekQsT0FBTyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPLElBQUksQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQzNCLE9BQU8sa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDOzt3R0E5RVUsVUFBVTs0R0FBVixVQUFVOzRGQUFWLFVBQVU7a0JBRHRCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQVBJU2VydmljZSB7XHJcbiAgcHVibGljIHRva2VuOiBhbnk7XHJcbiAgYXBpVXJsID0gd2luZG93LmxvY2F0aW9uLnByb3RvY29sICsgJy8vJyArIHdpbmRvdy5sb2NhdGlvbi5ob3N0bmFtZSArICcvZGNwJztcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgZmV0Y2godXJsOiBzdHJpbmcsIHBhcmFtcz86IGFueSwgY2FjaGU/OiBib29sZWFuKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSB0aGlzLmdldEhlYWRlcnMoY2FjaGUpO1xyXG4gICAgcGFyYW1zID0gcGFyYW1zIHx8IHt9O1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5nZXQodGhpcy5hcGlVcmwgKyB1cmwsIHtwYXJhbXM6IHRoaXMucHJlcGFyZUVuY29kZWRQYXJhbXMocGFyYW1zKSwgaGVhZGVyc30pO1xyXG4gIH1cclxuXHJcbiAgcG9zdCh1cmw6IHN0cmluZywgYm9keTogYW55LCBwYXJhbXMgPSB7fSk6IGFueSB7XHJcbiAgICBib2R5ID0gYm9keSB8fCBudWxsO1xyXG4gICAgY29uc3QgaGVhZGVycyA9IHRoaXMuZ2V0SGVhZGVycygpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMuYXBpVXJsICsgdXJsLCBib2R5LCB7cGFyYW1zOiB0aGlzLnByZXBhcmVFbmNvZGVkUGFyYW1zKHBhcmFtcyksIGhlYWRlcnN9KTtcclxuICB9XHJcblxyXG4gIC8vIHVzZSB3aGVuIHJlc3BvbnNlIGV4dGVuZGVkIGRhdGEgaXMgbmVjZXNzYXJ5OlxyXG4gIHBvc3RFeHRlbmRlZCh1cmw6IHN0cmluZywgYm9keSA9IG51bGwsIHBhcmFtcyA9IHt9LCBoZWFkZXJzID0ge30pIHtcclxuICAgIGhlYWRlcnMgPSBoZWFkZXJzIHx8IHRoaXMuZ2V0SGVhZGVycygpO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudC5wb3N0KHRoaXMuYXBpVXJsICsgdXJsLCBib2R5LCB7XHJcbiAgICAgIGhlYWRlcnMsXHJcbiAgICAgIG9ic2VydmU6ICdyZXNwb25zZScsXHJcbiAgICAgIHBhcmFtczogdGhpcy5wcmVwYXJlRW5jb2RlZFBhcmFtcyhwYXJhbXMpXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1dCh1cmw6IHN0cmluZywgYm9keTogYW55ID0gbnVsbCwgcGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSB0aGlzLmdldEhlYWRlcnMoKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucHV0KHRoaXMuYXBpVXJsICsgdXJsLCBib2R5LCB7aGVhZGVycywgcGFyYW1zOiB0aGlzLnByZXBhcmVFbmNvZGVkUGFyYW1zKHBhcmFtcyl9KTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZSh1cmw6IHN0cmluZywgcGFyYW1zID0ge30pIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSB0aGlzLmdldEhlYWRlcnMoKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQuZGVsZXRlKHRoaXMuYXBpVXJsICsgdXJsLCB7aGVhZGVycywgcGFyYW1zOiB0aGlzLnByZXBhcmVFbmNvZGVkUGFyYW1zKHBhcmFtcyl9KTtcclxuICB9XHJcblxyXG4gIGZldGNoUGFnaW5hdGlvbih1cmw6IHN0cmluZywgcGFnZVNpemU6IG51bWJlciwgcGFnZU51bWJlcjogbnVtYmVyLCBhZGRpdGlvbmFsUGFyYW1zID0ge30sIGNhY2hlPzogYm9vbGVhbik6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICBjb25zdCBjb3B5QWRkaXRpb25hbFBhcmFtcyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoYWRkaXRpb25hbFBhcmFtcykpO1xyXG4gICAgY29uc3QgcGFyYW1zID0gT2JqZWN0LmFzc2lnbihjb3B5QWRkaXRpb25hbFBhcmFtcywge3NpemU6IHBhZ2VTaXplLnRvU3RyaW5nKCksIHBhZ2U6IHBhZ2VOdW1iZXIudG9TdHJpbmcoKX0pO1xyXG4gICAgcmV0dXJuIHRoaXMuZmV0Y2godXJsLCBwYXJhbXMsIGNhY2hlKSBhcyBPYnNlcnZhYmxlPGFueT47XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHByZXBhcmVFbmNvZGVkUGFyYW1zKHBhcmFtczogYW55KSB7XHJcbiAgICBjb25zdCByZXN1bHQ6IGFueSA9IHt9O1xyXG5cclxuICAgIGlmICghcGFyYW1zKSB7XHJcbiAgICAgIHJldHVybiB7fTtcclxuICAgIH1cclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKHBhcmFtcykpIHtcclxuICAgICAgaWYgKHBhcmFtc1trZXldKSB7XHJcbiAgICAgICAgY29uc3Qgc3RyaW5nUGFyYW0gPSBwYXJhbXNba2V5XS50b1N0cmluZygpO1xyXG4gICAgICAgIHJlc3VsdFtrZXldID0gc3RyaW5nUGFyYW0uaW5jbHVkZXMoJysnKSA/IGVuY29kZVVSSUNvbXBvbmVudChzdHJpbmdQYXJhbSkgOiBzdHJpbmdQYXJhbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0SGVhZGVycyhjYWNoZT86IGJvb2xlYW4pOiBIdHRwSGVhZGVycyB7XHJcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpO1xyXG4gICAgaWYgKGNhY2hlKSB7XHJcbiAgICAgIGhlYWRlcnMgPSBoZWFkZXJzLmFwcGVuZCgnX0NhY2hlJywgJ3RydWUgJyk7XHJcbiAgICB9XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMudG9rZW4gfHwgdGhpcy5nZXRQYXJhbWV0ZXJCeU5hbWUoJ3Rva2VuJyk7XHJcbiAgICBoZWFkZXJzID0gaGVhZGVycy5hcHBlbmQoJ0F1dGhvcml6YXRpb24nLCAnQmVhcmVyICcrIHRva2VuKTtcclxuICAgIHJldHVybiBoZWFkZXJzO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRQYXJhbWV0ZXJCeU5hbWUobmFtZTogYW55LCB1cmwgPSB3aW5kb3cubG9jYXRpb24uaHJlZikge1xyXG4gICAgbmFtZSA9IG5hbWUucmVwbGFjZSgvW1xcW1xcXV0vZywgJ1xcXFwkJicpO1xyXG4gICAgdmFyIHJlZ2V4ID0gbmV3IFJlZ0V4cCgnWz8mXScgKyBuYW1lICsgJyg9KFteJiNdKil8JnwjfCQpJyksXHJcbiAgICAgIHJlc3VsdHMgPSByZWdleC5leGVjKHVybCk7XHJcbiAgICBpZiAoIXJlc3VsdHMpIHJldHVybiBudWxsO1xyXG4gICAgaWYgKCFyZXN1bHRzWzJdKSByZXR1cm4gJyc7XHJcbiAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KHJlc3VsdHNbMl0ucmVwbGFjZSgvXFwrL2csICcgJykpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -133,4 +133,4 @@ DnsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version:
|
|
|
133
133
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DnsService, decorators: [{
|
|
134
134
|
type: Injectable
|
|
135
135
|
}], ctorParameters: function () { return [{ type: i1.APIService }]; } });
|
|
136
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG5zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1kZXZpY2UtbWFuYWdlL3NyYy9zZXJ2aWNlcy9kbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV2QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFzQyxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRixPQUFPLEdBQUcsTUFBTSxRQUFRLENBQUM7QUFDekIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBRWxDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUM7QUFHOUIsTUFBTSxPQUFPLFVBQVU7SUFJckIsWUFDVSxVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSmhDLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztJQU90QixDQUFDO0lBQ00sY0FBYyxDQUFDLE1BQWMsRUFBRSxjQUFzQixFQUFFLFFBQWtCLEVBQUUsSUFBYSxFQUFFLFFBQWlCO1FBQ2hILGFBQWE7UUFDYixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsRUFBRSxNQUFNLEVBQUU7WUFDakQsT0FBTyxJQUFJLFVBQVUsQ0FBTSxRQUFRLENBQUMsRUFBRTtnQkFDcEMsYUFBYTtnQkFDYixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLENBQUMsOEJBQThCLEdBQUcsRUFBRSxDQUFDO1FBQ3pDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE1BQU0sTUFBTSxHQUFHLEVBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxTQUFTLEVBQUUsY0FBYyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUMsQ0FBQztRQUN4RyxJQUFJLFFBQVEsRUFBRTtZQUNaLGFBQWE7WUFDYixNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsTUFBTSxDQUFDO1NBQzdCO1FBQ0QsSUFBSSxJQUFJLEVBQUU7WUFDUixhQUFhO1lBQ2IsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQztTQUN2QjtRQUNELGFBQWE7UUFDYixJQUFJLENBQUMsZ0JBQWdCLENBQUMsY0FBYyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVwRixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQzthQUN4RixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUU7WUFDbkIsR0FBRyxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLGVBQW1ELEVBQUUsRUFBRTtnQkFDdEYsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGVBQWUsQ0FBQyxDQUFDO2dCQUNoRCxhQUFhO2dCQUNiLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7WUFDcEksQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FDSCxDQUFBO1FBQ0Qsd0NBQXdDO0lBQzVDLENBQUM7SUFFTSx5QkFBeUIsQ0FBQyxlQUFvQjtRQUNuRCxJQUFJLGVBQWUsQ0FBQyxxQkFBcUIsSUFBSSxlQUFlLENBQUMscUJBQXFCLENBQUMsTUFBTSxFQUFFO1lBRXpGLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFtQixFQUFFLEVBQUU7Z0JBQ3BFLE1BQU0sRUFBRSxHQUFHLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDMUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7Z0JBQy9DLElBQUksY0FBYyxDQUFDLHdCQUF3QixDQUFDLElBQUksY0FBYyxDQUFDLHdCQUF3QixDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDbkcsSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxHQUFHLGNBQWMsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO29CQUNuRixJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDaEUsSUFBSSxjQUFjLENBQUMsWUFBWSxDQUFDLElBQUksY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7d0JBQzNFLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsR0FBRyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7cUJBQ3pGO2lCQUNGO2dCQUNELElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDMUUsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFTSxvQkFBb0IsQ0FBQyxlQUFvQjtRQUM5QyxJQUFJLGlCQUFpQixHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7YUFDdkgsR0FBRyxDQUFDLENBQUMsZUFBdUIsRUFBRSxFQUFFO1lBQy9CLE1BQU0sRUFBRSxHQUFHLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEdBQUcsZUFBZSxDQUFDO1lBQ3JFLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQztZQUNiLElBQUksSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUNqRyxJQUFJLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsSUFBSSxJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDbkksT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDckIsR0FBRyxJQUFJLGdCQUFnQixHQUFHLENBQUMsSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO3dCQUMzRyxJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDaEU7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUU7b0JBQ3BELEdBQUcsSUFBSSxxQkFBcUIsQ0FBQztpQkFDOUI7YUFDRjtZQUNELE9BQU8sR0FBRyxDQUFDO1FBQ2IsQ0FBQyxDQUFDLENBQUM7UUFDTCxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxlQUF1QixFQUFFLEVBQUUsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFDbEksT0FBTyxpQkFBaUIsQ0FBQztJQUMzQixDQUFDO0lBRU0saUJBQWlCLENBQUMsS0FBYSxFQUFFLEdBQVc7UUFDakQsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksWUFBWSxHQUFHLEVBQUUsQ0FBQztRQUN0QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3BDLElBQUksT0FBTyxFQUFFO1lBQ1gsWUFBWSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMzQjtRQUNELE1BQU0sWUFBWSxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLGFBQWE7UUFDYixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDakcsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNoRSxJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsTUFBTSxFQUFFO2dCQUNqRCxZQUFZLEdBQUcsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUN2QztZQUNELE9BQU8sWUFBWSxHQUFHLE1BQU0sQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxVQUFVLENBQUMsU0FBaUI7UUFDakMsTUFBTSxHQUFHLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxJQUFJLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDbkIsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDWixFQUFFLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDN0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNoQjtRQUNELElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUU7WUFDekIsRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEI7UUFDRCxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU0scUJBQXFCLENBQUMsU0FBaUI7UUFDNUMsTUFBTSxHQUFHLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN4QyxJQUFJLEVBQUUsR0FBRyxTQUFTLENBQUM7UUFDbkIsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDWixFQUFFLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7WUFDN0IsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUNoQjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVNLGFBQWEsQ0FBRSxTQUFpQixFQUFFLEtBQWE7UUFDcEQsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN0QyxJQUFJLElBQUksQ0FBQyw4QkFBOEIsSUFBSSxJQUFJLENBQUMsOEJBQThCLElBQUksSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQztZQUN2SCxJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztZQUN0RyxJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxFQUFFO1lBQ2pFLE9BQU8sSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNqRjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7d0dBcklVLFVBQVU7NEdBQVYsVUFBVTs0RkFBVixVQUFVO2tCQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVBJIH0gZnJvbSAnLi4vYXBwLmNvbnN0YW50cyc7XG5pbXBvcnQgeyBBUElTZXJ2aWNlIH0gZnJvbSAnLi9hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBBdmFpbGFibGVQaG9uZU51bWJlclJhbmdlSW50ZXJmYWNlLCBEblJhbmdlVHlwZSB9IGZyb20gJy4vLi4vY2xhc3Nlcy9saW5lJztcbmltcG9ydCBCaWcgZnJvbSAnYmlnLmpzJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGNvbnN0IERFTElNSVRFUiA9ICcsICc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBEbnNTZXJ2aWNlIHtcbiAgYXZhaWxhYmxlTnVtYmVycyA9IHt9O1xuICBhdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG4hOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBUElTZXJ2aWNlXG4gICkge1xuXG4gIH1cbiAgcHVibGljIGdldE51bWJlclJhbmdlKHNpdGVJZDogc3RyaW5nLCByb3V0ZVBhcnRpdGlvbjogc3RyaW5nLCB3aXRoZGlkcz86IGJvb2xlYW4sIGZyb20/OiBzdHJpbmcsIHBhZ2VTaXplPzogbnVtYmVyKTogYW55IHtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgaWYgKHRoaXMuYXZhaWxhYmxlTnVtYmVyc1tyb3V0ZVBhcnRpdGlvbl0/Lmxlbmd0aCkge1xuICAgICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPGFueT4ob2JzZXJ2ZXIgPT4ge1xuICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgIG9ic2VydmVyLm5leHQodGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXSk7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9EbiA9IHt9O1xuICAgIHBhZ2VTaXplID0gcGFnZVNpemUgPyBwYWdlU2l6ZSA6IDIwO1xuICAgIGNvbnN0IHBhcmFtcyA9IHtkbnR5cGU6IERuUmFuZ2VUeXBlLmV4dGVuc2lvbiwgcm91dGVwYXJ0aXRpb246IHJvdXRlUGFydGl0aW9uLCBzaXplOiBwYWdlU2l6ZSwgcGFnZTogMH07XG4gICAgaWYgKHdpdGhkaWRzKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBwYXJhbXNbJ3dpdGhkaWRzJ10gPSAndHJ1ZSc7XG4gICAgfVxuICAgIGlmIChmcm9tKSB7XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBwYXJhbXNbJ2Zyb20nXSA9IGZyb207XG4gICAgfVxuICAgIC8vIEB0cy1pZ25vcmVcbiAgICB0aGlzLmF2YWlsYWJsZU51bWJlcnNbcm91dGVQYXJ0aXRpb25dID0gdGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXSB8fCBbXTtcblxuICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UuZmV0Y2goQVBJLkFWQUlMQUJMRV9ETl9JTl9SQU5HRVMucmVwbGFjZSgnOnNpdGVJZCcsIHNpdGVJZCksIHBhcmFtcylcbiAgICAgIC5waXBlKG1hcCgocmVzOiBhbnkpID0+IHtcbiAgICAgICAgICByZXMuYXZhaWxhYmxlTnVtYmVyTGlzdC5mb3JFYWNoKChhdmFpbGFibGVOdW1iZXI6IEF2YWlsYWJsZVBob25lTnVtYmVyUmFuZ2VJbnRlcmZhY2UpID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0QXZhaWxhYmxlRGlkTWFwcGVkVG9EbihhdmFpbGFibGVOdW1iZXIpO1xuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgdGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXSA9IFsuLi50aGlzLmF2YWlsYWJsZU51bWJlcnNbcm91dGVQYXJ0aXRpb25dLCAuLi50aGlzLmdldFVud3JhcE51bWJlclJhbmdlKGF2YWlsYWJsZU51bWJlcildO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLy8gLnBpcGUodGhpcy5oYW5kbGVFcnJvcih0cnVlLCBmYWxzZSkpO1xuICB9XG5cbiAgcHVibGljIHNldEF2YWlsYWJsZURpZE1hcHBlZFRvRG4oYXZhaWxhYmxlTnVtYmVyOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoYXZhaWxhYmxlTnVtYmVyLnVuVXNlZE51bWJlcnNXaXRoRGlkcyAmJiBhdmFpbGFibGVOdW1iZXIudW5Vc2VkTnVtYmVyc1dpdGhEaWRzLmxlbmd0aCkge1xuXG4gICAgICBhdmFpbGFibGVOdW1iZXIudW5Vc2VkTnVtYmVyc1dpdGhEaWRzLmZvckVhY2goKG51bWJlcldpdGhEaWRzOiBhbnkpID0+IHtcbiAgICAgICAgY29uc3QgZG4gPSBudW1iZXJXaXRoRGlkc1sndW5Vc2VkTnVtYmVyJ107XG4gICAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXSA9IFt7fV07XG4gICAgICAgIGlmIChudW1iZXJXaXRoRGlkc1sndHJhbnNsYXRpb25QYXR0ZXJuTGlzdCddICYmIG51bWJlcldpdGhEaWRzWyd0cmFuc2xhdGlvblBhdHRlcm5MaXN0J10ubGVuZ3RoID4gMCkge1xuICAgICAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXSA9IG51bWJlcldpdGhEaWRzWyd0cmFuc2xhdGlvblBhdHRlcm5MaXN0J107XG4gICAgICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10gPSBbe31dO1xuICAgICAgICAgIGlmIChudW1iZXJXaXRoRGlkc1snbWFwcGVkRGlkcyddICYmIG51bWJlcldpdGhEaWRzWydtYXBwZWREaWRzJ10ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10gPSBudW1iZXJXaXRoRGlkc1snbWFwcGVkRGlkcyddO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl1bMF1bJ3ZtJ10gPSBudW1iZXJXaXRoRGlkc1sndm0nXTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXRVbndyYXBOdW1iZXJSYW5nZShhdmFpbGFibGVOdW1iZXI6IGFueSk6IHN0cmluZ1tdIHtcbiAgICBsZXQgdW53cmFwTnVtYmVyUmFuZ2UgPSB0aGlzLnVud3JhcE51bWJlclJhbmdlKGF2YWlsYWJsZU51bWJlci5waG9uZU51bWJlclJhbmdlLmZyb20sIGF2YWlsYWJsZU51bWJlci5waG9uZU51bWJlclJhbmdlLnRvKVxuICAgICAgLm1hcCgodW53cmFwcGVkTnVtYmVyOiBzdHJpbmcpID0+IHtcbiAgICAgICAgY29uc3QgZG4gPSBhdmFpbGFibGVOdW1iZXIucGhvbmVOdW1iZXJSYW5nZS5wcmVmaXggKyB1bndyYXBwZWROdW1iZXI7XG4gICAgICAgIGxldCBzdHIgPSBkbjtcbiAgICAgICAgaWYgKHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXSAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl0ubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGlmICh0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl1bMF1bJ21hcHBlZERpZHMnXSAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl1bMF1bJ21hcHBlZERpZHMnXS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnSGVsbG8nKTtcbiAgICAgICAgICAgIHN0ciArPSAnICAgICAgICBESUQ6ICAnICsgKHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddLmxlbmd0aCA+IDEgPyAnbXVsdGlwbGUnIDpcbiAgICAgICAgICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ11bMF0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWyd2bSddKSB7XG4gICAgICAgICAgICBzdHIgKz0gJyAgICAgICAgSW4gVXNlIC0gVk0nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3RyO1xuICAgICAgfSk7XG4gICAgdW53cmFwTnVtYmVyUmFuZ2UgPSB1bndyYXBOdW1iZXJSYW5nZS5maWx0ZXIoKHVud3JhcHBlZE51bWJlcjogc3RyaW5nKSA9PiAhYXZhaWxhYmxlTnVtYmVyLnVzZWROdW1iZXJzLmluY2x1ZGVzKHVud3JhcHBlZE51bWJlcikpO1xuICAgIHJldHVybiB1bndyYXBOdW1iZXJSYW5nZTtcbiAgfVxuXG4gIHB1YmxpYyB1bndyYXBOdW1iZXJSYW5nZShzdGFydDogc3RyaW5nLCBlbmQ6IHN0cmluZyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCByZWdFeHAgPSAvKF4wKykvO1xuICAgIGxldCBsZWFkaW5nWmVyb3MgPSAnJztcbiAgICBjb25zdCBtYXRjaGVzID0gc3RhcnQubWF0Y2gocmVnRXhwKTtcbiAgICBpZiAobWF0Y2hlcykge1xuICAgICAgbGVhZGluZ1plcm9zID0gbWF0Y2hlc1sxXTtcbiAgICB9XG4gICAgY29uc3Qgc3RhcnROdW1lcmljID0gbmV3IEJpZyhzdGFydCk7XG4gICAgY29uc3QgZW5kTnVtZXJpYyA9IG5ldyBCaWcoZW5kKTtcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgcmV0dXJuIEFycmF5LmZyb20oe2xlbmd0aDogKGVuZE51bWVyaWMubWludXMoc3RhcnROdW1lcmljKS5wbHVzKG5ldyBCaWcoMSkpLnRvRml4ZWQoMCkpfSwgKHYsIGspID0+IHtcbiAgICAgIGNvbnN0IG51bWJlciA9IFN0cmluZyhzdGFydE51bWVyaWMucGx1cyhuZXcgQmlnKGspKS50b0ZpeGVkKDApKTtcbiAgICAgIGlmICgobGVhZGluZ1plcm9zICsgbnVtYmVyKS5sZW5ndGggPiBzdGFydC5sZW5ndGgpIHtcbiAgICAgICAgbGVhZGluZ1plcm9zID0gbGVhZGluZ1plcm9zLnN1YnN0cigxKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBsZWFkaW5nWmVyb3MgKyBudW1iZXI7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0RG5WYWx1ZShkbldpdGhEaWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgaW5kID0gZG5XaXRoRGlkLmluZGV4T2YoJ0RJRCcpO1xuICAgIGxldCBkbiA9IGRuV2l0aERpZDtcbiAgICBpZiAoaW5kID4gLTEpIHtcbiAgICAgIGRuID0gZG5XaXRoRGlkLnNsaWNlKDAsIGluZCk7XG4gICAgICBkbiA9IGRuLnRyaW0oKTtcbiAgICB9XG4gICAgaWYgKGRuLmNoYXJBdCgwKSA9PT0gJ1xcXFwnKSB7XG4gICAgICBkbiA9IGRuLnNsaWNlKDEpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXREblZhbHVlVHJpbUluVXNlVk0oZG4pO1xuICB9XG5cbiAgcHVibGljIGdldERuVmFsdWVUcmltSW5Vc2VWTShkbldpdGhEaWQ6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgY29uc3QgaW5kID0gZG5XaXRoRGlkLmluZGV4T2YoJ0luIFVzZScpO1xuICAgIGxldCBkbiA9IGRuV2l0aERpZDtcbiAgICBpZiAoaW5kID4gLTEpIHtcbiAgICAgIGRuID0gZG5XaXRoRGlkLnNsaWNlKDAsIGluZCk7XG4gICAgICBkbiA9IGRuLnRyaW0oKTtcbiAgICB9XG4gICAgcmV0dXJuIGRuO1xuICB9XG5cbiAgcHVibGljIGdldE1hcHBlZERpZHMgKGRuV2l0aERpZDogc3RyaW5nLCBpbmRleDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBkbiA9IHRoaXMuZ2V0RG5WYWx1ZShkbldpdGhEaWQpO1xuICAgIGlmICh0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9EbiAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9EbiAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl0gJiZcbiAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXSAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl1bMF1bJ21hcHBlZERpZHMnXSAmJlxuICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10uam9pbihERUxJTUlURVIpO1xuICAgIH1cbiAgICByZXR1cm4gJyc7XG4gIH1cbn1cbiJdfQ==
|
|
136
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG5zLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dWtpL3dpZGdldHMvdXNlci1kZXZpY2UtbWFuYWdlL3NyYy9zZXJ2aWNlcy9kbnMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV2QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFzQyxXQUFXLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRixPQUFPLEdBQUcsTUFBTSxRQUFRLENBQUM7QUFDekIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBRWxDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUM7QUFHOUIsTUFBTSxPQUFPLFVBQVU7SUFJckIsWUFDVSxVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBSmhDLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztJQU90QixDQUFDO0lBQ00sY0FBYyxDQUFDLE1BQWMsRUFBRSxjQUFzQixFQUFFLFFBQWtCLEVBQUUsSUFBYSxFQUFFLFFBQWlCO1FBQ2hILGFBQWE7UUFDYixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsRUFBRSxNQUFNLEVBQUU7WUFDakQsT0FBTyxJQUFJLFVBQVUsQ0FBTSxRQUFRLENBQUMsRUFBRTtnQkFDcEMsYUFBYTtnQkFDYixRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1lBQ3ZELENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFFRCxJQUFJLENBQUMsOEJBQThCLEdBQUcsRUFBRSxDQUFDO1FBQ3pDLFFBQVEsR0FBRyxR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LElBQUksQ0FBQyw4QkFBOEIsSUFBSSxJQUFJLENBQUMsOEJBQThCLElBQUksSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQztZQUN2SCxJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQztZQUN0RyxJQUFJLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsTUFBTSxFQUFFO1lBQ2pFLE9BQU8sSUFBSSxDQUFDLDhCQUE4QixDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNqRjtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7d0dBcklVLFVBQVU7NEdBQVYsVUFBVTs0RkFBVixVQUFVO2tCQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBUEkgfSBmcm9tICcuLi9hcHAuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgQVBJU2VydmljZSB9IGZyb20gJy4vYXBpLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEF2YWlsYWJsZVBob25lTnVtYmVyUmFuZ2VJbnRlcmZhY2UsIERuUmFuZ2VUeXBlIH0gZnJvbSAnLi8uLi9jbGFzc2VzL2xpbmUnO1xyXG5pbXBvcnQgQmlnIGZyb20gJ2JpZy5qcyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcclxuXHJcbmV4cG9ydCBjb25zdCBERUxJTUlURVIgPSAnLCAnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRG5zU2VydmljZSB7XHJcbiAgYXZhaWxhYmxlTnVtYmVycyA9IHt9O1xyXG4gIGF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9EbiE6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFQSVNlcnZpY2VcclxuICApIHtcclxuXHJcbiAgfVxyXG4gIHB1YmxpYyBnZXROdW1iZXJSYW5nZShzaXRlSWQ6IHN0cmluZywgcm91dGVQYXJ0aXRpb246IHN0cmluZywgd2l0aGRpZHM/OiBib29sZWFuLCBmcm9tPzogc3RyaW5nLCBwYWdlU2l6ZT86IG51bWJlcik6IGFueSB7XHJcbiAgICAvLyBAdHMtaWdub3JlXHJcbiAgICBpZiAodGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXT8ubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxhbnk+KG9ic2VydmVyID0+IHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgb2JzZXJ2ZXIubmV4dCh0aGlzLmF2YWlsYWJsZU51bWJlcnNbcm91dGVQYXJ0aXRpb25dKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG4gPSB7fTtcclxuICAgIHBhZ2VTaXplID0gcGFnZVNpemUgPyBwYWdlU2l6ZSA6IDIwO1xyXG4gICAgY29uc3QgcGFyYW1zID0ge2RudHlwZTogRG5SYW5nZVR5cGUuZXh0ZW5zaW9uLCByb3V0ZXBhcnRpdGlvbjogcm91dGVQYXJ0aXRpb24sIHNpemU6IHBhZ2VTaXplLCBwYWdlOiAwfTtcclxuICAgIGlmICh3aXRoZGlkcykge1xyXG4gICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgIHBhcmFtc1snd2l0aGRpZHMnXSA9ICd0cnVlJztcclxuICAgIH1cclxuICAgIGlmIChmcm9tKSB7XHJcbiAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgcGFyYW1zWydmcm9tJ10gPSBmcm9tO1xyXG4gICAgfVxyXG4gICAgLy8gQHRzLWlnbm9yZVxyXG4gICAgdGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXSA9IHRoaXMuYXZhaWxhYmxlTnVtYmVyc1tyb3V0ZVBhcnRpdGlvbl0gfHwgW107XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5mZXRjaChBUEkuQVZBSUxBQkxFX0ROX0lOX1JBTkdFUy5yZXBsYWNlKCc6c2l0ZUlkJywgc2l0ZUlkKSwgcGFyYW1zKVxyXG4gICAgICAucGlwZShtYXAoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICByZXMuYXZhaWxhYmxlTnVtYmVyTGlzdC5mb3JFYWNoKChhdmFpbGFibGVOdW1iZXI6IEF2YWlsYWJsZVBob25lTnVtYmVyUmFuZ2VJbnRlcmZhY2UpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5zZXRBdmFpbGFibGVEaWRNYXBwZWRUb0RuKGF2YWlsYWJsZU51bWJlcik7XHJcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICAgICAgdGhpcy5hdmFpbGFibGVOdW1iZXJzW3JvdXRlUGFydGl0aW9uXSA9IFsuLi50aGlzLmF2YWlsYWJsZU51bWJlcnNbcm91dGVQYXJ0aXRpb25dLCAuLi50aGlzLmdldFVud3JhcE51bWJlclJhbmdlKGF2YWlsYWJsZU51bWJlcildO1xyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSlcclxuICAgICAgKVxyXG4gICAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIGZhbHNlKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0QXZhaWxhYmxlRGlkTWFwcGVkVG9EbihhdmFpbGFibGVOdW1iZXI6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKGF2YWlsYWJsZU51bWJlci51blVzZWROdW1iZXJzV2l0aERpZHMgJiYgYXZhaWxhYmxlTnVtYmVyLnVuVXNlZE51bWJlcnNXaXRoRGlkcy5sZW5ndGgpIHtcclxuXHJcbiAgICAgIGF2YWlsYWJsZU51bWJlci51blVzZWROdW1iZXJzV2l0aERpZHMuZm9yRWFjaCgobnVtYmVyV2l0aERpZHM6IGFueSkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGRuID0gbnVtYmVyV2l0aERpZHNbJ3VuVXNlZE51bWJlciddO1xyXG4gICAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXSA9IFt7fV07XHJcbiAgICAgICAgaWYgKG51bWJlcldpdGhEaWRzWyd0cmFuc2xhdGlvblBhdHRlcm5MaXN0J10gJiYgbnVtYmVyV2l0aERpZHNbJ3RyYW5zbGF0aW9uUGF0dGVybkxpc3QnXS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl0gPSBudW1iZXJXaXRoRGlkc1sndHJhbnNsYXRpb25QYXR0ZXJuTGlzdCddO1xyXG4gICAgICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10gPSBbe31dO1xyXG4gICAgICAgICAgaWYgKG51bWJlcldpdGhEaWRzWydtYXBwZWREaWRzJ10gJiYgbnVtYmVyV2l0aERpZHNbJ21hcHBlZERpZHMnXS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddID0gbnVtYmVyV2l0aERpZHNbJ21hcHBlZERpZHMnXTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWyd2bSddID0gbnVtYmVyV2l0aERpZHNbJ3ZtJ107XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFVud3JhcE51bWJlclJhbmdlKGF2YWlsYWJsZU51bWJlcjogYW55KTogc3RyaW5nW10ge1xyXG4gICAgbGV0IHVud3JhcE51bWJlclJhbmdlID0gdGhpcy51bndyYXBOdW1iZXJSYW5nZShhdmFpbGFibGVOdW1iZXIucGhvbmVOdW1iZXJSYW5nZS5mcm9tLCBhdmFpbGFibGVOdW1iZXIucGhvbmVOdW1iZXJSYW5nZS50bylcclxuICAgICAgLm1hcCgodW53cmFwcGVkTnVtYmVyOiBzdHJpbmcpID0+IHtcclxuICAgICAgICBjb25zdCBkbiA9IGF2YWlsYWJsZU51bWJlci5waG9uZU51bWJlclJhbmdlLnByZWZpeCArIHVud3JhcHBlZE51bWJlcjtcclxuICAgICAgICBsZXQgc3RyID0gZG47XHJcbiAgICAgICAgaWYgKHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXSAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl0ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgaWYgKHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddICYmIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ0hlbGxvJyk7XHJcbiAgICAgICAgICAgIHN0ciArPSAnICAgICAgICBESUQ6ICAnICsgKHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddLmxlbmd0aCA+IDEgPyAnbXVsdGlwbGUnIDpcclxuICAgICAgICAgICAgICB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl1bMF1bJ21hcHBlZERpZHMnXVswXSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWyd2bSddKSB7XHJcbiAgICAgICAgICAgIHN0ciArPSAnICAgICAgICBJbiBVc2UgLSBWTSc7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBzdHI7XHJcbiAgICAgIH0pO1xyXG4gICAgdW53cmFwTnVtYmVyUmFuZ2UgPSB1bndyYXBOdW1iZXJSYW5nZS5maWx0ZXIoKHVud3JhcHBlZE51bWJlcjogc3RyaW5nKSA9PiAhYXZhaWxhYmxlTnVtYmVyLnVzZWROdW1iZXJzLmluY2x1ZGVzKHVud3JhcHBlZE51bWJlcikpO1xyXG4gICAgcmV0dXJuIHVud3JhcE51bWJlclJhbmdlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVud3JhcE51bWJlclJhbmdlKHN0YXJ0OiBzdHJpbmcsIGVuZDogc3RyaW5nKTogc3RyaW5nW10ge1xyXG4gICAgY29uc3QgcmVnRXhwID0gLyheMCspLztcclxuICAgIGxldCBsZWFkaW5nWmVyb3MgPSAnJztcclxuICAgIGNvbnN0IG1hdGNoZXMgPSBzdGFydC5tYXRjaChyZWdFeHApO1xyXG4gICAgaWYgKG1hdGNoZXMpIHtcclxuICAgICAgbGVhZGluZ1plcm9zID0gbWF0Y2hlc1sxXTtcclxuICAgIH1cclxuICAgIGNvbnN0IHN0YXJ0TnVtZXJpYyA9IG5ldyBCaWcoc3RhcnQpO1xyXG4gICAgY29uc3QgZW5kTnVtZXJpYyA9IG5ldyBCaWcoZW5kKTtcclxuICAgIC8vIEB0cy1pZ25vcmVcclxuICAgIHJldHVybiBBcnJheS5mcm9tKHtsZW5ndGg6IChlbmROdW1lcmljLm1pbnVzKHN0YXJ0TnVtZXJpYykucGx1cyhuZXcgQmlnKDEpKS50b0ZpeGVkKDApKX0sICh2LCBrKSA9PiB7XHJcbiAgICAgIGNvbnN0IG51bWJlciA9IFN0cmluZyhzdGFydE51bWVyaWMucGx1cyhuZXcgQmlnKGspKS50b0ZpeGVkKDApKTtcclxuICAgICAgaWYgKChsZWFkaW5nWmVyb3MgKyBudW1iZXIpLmxlbmd0aCA+IHN0YXJ0Lmxlbmd0aCkge1xyXG4gICAgICAgIGxlYWRpbmdaZXJvcyA9IGxlYWRpbmdaZXJvcy5zdWJzdHIoMSk7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIGxlYWRpbmdaZXJvcyArIG51bWJlcjtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERuVmFsdWUoZG5XaXRoRGlkOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgaW5kID0gZG5XaXRoRGlkLmluZGV4T2YoJ0RJRCcpO1xyXG4gICAgbGV0IGRuID0gZG5XaXRoRGlkO1xyXG4gICAgaWYgKGluZCA+IC0xKSB7XHJcbiAgICAgIGRuID0gZG5XaXRoRGlkLnNsaWNlKDAsIGluZCk7XHJcbiAgICAgIGRuID0gZG4udHJpbSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKGRuLmNoYXJBdCgwKSA9PT0gJ1xcXFwnKSB7XHJcbiAgICAgIGRuID0gZG4uc2xpY2UoMSk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy5nZXREblZhbHVlVHJpbUluVXNlVk0oZG4pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldERuVmFsdWVUcmltSW5Vc2VWTShkbldpdGhEaWQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBpbmQgPSBkbldpdGhEaWQuaW5kZXhPZignSW4gVXNlJyk7XHJcbiAgICBsZXQgZG4gPSBkbldpdGhEaWQ7XHJcbiAgICBpZiAoaW5kID4gLTEpIHtcclxuICAgICAgZG4gPSBkbldpdGhEaWQuc2xpY2UoMCwgaW5kKTtcclxuICAgICAgZG4gPSBkbi50cmltKCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZG47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TWFwcGVkRGlkcyAoZG5XaXRoRGlkOiBzdHJpbmcsIGluZGV4OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZG4gPSB0aGlzLmdldERuVmFsdWUoZG5XaXRoRGlkKTtcclxuICAgIGlmICh0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9EbiAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9EbiAmJiB0aGlzLmF2YWlsYWJsZURpZFBhdHRlcm5zTWFwcGVkVG9Ebltkbl0gJiZcclxuICAgICAgdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdICYmIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddICYmXHJcbiAgICAgIHRoaXMuYXZhaWxhYmxlRGlkUGF0dGVybnNNYXBwZWRUb0RuW2RuXVswXVsnbWFwcGVkRGlkcyddLmxlbmd0aCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5hdmFpbGFibGVEaWRQYXR0ZXJuc01hcHBlZFRvRG5bZG5dWzBdWydtYXBwZWREaWRzJ10uam9pbihERUxJTUlURVIpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -13,7 +13,7 @@ export class LineService {
|
|
|
13
13
|
return {
|
|
14
14
|
directoryNumber: lineAssociation ? this.generateLineDirectory(lineAssociation) : null,
|
|
15
15
|
didPattern: lineAssociation ? this.generateDidPatternForLineAssociation(lineAssociation) : null,
|
|
16
|
-
mappedDids: lineAssociation ?
|
|
16
|
+
mappedDids: lineAssociation ? lineAssociation.number : 'null',
|
|
17
17
|
index: lineAssociation ? lineAssociation.index : null,
|
|
18
18
|
position: lineAssociation ? lineAssociation.position : null,
|
|
19
19
|
textLabel: lineAssociation ? lineAssociation.textLabel : null,
|
|
@@ -73,4 +73,4 @@ LineService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version:
|
|
|
73
73
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LineService, decorators: [{
|
|
74
74
|
type: Injectable
|
|
75
75
|
}], ctorParameters: function () { return [{ type: i1.APIService }]; } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHVraS93aWRnZXRzL3VzZXItZGV2aWNlLW1hbmFnZS9zcmMvc2VydmljZXMvbGluZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0MsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzlELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQUkvQixNQUFNLE9BQU8sV0FBVztJQU10QixZQUNVLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUFIaEMsK0JBQTBCLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQU0zQyxDQUFDO0lBQ00sK0JBQStCLENBQUMsZUFBcUI7UUFDM0QsT0FBTztZQUNMLGVBQWUsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSTtZQUNyRixVQUFVLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsb0NBQW9DLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUk7WUFDL0YsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTTtZQUM3RCxLQUFLLEVBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJO1lBQ3JELFFBQVEsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUk7WUFDM0QsU0FBUyxF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T0FBTyxDQUFDLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUNwTCx3Q0FBd0M7SUFDMUMsQ0FBQztJQUVELHNCQUFzQixDQUFDLHFCQUFpRSxFQUFFLGVBQTJEO1FBQ25KLE1BQU0sSUFBSSxHQUFHLG1CQUFtQixDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxjQUFjLEVBQUUsRUFBRSxlQUFlLENBQUMsY0FBYyxFQUFFLEVBQzVHLDJCQUEyQixlQUFlLENBQUMsUUFBUSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDL0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzt5R0E5RVUsV0FBVzs2R0FBWCxXQUFXOzRGQUFYLFdBQVc7a0JBRHZCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFQSVNlcnZpY2UgfSBmcm9tICcuL2FwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGluZUFzc29jaWF0aW9uIH0gZnJvbSAnLi8uLi9jbGFzc2VzL2xpbmUtYXNzb2NpYXRpb24nO1xyXG5pbXBvcnQgeyBBUEkgfSBmcm9tICcuLi9hcHAuY29uc3RhbnRzJztcclxuaW1wb3J0IHsgU29ydGluZ1V0aWxzU2VydmljZSB9IGZyb20gJy4vc29ydGluZy11dGlscy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBMaW5lQXNzb2NpYXRpb25JbnRlcmZhY2UgfSBmcm9tICcuLy4uL2NsYXNzZXMvbGluZS1hc3NvY2lhdGlvbi1pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgTGluZVNlcnZpY2Uge1xyXG4gIGxpbmUhOiBMaW5lQXNzb2NpYXRpb247XHJcbiAgb3JpZ2luTGluZSE6IExpbmVBc3NvY2lhdGlvbjtcclxuICBjdXJyZW50QWN0aXZlTGluZVBraWQhOiBzdHJpbmcgfCBudWxsO1xyXG4gIG9uU2F2ZUxpbmVBc3NvY2lhdGlvbkV2ZW50ID0gbmV3IFN1YmplY3QoKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGFwaVNlcnZpY2U6IEFQSVNlcnZpY2VcclxuICApIHtcclxuXHJcbiAgfVxyXG4gIHB1YmxpYyBnZW5lcmF0ZUxpbmVBc3NvY2lhdGlvbkZyb21MaW5lKGxpbmVBc3NvY2lhdGlvbj86IGFueSkge1xyXG4gICByZXR1cm4ge1xyXG4gICAgIGRpcmVjdG9yeU51bWJlcjogbGluZUFzc29jaWF0aW9uID8gdGhpcy5nZW5lcmF0ZUxpbmVEaXJlY3RvcnkobGluZUFzc29jaWF0aW9uKSA6IG51bGwsXHJcbiAgICAgZGlkUGF0dGVybjogbGluZUFzc29jaWF0aW9uID8gdGhpcy5nZW5lcmF0ZURpZFBhdHRlcm5Gb3JMaW5lQXNzb2NpYXRpb24obGluZUFzc29jaWF0aW9uKSA6IG51bGwsXHJcbiAgICAgbWFwcGVkRGlkczogbGluZUFzc29jaWF0aW9uID8gbGluZUFzc29jaWF0aW9uLm51bWJlciA6ICdudWxsJyxcclxuICAgICBpbmRleDogbGluZUFzc29jaWF0aW9uID8gbGluZUFzc29jaWF0aW9uLmluZGV4IDogbnVsbCxcclxuICAgICBwb3NpdGlvbjogbGluZUFzc29jaWF0aW9uID8gbGluZUFzc29jaWF0aW9uLnBvc2l0aW9uIDogbnVsbCxcclxuICAgICB0ZXh0TGFiZWw6IGxpbmVBc3NvY2lhdGlvbiA/IGxpbmVBc3NvY2lhdGlvbi50ZXh0TGFiZWwgOiBudWxsLFxyXG4gICAgIC8vIGRpc3BsYXlMYWJlbDogbGluZUFzc29jaWF0aW9uID8gbGluZUFzc29jaWF0aW9uLmRpc3BsYXlMYWJlbCAgOiAnbnVsbCcsXHJcbiAgICAgYWxlcnRpbmdOYW1lOiBsaW5lQXNzb2NpYXRpb24gPyBsaW5lQXNzb2NpYXRpb24uYWxlcnRpbmdOYW1lIDogbnVsbCxcclxuICAgICBjYWxsZXJOdW1iZXI6IGxpbmVBc3NvY2lhdGlvbiA/ICcnIDogJ251bGwnXHJcbiAgIH1cclxuICB9XHJcblxyXG4gIGhhc1Vuc2F2ZWRDaGFuZ2VzKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMubGluZSAmJiB0aGlzLm9yaWdpbkxpbmUpIHtcclxuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHRoaXMubGluZS5nZXRTYXZhYmxlRGF0YSgpKSAhPT0gSlNPTi5zdHJpbmdpZnkodGhpcy5vcmlnaW5MaW5lLmdldFNhdmFibGVEYXRhKCkpXHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBnZW5lcmF0ZUxpbmVEaXJlY3RvcnkobGluZUFzc29jaWF0aW9uPzogYW55KTogYW55IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGRpcmVjdG9yeU51bWJlcjogbGluZUFzc29jaWF0aW9uLmV4dGVuc2lvbixcclxuICAgICAgcm91dGVQYXJ0aXRpb25OYW1lOiBsaW5lQXNzb2NpYXRpb24ucm91dGVQYXJ0aXRpb25OYW1lLFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVEaWRQYXR0ZXJuRm9yTGluZUFzc29jaWF0aW9uKGxpbmVBc3NvY2lhdGlvbj86IGFueSk6IGFueSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjYWxsZWRQYXJ0eVRyYW5zZm9ybWF0aW9uTWFzazogbGluZUFzc29jaWF0aW9uLmRpcmVjdG9yeU51bWJlclxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNoZWNrTGluZURlbGV0aW9uKGxpbmU6IExpbmVBc3NvY2lhdGlvbiwgc2l0ZUlkOiBudW1iZXIpOiBhbnkge1xyXG4gICAgY29uc3QgcGFyYW1zID0ge1xyXG4gICAgICBleHRlbnNpb246IGxpbmUuZGlyZWN0b3J5TnVtYmVyLmRpcmVjdG9yeU51bWJlcixcclxuICAgICAgcm91dGVQYXJ0aXRpb246IGxpbmUuZGlyZWN0b3J5TnVtYmVyLnJvdXRlUGFydGl0aW9uTmFtZSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmZldGNoKEFQSS5DSEVDS19ERUxFVEVfTElORS5yZXBsYWNlKCc6c2l0ZUlkJywgU3RyaW5nKHNpdGVJZCkpLCBwYXJhbXMpXHJcbiAgICAgIC8vIC5waXBlKHRoaXMuaGFuZGxlRXJyb3IodHJ1ZSwgdHJ1ZSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGRlbGV0ZUxpbmUoc2l0ZUlkOiBudW1iZXIsIHBraWQ6IHN0cmluZywgdG9rZW46IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5kZWxldGUoQVBJLkRFTEVURV9MSU5FLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSkucmVwbGFjZSgnOnBraWQnLCBwa2lkKS5yZXBsYWNlKCc6dG9rZW4nLCBlbmNvZGVVUklDb21wb25lbnQodG9rZW4pKSwge30pXHJcbiAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIGZhbHNlKSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGlzYXNzb2NpYXRlTGluZShzaXRlSWQ6IG51bWJlciwgbGluZVBraWQ6IHN0cmluZywgdG9rZW46IHN0cmluZywgZGV2aWNlTmFtZTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLmRlbGV0ZShcclxuICAgICAgQVBJLkRJU0FTU09DSUFURV9MSU5FLnJlcGxhY2UoJzpzaXRlSWQnLCBTdHJpbmcoc2l0ZUlkKSlcclxuICAgICAgICAucmVwbGFjZSgnOmxpbmVQa2lkJywgbGluZVBraWQpXHJcbiAgICAgICAgLnJlcGxhY2UoJzpkZXZpY2VOYW1lJywgZGV2aWNlTmFtZSlcclxuICAgICAgICAucmVwbGFjZSgnOnRva2VuJywgZW5jb2RlVVJJQ29tcG9uZW50KHRva2VuKSksIHt9KVxyXG4gICAgLy8gLnBpcGUodGhpcy5oYW5kbGVFcnJvcih0cnVlLCBmYWxzZSkpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHVwZGF0ZUxpbmVGaWVsZHMoc2l0ZUlkOiBudW1iZXIsIHBraWQ6IHN0cmluZywgdG9rZW46IHN0cmluZywgYWxlcnRpbmdOYW1lOiBhbnkpIHtcclxuICAgIGNvbnN0IGJvZHkgPSBbJ2xpbmUuZGVzY3JpcHRpb249JywgYGxpbmUuYWxlcnRpbmdOYW1lPSR7YWxlcnRpbmdOYW1lfWBdO1xyXG4gICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5wb3N0KEFQSS5VUERBVEVfTElORV9GSUVMRFMucmVwbGFjZSgnOnNpdGVJZCcsIFN0cmluZyhzaXRlSWQpKS5yZXBsYWNlKCc6cGtpZCcsIGVuY29kZVVSSUNvbXBvbmVudChwa2lkKSkucmVwbGFjZSgnOnRva2VuJywgZW5jb2RlVVJJQ29tcG9uZW50KHRva2VuKSksIGJvZHkpXHJcbiAgICAvLyAucGlwZSh0aGlzLmhhbmRsZUVycm9yKHRydWUsIGZhbHNlKSk7XHJcbiAgfVxyXG5cclxuICBnZXRMaW5lQXNzb2NpYXRpb25Cb2R5KG9yaWdpbkxpbmVBc3NvY2lhdGlvbjogTGluZUFzc29jaWF0aW9uIHwgTGluZUFzc29jaWF0aW9uSW50ZXJmYWNlLCBsaW5lQXNzb2NpYXRpb246IExpbmVBc3NvY2lhdGlvbiB8IExpbmVBc3NvY2lhdGlvbkludGVyZmFjZSkge1xyXG4gICAgY29uc3QgYm9keSA9IFNvcnRpbmdVdGlsc1NlcnZpY2UuZGlmZihvcmlnaW5MaW5lQXNzb2NpYXRpb24uZ2V0U2F2YWJsZURhdGEoKSwgbGluZUFzc29jaWF0aW9uLmdldFNhdmFibGVEYXRhKCksXHJcbiAgICAgIGBkZXZpY2UubGluZUFzc29jaWF0aW9ucy4ke2xpbmVBc3NvY2lhdGlvbi5saW5lUGtpZH1gLCBudWxsKTtcclxuICAgIHJldHVybiBib2R5O1xyXG4gIH1cclxufVxyXG4iXX0=
|