@gipisistemas/ng-core 1.1.8 → 1.1.10
Sign up to get free protection for your applications and to get access to all the features.
- package/bundles/gipisistemas-ng-core.umd.js +234 -48
- package/bundles/gipisistemas-ng-core.umd.js.map +1 -1
- package/bundles/gipisistemas-ng-core.umd.min.js +8 -8
- package/bundles/gipisistemas-ng-core.umd.min.js.map +1 -1
- package/core/services/authentication.service.d.ts +3 -1
- package/esm2015/core/gipi-components/components/abstract-find.component.js +4 -4
- package/esm2015/core/services/authentication.service.js +11 -5
- package/esm2015/core/utils/phone.util.js +12 -7
- package/esm2015/gipi-components.js +2 -1
- package/esm2015/shared/gipi-components/datepicker/datepicker/datepicker.component.js +2 -2
- package/esm2015/shared/gipi-components/input-phone/input-phone.component.js +175 -0
- package/esm2015/shared/shared.module.js +3 -1
- package/esm5/core/gipi-components/components/abstract-find.component.js +4 -4
- package/esm5/core/services/authentication.service.js +11 -5
- package/esm5/core/utils/phone.util.js +12 -7
- package/esm5/gipi-components.js +2 -1
- package/esm5/shared/gipi-components/datepicker/datepicker/datepicker.component.js +2 -2
- package/esm5/shared/gipi-components/input-phone/input-phone.component.js +182 -0
- package/esm5/shared/shared.module.js +3 -1
- package/fesm2015/gipisistemas-ng-core.js +230 -52
- package/fesm2015/gipisistemas-ng-core.js.map +1 -1
- package/fesm5/gipisistemas-ng-core.js +236 -51
- package/fesm5/gipisistemas-ng-core.js.map +1 -1
- package/gipi-components.d.ts +1 -0
- package/gipisistemas-ng-core.metadata.json +1 -1
- package/package.json +1 -1
- package/shared/gipi-components/input-phone/input-phone.component.d.ts +39 -0
@@ -119,9 +119,9 @@ var GIPIAbstractFindComponent = /** @class */ (function (_super) {
|
|
119
119
|
if (ObjectUtil.isNull(this.filter)) {
|
120
120
|
this.filter = this.newFilter();
|
121
121
|
}
|
122
|
-
|
123
|
-
|
124
|
-
|
122
|
+
if (ObjectUtil.isNull(pageEvent) && !ObjectUtil.isNull(this.tablePageEventDTO)) {
|
123
|
+
pageEvent = this.tablePageEventDTO;
|
124
|
+
}
|
125
125
|
if (pageEvent) {
|
126
126
|
this.tablePageEventDTO = pageEvent;
|
127
127
|
this.filter.pageNumber = pageEvent.pageIndex;
|
@@ -504,4 +504,4 @@ var GIPIAbstractFindComponent = /** @class */ (function (_super) {
|
|
504
504
|
return GIPIAbstractFindComponent;
|
505
505
|
}(GIPIAbstractComponent));
|
506
506
|
export { GIPIAbstractFindComponent };
|
507
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZmluZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJjb3JlL2dpcGktY29tcG9uZW50cy9jb21wb25lbnRzL2Fic3RyYWN0LWZpbmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHN0Q7SUFBb0ksNkNBQXFCO0lBMENySixtQ0FDYyxtQkFBOEQsRUFDOUQsV0FBNEIsRUFDNUIsY0FBOEI7UUFINUMsWUFLSSxrQkFBTSxXQUFXLEVBQUUsY0FBYyxDQUFDLFNBQ3JDO1FBTGEseUJBQW1CLEdBQW5CLG1CQUFtQixDQUEyQztRQUM5RCxpQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFDNUIsb0JBQWMsR0FBZCxjQUFjLENBQWdC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SUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsQ0FBQyxDQUFDO2lCQUMvRDthQUNKO1NBQ0o7UUFFRCxJQUFJLFNBQVMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUNyRyxJQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsUUFBUSxFQUFWLENBQVUsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsQ0FBQyxFQUFFLEVBQUosQ0FBSSxDQUFDLENBQUM7WUFDOUUsSUFBSSxTQUFTLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFO2dCQUNqQyxPQUFPLElBQUksQ0FBQzthQUNmO1lBRUQsT0FBTyxZQUFZLENBQUM7U0FDdkI7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDOztnQkFyZGtDLHVCQUF1QjtnQkFDL0IsZUFBZTtnQkFDWixjQUFjOztJQTdDMUIseUJBQXlCO1FBRDlDLFNBQVMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUUsQ0FBQzt5Q0E0Q1csdUJBQXVCO1lBQy9CLGVBQWU7WUFDWixjQUFjO09BN0MxQix5QkFBeUIsQ0FrZ0I5QztJQUFELGdDQUFDO0NBQUEsQUFsZ0JELENBQW9JLHFCQUFxQixHQWtnQnhKO1NBbGdCcUIseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5pbXBvcnQgeyBJTkpFQ1RPUiB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcbmltcG9ydCB7IEFQUF9NRVNTQUdFUyB9IGZyb20gJy4uLy4uL2FwcC5tZXNzYWdlcyc7XG5pbXBvcnQgeyBUYWJsZUNvbHVtbkRUTyB9IGZyb20gJy4uLy4uL21vZGVscy9kdG8vdGFibGUtY29sdW1uLmR0byc7XG5pbXBvcnQgeyBUYWJsZVBhZ2VFdmVudERUTyB9IGZyb20gJy4uLy4uL21vZGVscy9kdG8vdGFibGUtcGFnZS1ldmVudC5kdG8nO1xuaW1wb3J0IHsgQXJyYXlVdGlsIH0gZnJvbSAnLi4vLi4vdXRpbHMvYXJyYXkudXRpbCc7XG5pbXBvcnQgeyBPYmplY3RVdGlsIH0gZnJvbSAnLi4vLi4vdXRpbHMvb2JqZWN0LnV0aWwnO1xuaW1wb3J0IHsgU3RyaW5nVXRpbCB9IGZyb20gJy4uLy4uL3V0aWxzL3N0cmluZy51dGlsJztcbmltcG9ydCB7IEdJUElBYnN0cmFjdEZpbHRlck1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL2Fic3RyYWN0LWZpbHRlci5tb2RlbCc7XG5pbXBvcnQgeyBHSVBJQWJzdHJhY3RNb2RlbCB9IGZyb20gJy4uL21vZGVscy9hYnN0cmFjdC5tb2RlbCc7XG5pbXBvcnQgeyBHSVBJQXBwbGllZEZpbHRlciB9IGZyb20gJy4uL21vZGVscy9hcHBsaWVkLWZpbHRlci5tb2RlbCc7XG5pbXBvcnQgeyBHSVBJUGFnZU1vZGVsIH0gZnJvbSAnLi4vbW9kZWxzL3BhZ2UubW9kZWwnO1xuaW1wb3J0IHsgR0lQSVNvcnRNb2RlbCB9IGZyb20gJy4uL21vZGVscy9zb3J0Lm1vZGVsJztcbmltcG9ydCB7IEdJUElBYnN0cmFjdENydWRTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYWJzdHJhY3QtY3J1ZC5zZXJ2aWNlJztcbmltcG9ydCB7IEdJUElCYXNlU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Jhc2Uuc2VydmljZSc7XG5pbXBvcnQgeyBHSVBJVXVpZCB9IGZyb20gJy4uL3R5cGVzL3V1aWQudHlwZSc7XG5pbXBvcnQgeyBHSVBJQWJzdHJhY3RDb21wb25lbnQgfSBmcm9tICcuL2Fic3RyYWN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoeyB0ZW1wbGF0ZTogJycgfSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBHSVBJQWJzdHJhY3RGaW5kQ29tcG9uZW50PFRFbnRpdHkgZXh0ZW5kcyBHSVBJQWJzdHJhY3RNb2RlbCwgVEZpbHRlciBleHRlbmRzIEdJUElBYnN0cmFjdEZpbHRlck1vZGVsPiBleHRlbmRzIEdJUElBYnN0cmFjdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICAgIHByaXZhdGUgX2ZpbHRlcjogVEZpbHRlciA9IG51bGw7XG4gICAgcHVibGljIHNldCBmaWx0ZXIodmFsdWU6IFRGaWx0ZXIpIHtcbiAgICAgICAgdGhpcy5fZmlsdGVyID0gdmFsdWU7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgZmlsdGVyKCk6IFRGaWx0ZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmlsdGVyO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3BhZ2U6IEdJUElQYWdlTW9kZWw8VEVudGl0eT4gPSBudWxsO1xuICAgIHB1YmxpYyBzZXQgcGFnZSh2YWx1ZTogR0lQSVBhZ2VNb2RlbDxURW50aXR5Pikge1xuICAgICAgICB0aGlzLl9wYWdlID0gdmFsdWU7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgcGFnZSgpOiBHSVBJUGFnZU1vZGVsPFRFbnRpdHk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhZ2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdGFibGVQYWdlRXZlbnREVE86IFRhYmxlUGFnZUV2ZW50RFRPO1xuICAgIHB1YmxpYyBzZXQgdGFibGVQYWdlRXZlbnREVE8odmFsdWU6IFRhYmxlUGFnZUV2ZW50RFRPKSB7XG4gICAgICAgIHRoaXMuX3RhYmxlUGFnZUV2ZW50RFRPID0gdmFsdWU7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgdGFibGVQYWdlRXZlbnREVE8oKTogVGFibGVQYWdlRXZlbnREVE8ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGFibGVQYWdlRXZlbnREVE87XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfY29sdW1uczogVGFibGVDb2x1bW5EVE9bXSA9IFtdO1xuICAgIHB1YmxpYyBzZXQgY29sdW1ucyh2YWx1ZTogVGFibGVDb2x1bW5EVE9bXSkge1xuICAgICAgICB0aGlzLl9jb2x1bW5zID0gdmFsdWU7XG4gICAgfVxuICAgIHB1YmxpYyBnZXQgY29sdW1ucygpOiBUYWJsZUNvbHVtbkRUT1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbHVtbnM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfYXBwbGllZEZpbHRlcnM6IEdJUElBcHBsaWVkRmlsdGVyPGFueT5bXSA9IFtdO1xuICAgIHB1YmxpYyBzZXQgYXBwbGllZEZpbHRlcnModmFsdWU6IEdJUElBcHBsaWVkRmlsdGVyPGFueT5bXSkge1xuICAgICAgICB0aGlzLl9hcHBsaWVkRmlsdGVycyA9IHZhbHVlO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IGFwcGxpZWRGaWx0ZXJzKCk6IEdJUElBcHBsaWVkRmlsdGVyPGFueT5bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9hcHBsaWVkRmlsdGVycztcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIGFic3RyYWN0Q3J1ZFNlcnZpY2U6IEdJUElBYnN0cmFjdENydWRTZXJ2aWNlPFRFbnRpdHksIFRGaWx0ZXI+LFxuICAgICAgICBwcm90ZWN0ZWQgYmFzZVNlcnZpY2U6IEdJUElCYXNlU2VydmljZSxcbiAgICAgICAgcHJvdGVjdGVkIGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICApIHtcbiAgICAgICAgc3VwZXIoYmFzZVNlcnZpY2UsIGFjdGl2YXRlZFJvdXRlKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgICAgICBpZiAoT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Jhc2VQZXJtaXNzaW9uTGlzdCBpcyByZXF1aXJlZCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fb25Jbml0RmlsdGVyKCk7XG4gICAgICAgIHRoaXMuY29sdW1ucyA9IHRoaXMuY3JlYXRlVGFibGVDb2x1bW5zKCk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICBzdXBlci5uZ0FmdGVyVmlld0luaXQoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgbmV3RmlsdGVyKCk6IFRGaWx0ZXI7XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgY3JlYXRlVGFibGVDb2x1bW5zKCk6IFRhYmxlQ29sdW1uRFRPW107XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2V0QXBwbGllZEZpbHRlcnMoKTogdm9pZDtcblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBjbGVhckFwcGxpZWRGaWx0ZXJzKCk6IHZvaWQ7XG5cbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVtb3ZlQXBwbGllZEZpbHRlcnMoZmlsdGVyOiB7IGNoaXA6IEdJUElBcHBsaWVkRmlsdGVyPGFueT47IGluZGV4OiBudW1iZXI7IH0pOiB2b2lkO1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk6IHZvaWQ7XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgaGFuZGxlRmlsdGVyU2Vzc2lvblN0b3JhZ2UoKTogdm9pZDtcblxuICAgIHByb3RlY3RlZCBuZXdQYWdlKCk6IEdJUElQYWdlTW9kZWw8VEVudGl0eT4ge1xuICAgICAgICByZXR1cm4gbmV3IEdJUElQYWdlTW9kZWw8VEVudGl0eT4oKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY3JlYXRlVGFibGVTb3J0cygpOiBHSVBJU29ydE1vZGVsW10ge1xuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHByZURlbGV0ZShpZD86IEdJUElVdWlkKTogdm9pZCB7IH1cblxuICAgIHByb3RlY3RlZCBleGlzdEluQXBwbGllZEZpbHRlcnM8VCA9IGFueT4oa2V5OiBUKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAhQXJyYXlVdGlsLmlzRW1wdHkodGhpcy5hcHBsaWVkRmlsdGVycykgJiZcbiAgICAgICAgICAgICh0aGlzLmFwcGxpZWRGaWx0ZXJzLmZpbmRJbmRleChlID0+IGUua2V5ID09PSBrZXkpID49IDApXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBJbnRlcm5hbCAqL1xuICAgIHByb3RlY3RlZCBfb25Jbml0RmlsdGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnBhZ2UgPSB0aGlzLm5ld1BhZ2UoKTtcbiAgICAgICAgdGhpcy5maWx0ZXIgPSB0aGlzLm5ld0ZpbHRlcigpO1xuXG4gICAgICAgIGlmICghT2JqZWN0VXRpbC5pc051bGwodGhpcy5maWx0ZXIpKSB7XG4gICAgICAgICAgICB0aGlzLnNldEFwcGxpZWRGaWx0ZXJzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBmaWx0ZXJTZXNzaW9uU3RvcmFnZSA9IHRoaXMuYmFzZVNlcnZpY2Uuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLmdldCgnZmlsdGVyJyk7XG4gICAgICAgIGlmICghT2JqZWN0VXRpbC5pc051bGwoZmlsdGVyU2Vzc2lvblN0b3JhZ2UpKSB7XG4gICAgICAgICAgICB0aGlzLmhhbmRsZUZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZmluZEFsbChwYWdlRXZlbnQ/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG5cbiAgICAgICAgICAgIHRoaXMucGFnZSA9IHRoaXMubmV3UGFnZSgpO1xuICAgICAgICAgICAgaWYgKE9iamVjdFV0aWwuaXNOdWxsKHRoaXMuZmlsdGVyKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyID0gdGhpcy5uZXdGaWx0ZXIoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gaWYgKE9iamVjdFV0aWwuaXNOdWxsKHBhZ2VFdmVudCkgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMudGFibGVQYWdlRXZlbnREVE8pKSB7XG4gICAgICAgICAgICAvLyAgICAgcGFnZUV2ZW50ID0gdGhpcy50YWJsZVBhZ2VFdmVudERUTztcbiAgICAgICAgICAgIC8vIH1cblxuICAgICAgICAgICAgaWYgKHBhZ2VFdmVudCkge1xuICAgICAgICAgICAgICAgIHRoaXMudGFibGVQYWdlRXZlbnREVE8gPSBwYWdlRXZlbnQ7XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXIucGFnZU51bWJlciA9IHBhZ2VFdmVudC5wYWdlSW5kZXg7XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXIucGFnZVNpemUgPSBwYWdlRXZlbnQucGFnZVNpemU7XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXIub2Zmc2V0ID0gcGFnZUV2ZW50LnBhZ2VJbmRleCAqIHBhZ2VFdmVudC5wYWdlU2l6ZTtcblxuICAgICAgICAgICAgICAgIGlmIChwYWdlRXZlbnQuc29ydCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbHRlci5zb3J0cyA9IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ldyBHSVBJU29ydE1vZGVsKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2VFdmVudC5zb3J0LmFjdGl2ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdHJpbmdVdGlsLmlzRW1wdHkocGFnZUV2ZW50LnNvcnQuZGlyZWN0aW9uKSA/ICdERVNDJyA6IHBhZ2VFdmVudC5zb3J0LmRpcmVjdGlvbi50b1VwcGVyQ2FzZSgpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlci5wYWdlTnVtYmVyID0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlci5vZmZzZXQgPSAwO1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyLnBhZ2VTaXplID0gMTA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuYWJzdHJhY3RDcnVkU2VydmljZS5maW5kQWxsPFRGaWx0ZXIsIFRFbnRpdHk+KHRoaXMuZmlsdGVyKS50b1Byb21pc2UoKS50aGVuKHBhZ2UgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucGFnZSA9IHBhZ2U7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRBcHBsaWVkRmlsdGVycygpO1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgbmV3UmVnaXN0ZXIocGVybWlzc2lvbj86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZiAoU3RyaW5nVXRpbC5pc0VtcHR5KHBlcm1pc3Npb24pICYmIE9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZUJ5VXJsKHRoaXMuZ2V0UGF0aCgpLCBbdGhpcy5nZXRQYXRoKCksICduZXcnXSwgdHJ1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAoU3RyaW5nVXRpbC5pc0VtcHR5KHBlcm1pc3Npb24pICYmICFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdCkpIHtcbiAgICAgICAgICAgICAgICBwZXJtaXNzaW9uID0gdGhpcy5iYXNlUGVybWlzc2lvbkxpc3QuTUFLRTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5oYXNQZXJtaXNzaW9uKHBlcm1pc3Npb24pKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hZGRXYXJuaW5nTWVzc2FnZShJTkpFQ1RPUi5nZXQoQVBQX01FU1NBR0VTKS5OT1RfUEVSTUlTU0lPTik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRlQnlVcmwodGhpcy5nZXRQYXRoKCksIFt0aGlzLmdldFBhdGgoKSwgJ25ldyddLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBlZGl0UmVnaXN0ZXIoaWQ/OiBHSVBJVXVpZCwgcGVybWlzc2lvbj86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZCA9IHRoaXMuaGFuZGxlRW50aXR5SWQoaWQpO1xuICAgICAgICBpZiAoT2JqZWN0VXRpbC5pc051bGwoaWQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoU3RyaW5nVXRpbC5pc0VtcHR5KHBlcm1pc3Npb24pICYmIE9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZUJ5VXJsKHRoaXMuZ2V0UGF0aCgpLCBbdGhpcy5nZXRQYXRoKCksICdlZGl0J10sIHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgcGVybWlzc2lvbiA9IHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0LlVQREFURTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdGhpcy5oYXNQZXJtaXNzaW9uKHBlcm1pc3Npb24pKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5hZGRXYXJuaW5nTWVzc2FnZShJTkpFQ1RPUi5nZXQoQVBQX01FU1NBR0VTKS5OT1RfUEVSTUlTU0lPTik7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLnNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRlQnlVcmwodGhpcy5nZXRQYXRoKCksIFt0aGlzLmdldFBhdGgoKSwgJ2VkaXQnLCBpZF0sIHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGRlbGV0ZVJlZ2lzdGVyKGlkPzogR0lQSVV1aWQsIHBlcm1pc3Npb24/OiBzdHJpbmcsIGZldGNoQWdhaW46IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZCA9IHRoaXMuaGFuZGxlRW50aXR5SWQoaWQpO1xuICAgICAgICAgICAgaWYgKE9iamVjdFV0aWwuaXNOdWxsKGlkKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiBPYmplY3RVdGlsLmlzTnVsbCh0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9kZWxldGVSZWdpc3RlcihpZCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uID0gdGhpcy5iYXNlUGVybWlzc2lvbkxpc3QuREVMRVRFO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZFdhcm5pbmdNZXNzYWdlKElOSkVDVE9SLmdldChBUFBfTUVTU0FHRVMpLk5PVF9QRVJNSVNTSU9OKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuX2RlbGV0ZVJlZ2lzdGVyKGlkLCBmZXRjaEFnYWluKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0xpc3RpbmcoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBASW50ZXJuYWwgKi9cbiAgICBwcml2YXRlIF9kZWxldGVSZWdpc3RlcihpZDogR0lQSVV1aWQsIGZldGNoQWdhaW46IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmJhc2VTZXJ2aWNlLmNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICdDb25maXJtYcOnw6NvJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBJTkpFQ1RPUi5nZXQoQVBQX01FU1NBR0VTKS5ERUxFVEVfQ09ORklSTUFUSU9OLFxuICAgICAgICAgICAgICAgIGFjY2VwdDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5uZXdQYWdlKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJlRGVsZXRlKGlkKTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFic3RyYWN0Q3J1ZFNlcnZpY2UuZGVsZXRlPFRFbnRpdHk+KGlkKS50b1Byb21pc2UoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmZXRjaEFnYWluKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maW5kQWxsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkU3VjY2Vzc01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuU1VDQ0VTUyk7XG4gICAgICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGVBbGxSZWdpc3RlcihpZExpc3Q/OiBHSVBJVXVpZFtdLCBwZXJtaXNzaW9uPzogc3RyaW5nLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaWRMaXN0ID0gdGhpcy5oYW5kbGVFbnRpdHlJZExpc3QoaWRMaXN0KTtcbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChpZExpc3QpIHx8IEFycmF5VXRpbC5pc0VtcHR5KGlkTGlzdCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZGVsZXRlQWxsUmVnaXN0ZXIoaWRMaXN0LCBmZXRjaEFnYWluKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb24gPSB0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdC5ERUxFVEU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5oYXNQZXJtaXNzaW9uKHBlcm1pc3Npb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkV2FybmluZ01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuTk9UX1BFUk1JU1NJT04pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5fZGVsZXRlQWxsUmVnaXN0ZXIoaWRMaXN0LCBmZXRjaEFnYWluKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0xpc3RpbmcoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBASW50ZXJuYWwgKi9cbiAgICBwcml2YXRlIF9kZWxldGVBbGxSZWdpc3RlcihpZExpc3Q6IEdJUElVdWlkW10sIGZldGNoQWdhaW46IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmJhc2VTZXJ2aWNlLmNvbmZpcm1hdGlvblNlcnZpY2UuY29uZmlybSh7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICdDb25maXJtYcOnw6NvJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBJTkpFQ1RPUi5nZXQoQVBQX01FU1NBR0VTKS5ERUxFVEVfQ09ORklSTUFUSU9OLFxuICAgICAgICAgICAgICAgIGFjY2VwdDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5uZXdQYWdlKCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucHJlRGVsZXRlKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hYnN0cmFjdENydWRTZXJ2aWNlLmRlbGV0ZUFsbChpZExpc3QpLnRvUHJvbWlzZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZldGNoQWdhaW4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbmRBbGwoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRTdWNjZXNzTWVzc2FnZShJTkpFQ1RPUi5nZXQoQVBQX01FU1NBR0VTKS5TVUNDRVNTKTtcbiAgICAgICAgICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHZpZXdSZWdpc3RlcihpZD86IEdJUElVdWlkLCBwZXJtaXNzaW9uPzogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlkID0gdGhpcy5oYW5kbGVFbnRpdHlJZChpZCk7XG4gICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChpZCkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICB0aGlzLnNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRlQnlVcmwodGhpcy5nZXRQYXRoKCksIFt0aGlzLmdldFBhdGgoKSwgJ3ZpZXcnLCBpZF0sIHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgcGVybWlzc2lvbiA9IHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0LlJFQUQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkV2FybmluZ01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuTk9UX1BFUk1JU1NJT04pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZUJ5VXJsKHRoaXMuZ2V0UGF0aCgpLCBbdGhpcy5nZXRQYXRoKCksICd2aWV3JywgaWRdLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBlZGl0T3JWaWV3UmVnaXN0ZXIoaWQ6IEdJUElVdWlkLCBwZXJtaXNzaW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgdGhpcy5lZGl0UmVnaXN0ZXIoaWQsIHBlcm1pc3Npb24pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy52aWV3UmVnaXN0ZXIoaWQsIHBlcm1pc3Npb24pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGVuYWJsZU9yRGlzYWJsZVJlZ2lzdGVyKGFjdGlvbjogJ0RJU0FCTEUnIHwgJ0VOQUJMRScsIGlkPzogR0lQSVV1aWQsIHBlcm1pc3Npb24/OiBzdHJpbmcsIGZldGNoQWdhaW46IGJvb2xlYW4gPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZCA9IHRoaXMuaGFuZGxlRW50aXR5SWQoaWQpO1xuICAgICAgICAgICAgaWYgKE9iamVjdFV0aWwuaXNOdWxsKGlkKSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiBPYmplY3RVdGlsLmlzTnVsbCh0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9lbmFibGVPckRpc2FibGVSZWdpc3RlcihhY3Rpb24sIGlkLCBmZXRjaEFnYWluKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb24gPSB0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdC5VUERBVEU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5oYXNQZXJtaXNzaW9uKHBlcm1pc3Npb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkV2FybmluZ01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuTk9UX1BFUk1JU1NJT04pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5fZW5hYmxlT3JEaXNhYmxlUmVnaXN0ZXIoYWN0aW9uLCBpZCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNMaXN0aW5nKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQEludGVybmFsICovXG4gICAgcHJpdmF0ZSBfZW5hYmxlT3JEaXNhYmxlUmVnaXN0ZXIoYWN0aW9uOiAnRElTQUJMRScgfCAnRU5BQkxFJywgaWQ6IEdJUElVdWlkLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5iYXNlU2VydmljZS5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgICAgICAgICAgIHRpdGxlOiAnQ29uZmlybWHDp8OjbycsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogYERlc2VqYSByZWFsbWVudGUgJHsoYWN0aW9uID09PSAnRElTQUJMRScpID8gJ2luYXRpdmFyJyA6ICdhdGl2YXInfSBlc3RlIHJlZ2lzdHJvP2AsXG4gICAgICAgICAgICAgICAgYWNjZXB0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RmlsdGVyU2Vzc2lvblN0b3JhZ2UoKTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhZ2UgPSB0aGlzLm5ld1BhZ2UoKTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFic3RyYWN0Q3J1ZFNlcnZpY2UuZW5hYmxlT3JEaXNhYmxlKGlkLCBhY3Rpb24pLnRvUHJvbWlzZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZldGNoQWdhaW4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbmRBbGwoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRTdWNjZXNzTWVzc2FnZShJTkpFQ1RPUi5nZXQoQVBQX01FU1NBR0VTKS5TVUNDRVNTKTtcbiAgICAgICAgICAgICAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGVuYWJsZUFuZERpc2FibGVBbGxSZWdpc3RlcihhY3Rpb246ICdESVNBQkxFJyB8ICdFTkFCTEUnLCBpZExpc3Q/OiBHSVBJVXVpZFtdLCBwZXJtaXNzaW9uPzogc3RyaW5nLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaWRMaXN0ID0gdGhpcy5oYW5kbGVFbnRpdHlJZExpc3QoaWRMaXN0KTtcbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChpZExpc3QpIHx8IEFycmF5VXRpbC5pc0VtcHR5KGlkTGlzdCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZW5hYmxlQW5kRGlzYWJsZUFsbFJlZ2lzdGVyKGFjdGlvbiwgaWRMaXN0LCBmZXRjaEFnYWluKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgICAgIHBlcm1pc3Npb24gPSB0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdC5VUERBVEU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5oYXNQZXJtaXNzaW9uKHBlcm1pc3Npb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkV2FybmluZ01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuTk9UX1BFUk1JU1NJT04pO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5fZW5hYmxlQW5kRGlzYWJsZUFsbFJlZ2lzdGVyKGFjdGlvbiwgaWRMaXN0LCBmZXRjaEFnYWluKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAodGhpcy5pc0xpc3RpbmcoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xlYXIoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBASW50ZXJuYWwgKi9cbiAgICBwcml2YXRlIF9lbmFibGVBbmREaXNhYmxlQWxsUmVnaXN0ZXIoYWN0aW9uOiAnRElTQUJMRScgfCAnRU5BQkxFJywgaWRMaXN0OiBHSVBJVXVpZFtdLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5iYXNlU2VydmljZS5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgICAgICAgICAgIHRpdGxlOiAnQ29uZmlybWHDp8OjbycsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogYERlc2VqYSByZWFsbWVudGUgJHsoYWN0aW9uID09PSAnRElTQUJMRScpID8gJ2luYXRpdmFyJyA6ICdhdGl2YXInfSBvcyByZWdpc3Ryb3Mgc2VsZWNpb25hZG9zP2AsXG4gICAgICAgICAgICAgICAgYWNjZXB0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0RmlsdGVyU2Vzc2lvblN0b3JhZ2UoKTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnBhZ2UgPSB0aGlzLm5ld1BhZ2UoKTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFic3RyYWN0Q3J1ZFNlcnZpY2UuZW5hYmxlT3JEaXNhYmxlQWxsKGlkTGlzdCwgYWN0aW9uKS50b1Byb21pc2UoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmZXRjaEFnYWluKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maW5kQWxsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkU3VjY2Vzc01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuU1VDQ0VTUyk7XG4gICAgICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBjbGVhcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5iYXNlU2VydmljZS5zZXNzaW9uU3RvcmFnZVNlcnZpY2UucmVtb3ZlKCdmaWx0ZXInKTtcbiAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5uZXdQYWdlKCk7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gdGhpcy5uZXdGaWx0ZXIoKTtcbiAgICAgICAgdGhpcy5jbGVhckFwcGxpZWRGaWx0ZXJzKCk7XG4gICAgICAgIHRoaXMuZmluZEFsbCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVFbnRpdHlJZChpZDogR0lQSVV1aWQpOiBHSVBJVXVpZCB7XG4gICAgICAgIGlmICghdGhpcy5VVUlESXNWYWxpZChpZCkpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTyBpZGVudGlmaWNhZG9yIGRvIHJlZ2lzdHJvIG7Do28gw6kgdsOhbGlkbycpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKE9iamVjdFV0aWwuaXNOdWxsKGlkKSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5wYWdlKSAmJiAhQXJyYXlVdGlsLmlzRW1wdHkodGhpcy5wYWdlLmNvbnRlbnQpKSB7XG4gICAgICAgICAgICBjb25zdCBmaXJzdFNlbGV0ZWN0ZWQgPSB0aGlzLnBhZ2UuY29udGVudC5maWx0ZXIoYyA9PiBjLnNlbGVjdGVkKVswXTtcbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChmaXJzdFNlbGV0ZWN0ZWQpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBmaXJzdFNlbGV0ZWN0ZWQuaWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaWQ7XG4gICAgfVxuXG4gICAgcHVibGljIGhhbmRsZUVudGl0eUlkTGlzdChpZExpc3Q6IEdJUElVdWlkW10pOiBHSVBJVXVpZFtdIHtcbiAgICAgICAgaWYgKCFBcnJheVV0aWwuaXNFbXB0eShpZExpc3QpKSB7XG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGlkTGlzdC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5VVUlESXNWYWxpZChpZExpc3RbaV0pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignTyBpZGVudGlmaWNhZG9yIGRvIHJlZ2lzdHJvIG7Do28gw6kgdsOhbGlkbycpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChBcnJheVV0aWwuaXNFbXB0eShpZExpc3QpICYmICFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnBhZ2UpICYmICFBcnJheVV0aWwuaXNFbXB0eSh0aGlzLnBhZ2UuY29udGVudCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGxpc3RTZWxlY3RlZCA9IHRoaXMucGFnZS5jb250ZW50LmZpbHRlcihwID0+IHAuc2VsZWN0ZWQpLm1hcChwID0+IHAuaWQpO1xuICAgICAgICAgICAgaWYgKEFycmF5VXRpbC5pc0VtcHR5KGxpc3RTZWxlY3RlZCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIGxpc3RTZWxlY3RlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpZExpc3Q7XG4gICAgfVxuXG59XG4iXX0=
|
507
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZmluZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AZ2lwaXNpc3RlbWFzL25nLWNvcmUvIiwic291cmNlcyI6WyJjb3JlL2dpcGktY29tcG9uZW50cy9jb21wb25lbnRzL2Fic3RyYWN0LWZpbmQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJckQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFM0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHN0Q7SUFBb0ksNkNBQXFCO0lBMENySixtQ0FDYyxtQkFBOEQsRUFDOUQsV0FBNEIsRUFDNUIsY0FBOEI7UUFINUMsWUFLSSxrQkFBTSxXQUFXLEVBQUUsY0FBYyxDQUFDLFNBQ3JDO1FBTGEseUJBQW1CLEdBQW5CLG1CQUFtQixDQUEyQztRQUM5RCxpQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFDNUIsb0JBQWMsR0FBZCxjQUFjLENBQWdC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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcblxuaW1wb3J0IHsgSU5KRUNUT1IgfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvc2hhcmVkLm1vZHVsZSc7XG5pbXBvcnQgeyBBUFBfTUVTU0FHRVMgfSBmcm9tICcuLi8uLi9hcHAubWVzc2FnZXMnO1xuaW1wb3J0IHsgVGFibGVDb2x1bW5EVE8gfSBmcm9tICcuLi8uLi9tb2RlbHMvZHRvL3RhYmxlLWNvbHVtbi5kdG8nO1xuaW1wb3J0IHsgVGFibGVQYWdlRXZlbnREVE8gfSBmcm9tICcuLi8uLi9tb2RlbHMvZHRvL3RhYmxlLXBhZ2UtZXZlbnQuZHRvJztcbmltcG9ydCB7IEFycmF5VXRpbCB9IGZyb20gJy4uLy4uL3V0aWxzL2FycmF5LnV0aWwnO1xuaW1wb3J0IHsgT2JqZWN0VXRpbCB9IGZyb20gJy4uLy4uL3V0aWxzL29iamVjdC51dGlsJztcbmltcG9ydCB7IFN0cmluZ1V0aWwgfSBmcm9tICcuLi8uLi91dGlscy9zdHJpbmcudXRpbCc7XG5pbXBvcnQgeyBHSVBJQWJzdHJhY3RGaWx0ZXJNb2RlbCB9IGZyb20gJy4uL21vZGVscy9hYnN0cmFjdC1maWx0ZXIubW9kZWwnO1xuaW1wb3J0IHsgR0lQSUFic3RyYWN0TW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvYWJzdHJhY3QubW9kZWwnO1xuaW1wb3J0IHsgR0lQSUFwcGxpZWRGaWx0ZXIgfSBmcm9tICcuLi9tb2RlbHMvYXBwbGllZC1maWx0ZXIubW9kZWwnO1xuaW1wb3J0IHsgR0lQSVBhZ2VNb2RlbCB9IGZyb20gJy4uL21vZGVscy9wYWdlLm1vZGVsJztcbmltcG9ydCB7IEdJUElTb3J0TW9kZWwgfSBmcm9tICcuLi9tb2RlbHMvc29ydC5tb2RlbCc7XG5pbXBvcnQgeyBHSVBJQWJzdHJhY3RDcnVkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2Fic3RyYWN0LWNydWQuc2VydmljZSc7XG5pbXBvcnQgeyBHSVBJQmFzZVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9iYXNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgR0lQSVV1aWQgfSBmcm9tICcuLi90eXBlcy91dWlkLnR5cGUnO1xuaW1wb3J0IHsgR0lQSUFic3RyYWN0Q29tcG9uZW50IH0gZnJvbSAnLi9hYnN0cmFjdC5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHsgdGVtcGxhdGU6ICcnIH0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR0lQSUFic3RyYWN0RmluZENvbXBvbmVudDxURW50aXR5IGV4dGVuZHMgR0lQSUFic3RyYWN0TW9kZWwsIFRGaWx0ZXIgZXh0ZW5kcyBHSVBJQWJzdHJhY3RGaWx0ZXJNb2RlbD4gZXh0ZW5kcyBHSVBJQWJzdHJhY3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgICBwcml2YXRlIF9maWx0ZXI6IFRGaWx0ZXIgPSBudWxsO1xuICAgIHB1YmxpYyBzZXQgZmlsdGVyKHZhbHVlOiBURmlsdGVyKSB7XG4gICAgICAgIHRoaXMuX2ZpbHRlciA9IHZhbHVlO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IGZpbHRlcigpOiBURmlsdGVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlcjtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9wYWdlOiBHSVBJUGFnZU1vZGVsPFRFbnRpdHk+ID0gbnVsbDtcbiAgICBwdWJsaWMgc2V0IHBhZ2UodmFsdWU6IEdJUElQYWdlTW9kZWw8VEVudGl0eT4pIHtcbiAgICAgICAgdGhpcy5fcGFnZSA9IHZhbHVlO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHBhZ2UoKTogR0lQSVBhZ2VNb2RlbDxURW50aXR5PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wYWdlO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3RhYmxlUGFnZUV2ZW50RFRPOiBUYWJsZVBhZ2VFdmVudERUTztcbiAgICBwdWJsaWMgc2V0IHRhYmxlUGFnZUV2ZW50RFRPKHZhbHVlOiBUYWJsZVBhZ2VFdmVudERUTykge1xuICAgICAgICB0aGlzLl90YWJsZVBhZ2VFdmVudERUTyA9IHZhbHVlO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IHRhYmxlUGFnZUV2ZW50RFRPKCk6IFRhYmxlUGFnZUV2ZW50RFRPIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RhYmxlUGFnZUV2ZW50RFRPO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2NvbHVtbnM6IFRhYmxlQ29sdW1uRFRPW10gPSBbXTtcbiAgICBwdWJsaWMgc2V0IGNvbHVtbnModmFsdWU6IFRhYmxlQ29sdW1uRFRPW10pIHtcbiAgICAgICAgdGhpcy5fY29sdW1ucyA9IHZhbHVlO1xuICAgIH1cbiAgICBwdWJsaWMgZ2V0IGNvbHVtbnMoKTogVGFibGVDb2x1bW5EVE9bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2x1bW5zO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2FwcGxpZWRGaWx0ZXJzOiBHSVBJQXBwbGllZEZpbHRlcjxhbnk+W10gPSBbXTtcbiAgICBwdWJsaWMgc2V0IGFwcGxpZWRGaWx0ZXJzKHZhbHVlOiBHSVBJQXBwbGllZEZpbHRlcjxhbnk+W10pIHtcbiAgICAgICAgdGhpcy5fYXBwbGllZEZpbHRlcnMgPSB2YWx1ZTtcbiAgICB9XG4gICAgcHVibGljIGdldCBhcHBsaWVkRmlsdGVycygpOiBHSVBJQXBwbGllZEZpbHRlcjxhbnk+W10ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXBwbGllZEZpbHRlcnM7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByb3RlY3RlZCBhYnN0cmFjdENydWRTZXJ2aWNlOiBHSVBJQWJzdHJhY3RDcnVkU2VydmljZTxURW50aXR5LCBURmlsdGVyPixcbiAgICAgICAgcHJvdGVjdGVkIGJhc2VTZXJ2aWNlOiBHSVBJQmFzZVNlcnZpY2UsXG4gICAgICAgIHByb3RlY3RlZCBhY3RpdmF0ZWRSb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKGJhc2VTZXJ2aWNlLCBhY3RpdmF0ZWRSb3V0ZSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XG5cbiAgICAgICAgaWYgKE9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdiYXNlUGVybWlzc2lvbkxpc3QgaXMgcmVxdWlyZWQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX29uSW5pdEZpbHRlcigpO1xuICAgICAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLmNyZWF0ZVRhYmxlQ29sdW1ucygpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IG5ld0ZpbHRlcigpOiBURmlsdGVyO1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGNyZWF0ZVRhYmxlQ29sdW1ucygpOiBUYWJsZUNvbHVtbkRUT1tdO1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHNldEFwcGxpZWRGaWx0ZXJzKCk6IHZvaWQ7XG5cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgY2xlYXJBcHBsaWVkRmlsdGVycygpOiB2b2lkO1xuXG4gICAgcHVibGljIGFic3RyYWN0IHJlbW92ZUFwcGxpZWRGaWx0ZXJzKGZpbHRlcjogeyBjaGlwOiBHSVBJQXBwbGllZEZpbHRlcjxhbnk+OyBpbmRleDogbnVtYmVyOyB9KTogdm9pZDtcblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBzZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpOiB2b2lkO1xuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGhhbmRsZUZpbHRlclNlc3Npb25TdG9yYWdlKCk6IHZvaWQ7XG5cbiAgICBwcm90ZWN0ZWQgbmV3UGFnZSgpOiBHSVBJUGFnZU1vZGVsPFRFbnRpdHk+IHtcbiAgICAgICAgcmV0dXJuIG5ldyBHSVBJUGFnZU1vZGVsPFRFbnRpdHk+KCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNyZWF0ZVRhYmxlU29ydHMoKTogR0lQSVNvcnRNb2RlbFtdIHtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBwcmVEZWxldGUoaWQ/OiBHSVBJVXVpZCk6IHZvaWQgeyB9XG5cbiAgICBwcm90ZWN0ZWQgZXhpc3RJbkFwcGxpZWRGaWx0ZXJzPFQgPSBhbnk+KGtleTogVCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgIUFycmF5VXRpbC5pc0VtcHR5KHRoaXMuYXBwbGllZEZpbHRlcnMpICYmXG4gICAgICAgICAgICAodGhpcy5hcHBsaWVkRmlsdGVycy5maW5kSW5kZXgoZSA9PiBlLmtleSA9PT0ga2V5KSA+PSAwKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBASW50ZXJuYWwgKi9cbiAgICBwcm90ZWN0ZWQgX29uSW5pdEZpbHRlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5uZXdQYWdlKCk7XG4gICAgICAgIHRoaXMuZmlsdGVyID0gdGhpcy5uZXdGaWx0ZXIoKTtcblxuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuZmlsdGVyKSkge1xuICAgICAgICAgICAgdGhpcy5zZXRBcHBsaWVkRmlsdGVycygpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZmlsdGVyU2Vzc2lvblN0b3JhZ2UgPSB0aGlzLmJhc2VTZXJ2aWNlLnNlc3Npb25TdG9yYWdlU2VydmljZS5nZXQoJ2ZpbHRlcicpO1xuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKGZpbHRlclNlc3Npb25TdG9yYWdlKSkge1xuICAgICAgICAgICAgdGhpcy5oYW5kbGVGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGZpbmRBbGwocGFnZUV2ZW50PzogYW55KTogdm9pZCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xuXG4gICAgICAgICAgICB0aGlzLnBhZ2UgPSB0aGlzLm5ld1BhZ2UoKTtcbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbCh0aGlzLmZpbHRlcikpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlciA9IHRoaXMubmV3RmlsdGVyKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChwYWdlRXZlbnQpICYmICFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLnRhYmxlUGFnZUV2ZW50RFRPKSkge1xuICAgICAgICAgICAgICAgIHBhZ2VFdmVudCA9IHRoaXMudGFibGVQYWdlRXZlbnREVE87XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChwYWdlRXZlbnQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlUGFnZUV2ZW50RFRPID0gcGFnZUV2ZW50O1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyLnBhZ2VOdW1iZXIgPSBwYWdlRXZlbnQucGFnZUluZGV4O1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyLnBhZ2VTaXplID0gcGFnZUV2ZW50LnBhZ2VTaXplO1xuICAgICAgICAgICAgICAgIHRoaXMuZmlsdGVyLm9mZnNldCA9IHBhZ2VFdmVudC5wYWdlSW5kZXggKiBwYWdlRXZlbnQucGFnZVNpemU7XG5cbiAgICAgICAgICAgICAgICBpZiAocGFnZUV2ZW50LnNvcnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWx0ZXIuc29ydHMgPSBbXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgR0lQSVNvcnRNb2RlbChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlRXZlbnQuc29ydC5hY3RpdmUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RyaW5nVXRpbC5pc0VtcHR5KHBhZ2VFdmVudC5zb3J0LmRpcmVjdGlvbikgPyAnREVTQycgOiBwYWdlRXZlbnQuc29ydC5kaXJlY3Rpb24udG9VcHBlckNhc2UoKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXIucGFnZU51bWJlciA9IDA7XG4gICAgICAgICAgICAgICAgdGhpcy5maWx0ZXIub2Zmc2V0ID0gMDtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlci5wYWdlU2l6ZSA9IDEwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmFic3RyYWN0Q3J1ZFNlcnZpY2UuZmluZEFsbDxURmlsdGVyLCBURW50aXR5Pih0aGlzLmZpbHRlcikudG9Qcm9taXNlKCkudGhlbihwYWdlID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnBhZ2UgPSBwYWdlO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0QXBwbGllZEZpbHRlcnMoKTtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG5ld1JlZ2lzdGVyKHBlcm1pc3Npb24/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiBPYmplY3RVdGlsLmlzTnVsbCh0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdCkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0RmlsdGVyU2Vzc2lvblN0b3JhZ2UoKTtcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGVCeVVybCh0aGlzLmdldFBhdGgoKSwgW3RoaXMuZ2V0UGF0aCgpLCAnbmV3J10sIHRydWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgcGVybWlzc2lvbiA9IHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0Lk1BS0U7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkV2FybmluZ01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuTk9UX1BFUk1JU1NJT04pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZUJ5VXJsKHRoaXMuZ2V0UGF0aCgpLCBbdGhpcy5nZXRQYXRoKCksICduZXcnXSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZWRpdFJlZ2lzdGVyKGlkPzogR0lQSVV1aWQsIHBlcm1pc3Npb24/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWQgPSB0aGlzLmhhbmRsZUVudGl0eUlkKGlkKTtcbiAgICAgICAgaWYgKE9iamVjdFV0aWwuaXNOdWxsKGlkKSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShwZXJtaXNzaW9uKSAmJiBPYmplY3RVdGlsLmlzTnVsbCh0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdCkpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0RmlsdGVyU2Vzc2lvblN0b3JhZ2UoKTtcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGVCeVVybCh0aGlzLmdldFBhdGgoKSwgW3RoaXMuZ2V0UGF0aCgpLCAnZWRpdCddLCB0cnVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgIHBlcm1pc3Npb24gPSB0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdC5VUERBVEU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAoIXRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkV2FybmluZ01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuTk9UX1BFUk1JU1NJT04pO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZUJ5VXJsKHRoaXMuZ2V0UGF0aCgpLCBbdGhpcy5nZXRQYXRoKCksICdlZGl0JywgaWRdLCB0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGVSZWdpc3RlcihpZD86IEdJUElVdWlkLCBwZXJtaXNzaW9uPzogc3RyaW5nLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaWQgPSB0aGlzLmhhbmRsZUVudGl0eUlkKGlkKTtcbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChpZCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZGVsZXRlUmVnaXN0ZXIoaWQsIGZldGNoQWdhaW4pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBpZiAoU3RyaW5nVXRpbC5pc0VtcHR5KHBlcm1pc3Npb24pICYmICFPYmplY3RVdGlsLmlzTnVsbCh0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcGVybWlzc2lvbiA9IHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0LkRFTEVURTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLmhhc1Blcm1pc3Npb24ocGVybWlzc2lvbikpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hZGRXYXJuaW5nTWVzc2FnZShJTkpFQ1RPUi5nZXQoQVBQX01FU1NBR0VTKS5OT1RfUEVSTUlTU0lPTik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICB0aGlzLl9kZWxldGVSZWdpc3RlcihpZCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNMaXN0aW5nKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQEludGVybmFsICovXG4gICAgcHJpdmF0ZSBfZGVsZXRlUmVnaXN0ZXIoaWQ6IEdJUElVdWlkLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5iYXNlU2VydmljZS5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgICAgICAgICAgIHRpdGxlOiAnQ29uZmlybWHDp8OjbycsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuREVMRVRFX0NPTkZJUk1BVElPTixcbiAgICAgICAgICAgICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFnZSA9IHRoaXMubmV3UGFnZSgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByZURlbGV0ZShpZCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hYnN0cmFjdENydWRTZXJ2aWNlLmRlbGV0ZTxURW50aXR5PihpZCkudG9Qcm9taXNlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmV0Y2hBZ2Fpbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmluZEFsbCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZFN1Y2Nlc3NNZXNzYWdlKElOSkVDVE9SLmdldChBUFBfTUVTU0FHRVMpLlNVQ0NFU1MpO1xuICAgICAgICAgICAgICAgICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZGVsZXRlQWxsUmVnaXN0ZXIoaWRMaXN0PzogR0lQSVV1aWRbXSwgcGVybWlzc2lvbj86IHN0cmluZywgZmV0Y2hBZ2FpbjogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlkTGlzdCA9IHRoaXMuaGFuZGxlRW50aXR5SWRMaXN0KGlkTGlzdCk7XG4gICAgICAgICAgICBpZiAoT2JqZWN0VXRpbC5pc051bGwoaWRMaXN0KSB8fCBBcnJheVV0aWwuaXNFbXB0eShpZExpc3QpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoU3RyaW5nVXRpbC5pc0VtcHR5KHBlcm1pc3Npb24pICYmIE9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUFsbFJlZ2lzdGVyKGlkTGlzdCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uID0gdGhpcy5iYXNlUGVybWlzc2lvbkxpc3QuREVMRVRFO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZFdhcm5pbmdNZXNzYWdlKElOSkVDVE9SLmdldChBUFBfTUVTU0FHRVMpLk5PVF9QRVJNSVNTSU9OKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuX2RlbGV0ZUFsbFJlZ2lzdGVyKGlkTGlzdCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNMaXN0aW5nKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQEludGVybmFsICovXG4gICAgcHJpdmF0ZSBfZGVsZXRlQWxsUmVnaXN0ZXIoaWRMaXN0OiBHSVBJVXVpZFtdLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgdGhpcy5iYXNlU2VydmljZS5jb25maXJtYXRpb25TZXJ2aWNlLmNvbmZpcm0oe1xuICAgICAgICAgICAgICAgIHRpdGxlOiAnQ29uZmlybWHDp8OjbycsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuREVMRVRFX0NPTkZJUk1BVElPTixcbiAgICAgICAgICAgICAgICBhY2NlcHQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMucGFnZSA9IHRoaXMubmV3UGFnZSgpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByZURlbGV0ZSgpO1xuXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuYWJzdHJhY3RDcnVkU2VydmljZS5kZWxldGVBbGwoaWRMaXN0KS50b1Byb21pc2UoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmZXRjaEFnYWluKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maW5kQWxsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkU3VjY2Vzc01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuU1VDQ0VTUyk7XG4gICAgICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyB2aWV3UmVnaXN0ZXIoaWQ/OiBHSVBJVXVpZCwgcGVybWlzc2lvbj86IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBpZCA9IHRoaXMuaGFuZGxlRW50aXR5SWQoaWQpO1xuICAgICAgICBpZiAoT2JqZWN0VXRpbC5pc051bGwoaWQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoU3RyaW5nVXRpbC5pc0VtcHR5KHBlcm1pc3Npb24pICYmIE9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgdGhpcy5zZXRGaWx0ZXJTZXNzaW9uU3RvcmFnZSgpO1xuICAgICAgICAgICAgdGhpcy5uYXZpZ2F0ZUJ5VXJsKHRoaXMuZ2V0UGF0aCgpLCBbdGhpcy5nZXRQYXRoKCksICd2aWV3JywgaWRdLCB0cnVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgIHBlcm1pc3Npb24gPSB0aGlzLmJhc2VQZXJtaXNzaW9uTGlzdC5SRUFEO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKCF0aGlzLmhhc1Blcm1pc3Npb24ocGVybWlzc2lvbikpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFkZFdhcm5pbmdNZXNzYWdlKElOSkVDVE9SLmdldChBUFBfTUVTU0FHRVMpLk5PVF9QRVJNSVNTSU9OKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuc2V0RmlsdGVyU2Vzc2lvblN0b3JhZ2UoKTtcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGVCeVVybCh0aGlzLmdldFBhdGgoKSwgW3RoaXMuZ2V0UGF0aCgpLCAndmlldycsIGlkXSwgdHJ1ZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgZWRpdE9yVmlld1JlZ2lzdGVyKGlkOiBHSVBJVXVpZCwgcGVybWlzc2lvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhhc1Blcm1pc3Npb24ocGVybWlzc2lvbikpIHtcbiAgICAgICAgICAgIHRoaXMuZWRpdFJlZ2lzdGVyKGlkLCBwZXJtaXNzaW9uKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudmlld1JlZ2lzdGVyKGlkLCBwZXJtaXNzaW9uKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBlbmFibGVPckRpc2FibGVSZWdpc3RlcihhY3Rpb246ICdESVNBQkxFJyB8ICdFTkFCTEUnLCBpZD86IEdJUElVdWlkLCBwZXJtaXNzaW9uPzogc3RyaW5nLCBmZXRjaEFnYWluOiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgaWQgPSB0aGlzLmhhbmRsZUVudGl0eUlkKGlkKTtcbiAgICAgICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChpZCkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgT2JqZWN0VXRpbC5pc051bGwodGhpcy5iYXNlUGVybWlzc2lvbkxpc3QpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZW5hYmxlT3JEaXNhYmxlUmVnaXN0ZXIoYWN0aW9uLCBpZCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uID0gdGhpcy5iYXNlUGVybWlzc2lvbkxpc3QuVVBEQVRFO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZFdhcm5pbmdNZXNzYWdlKElOSkVDVE9SLmdldChBUFBfTUVTU0FHRVMpLk5PVF9QRVJNSVNTSU9OKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuX2VuYWJsZU9yRGlzYWJsZVJlZ2lzdGVyKGFjdGlvbiwgaWQsIGZldGNoQWdhaW4pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzTGlzdGluZygpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbGVhcigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBJbnRlcm5hbCAqL1xuICAgIHByaXZhdGUgX2VuYWJsZU9yRGlzYWJsZVJlZ2lzdGVyKGFjdGlvbjogJ0RJU0FCTEUnIHwgJ0VOQUJMRScsIGlkOiBHSVBJVXVpZCwgZmV0Y2hBZ2FpbjogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuYmFzZVNlcnZpY2UuY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0NvbmZpcm1hw6fDo28nLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGBEZXNlamEgcmVhbG1lbnRlICR7KGFjdGlvbiA9PT0gJ0RJU0FCTEUnKSA/ICdpbmF0aXZhcicgOiAnYXRpdmFyJ30gZXN0ZSByZWdpc3Rybz9gLFxuICAgICAgICAgICAgICAgIGFjY2VwdDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5uZXdQYWdlKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hYnN0cmFjdENydWRTZXJ2aWNlLmVuYWJsZU9yRGlzYWJsZShpZCwgYWN0aW9uKS50b1Byb21pc2UoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmZXRjaEFnYWluKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5maW5kQWxsKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuYWRkU3VjY2Vzc01lc3NhZ2UoSU5KRUNUT1IuZ2V0KEFQUF9NRVNTQUdFUykuU1VDQ0VTUyk7XG4gICAgICAgICAgICAgICAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBlbmFibGVBbmREaXNhYmxlQWxsUmVnaXN0ZXIoYWN0aW9uOiAnRElTQUJMRScgfCAnRU5BQkxFJywgaWRMaXN0PzogR0lQSVV1aWRbXSwgcGVybWlzc2lvbj86IHN0cmluZywgZmV0Y2hBZ2FpbjogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGlkTGlzdCA9IHRoaXMuaGFuZGxlRW50aXR5SWRMaXN0KGlkTGlzdCk7XG4gICAgICAgICAgICBpZiAoT2JqZWN0VXRpbC5pc051bGwoaWRMaXN0KSB8fCBBcnJheVV0aWwuaXNFbXB0eShpZExpc3QpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoU3RyaW5nVXRpbC5pc0VtcHR5KHBlcm1pc3Npb24pICYmIE9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2VuYWJsZUFuZERpc2FibGVBbGxSZWdpc3RlcihhY3Rpb24sIGlkTGlzdCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkocGVybWlzc2lvbikgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMuYmFzZVBlcm1pc3Npb25MaXN0KSkge1xuICAgICAgICAgICAgICAgICAgICBwZXJtaXNzaW9uID0gdGhpcy5iYXNlUGVybWlzc2lvbkxpc3QuVVBEQVRFO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuaGFzUGVybWlzc2lvbihwZXJtaXNzaW9uKSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZFdhcm5pbmdNZXNzYWdlKElOSkVDVE9SLmdldChBUFBfTUVTU0FHRVMpLk5PVF9QRVJNSVNTSU9OKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMuX2VuYWJsZUFuZERpc2FibGVBbGxSZWdpc3RlcihhY3Rpb24sIGlkTGlzdCwgZmV0Y2hBZ2Fpbik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHRoaXMuaXNMaXN0aW5nKCkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsZWFyKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQEludGVybmFsICovXG4gICAgcHJpdmF0ZSBfZW5hYmxlQW5kRGlzYWJsZUFsbFJlZ2lzdGVyKGFjdGlvbjogJ0RJU0FCTEUnIHwgJ0VOQUJMRScsIGlkTGlzdDogR0lQSVV1aWRbXSwgZmV0Y2hBZ2FpbjogYm9vbGVhbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuYmFzZVNlcnZpY2UuY29uZmlybWF0aW9uU2VydmljZS5jb25maXJtKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ0NvbmZpcm1hw6fDo28nLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGBEZXNlamEgcmVhbG1lbnRlICR7KGFjdGlvbiA9PT0gJ0RJU0FCTEUnKSA/ICdpbmF0aXZhcicgOiAnYXRpdmFyJ30gb3MgcmVnaXN0cm9zIHNlbGVjaW9uYWRvcz9gLFxuICAgICAgICAgICAgICAgIGFjY2VwdDogKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnNldEZpbHRlclNlc3Npb25TdG9yYWdlKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wYWdlID0gdGhpcy5uZXdQYWdlKCk7XG5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hYnN0cmFjdENydWRTZXJ2aWNlLmVuYWJsZU9yRGlzYWJsZUFsbChpZExpc3QsIGFjdGlvbikudG9Qcm9taXNlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoZmV0Y2hBZ2Fpbikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZmluZEFsbCgpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmFkZFN1Y2Nlc3NNZXNzYWdlKElOSkVDVE9SLmdldChBUFBfTUVTU0FHRVMpLlNVQ0NFU1MpO1xuICAgICAgICAgICAgICAgICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuYmFzZVNlcnZpY2Uuc2Vzc2lvblN0b3JhZ2VTZXJ2aWNlLnJlbW92ZSgnZmlsdGVyJyk7XG4gICAgICAgIHRoaXMucGFnZSA9IHRoaXMubmV3UGFnZSgpO1xuICAgICAgICB0aGlzLmZpbHRlciA9IHRoaXMubmV3RmlsdGVyKCk7XG4gICAgICAgIHRoaXMuY2xlYXJBcHBsaWVkRmlsdGVycygpO1xuICAgICAgICB0aGlzLmZpbmRBbGwoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaGFuZGxlRW50aXR5SWQoaWQ6IEdJUElVdWlkKTogR0lQSVV1aWQge1xuICAgICAgICBpZiAoIXRoaXMuVVVJRElzVmFsaWQoaWQpKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ08gaWRlbnRpZmljYWRvciBkbyByZWdpc3RybyBuw6NvIMOpIHbDoWxpZG8nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChPYmplY3RVdGlsLmlzTnVsbChpZCkgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRoaXMucGFnZSkgJiYgIUFycmF5VXRpbC5pc0VtcHR5KHRoaXMucGFnZS5jb250ZW50KSkge1xuICAgICAgICAgICAgY29uc3QgZmlyc3RTZWxldGVjdGVkID0gdGhpcy5wYWdlLmNvbnRlbnQuZmlsdGVyKGMgPT4gYy5zZWxlY3RlZClbMF07XG4gICAgICAgICAgICBpZiAoT2JqZWN0VXRpbC5pc051bGwoZmlyc3RTZWxldGVjdGVkKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gZmlyc3RTZWxldGVjdGVkLmlkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGlkO1xuICAgIH1cblxuICAgIHB1YmxpYyBoYW5kbGVFbnRpdHlJZExpc3QoaWRMaXN0OiBHSVBJVXVpZFtdKTogR0lQSVV1aWRbXSB7XG4gICAgICAgIGlmICghQXJyYXlVdGlsLmlzRW1wdHkoaWRMaXN0KSkge1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpZExpc3QubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuVVVJRElzVmFsaWQoaWRMaXN0W2ldKSkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ08gaWRlbnRpZmljYWRvciBkbyByZWdpc3RybyBuw6NvIMOpIHbDoWxpZG8nKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoQXJyYXlVdGlsLmlzRW1wdHkoaWRMaXN0KSAmJiAhT2JqZWN0VXRpbC5pc051bGwodGhpcy5wYWdlKSAmJiAhQXJyYXlVdGlsLmlzRW1wdHkodGhpcy5wYWdlLmNvbnRlbnQpKSB7XG4gICAgICAgICAgICBjb25zdCBsaXN0U2VsZWN0ZWQgPSB0aGlzLnBhZ2UuY29udGVudC5maWx0ZXIocCA9PiBwLnNlbGVjdGVkKS5tYXAocCA9PiBwLmlkKTtcbiAgICAgICAgICAgIGlmIChBcnJheVV0aWwuaXNFbXB0eShsaXN0U2VsZWN0ZWQpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBsaXN0U2VsZWN0ZWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaWRMaXN0O1xuICAgIH1cblxufVxuIl19
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { __decorate, __extends, __metadata } from "tslib";
|
2
2
|
import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
|
3
3
|
import { Injectable } from '@angular/core';
|
4
|
+
import { MatDialog } from '@angular/material';
|
4
5
|
import { Router } from '@angular/router';
|
5
6
|
import { BehaviorSubject } from 'rxjs';
|
6
7
|
import { catchError, map, takeUntil } from 'rxjs/operators';
|
@@ -8,16 +9,18 @@ import * as moment_ from 'moment';
|
|
8
9
|
import * as i0 from "@angular/core";
|
9
10
|
import * as i1 from "@angular/router";
|
10
11
|
import * as i2 from "@angular/common/http";
|
12
|
+
import * as i3 from "@angular/material/dialog";
|
11
13
|
var moment = moment_;
|
12
14
|
import { ObjectUtil } from '../utils/object.util';
|
13
15
|
import { StringUtil } from '../utils/string.util';
|
14
16
|
import { AbstractService } from './abstract.service';
|
15
17
|
var AuthenticationService = /** @class */ (function (_super) {
|
16
18
|
__extends(AuthenticationService, _super);
|
17
|
-
function AuthenticationService(router, http) {
|
19
|
+
function AuthenticationService(router, http, _matDialog) {
|
18
20
|
var _this = _super.call(this) || this;
|
19
21
|
_this.router = router;
|
20
22
|
_this.http = http;
|
23
|
+
_this._matDialog = _matDialog;
|
21
24
|
_this._tokenSubject$ = new BehaviorSubject(JSON.parse(localStorage.getItem('token')));
|
22
25
|
_this.token$ = _this._tokenSubject$.asObservable();
|
23
26
|
return _this;
|
@@ -39,6 +42,7 @@ var AuthenticationService = /** @class */ (function (_super) {
|
|
39
42
|
var _this = this;
|
40
43
|
this.revokeToken().subscribe(function (_) {
|
41
44
|
_this.removeSession();
|
45
|
+
_this._matDialog.closeAll();
|
42
46
|
_this.router.navigate(['/oauth/login'], { queryParams: { returnUrl: _this.router.routerState.snapshot.url } });
|
43
47
|
}, function (error) {
|
44
48
|
throw new Error(error);
|
@@ -101,15 +105,17 @@ var AuthenticationService = /** @class */ (function (_super) {
|
|
101
105
|
};
|
102
106
|
AuthenticationService.ctorParameters = function () { return [
|
103
107
|
{ type: Router },
|
104
|
-
{ type: HttpClient }
|
108
|
+
{ type: HttpClient },
|
109
|
+
{ type: MatDialog }
|
105
110
|
]; };
|
106
|
-
AuthenticationService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function AuthenticationService_Factory() { return new AuthenticationService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.HttpClient)); }, token: AuthenticationService, providedIn: "root" });
|
111
|
+
AuthenticationService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function AuthenticationService_Factory() { return new AuthenticationService(i0.ɵɵinject(i1.Router), i0.ɵɵinject(i2.HttpClient), i0.ɵɵinject(i3.MatDialog)); }, token: AuthenticationService, providedIn: "root" });
|
107
112
|
AuthenticationService = __decorate([
|
108
113
|
Injectable({ providedIn: 'root' }),
|
109
114
|
__metadata("design:paramtypes", [Router,
|
110
|
-
HttpClient
|
115
|
+
HttpClient,
|
116
|
+
MatDialog])
|
111
117
|
], AuthenticationService);
|
112
118
|
return AuthenticationService;
|
113
119
|
}(AbstractService));
|
114
120
|
export { AuthenticationService };
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbImNvcmUvc2VydmljZXMvYXV0aGVudGljYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGVBQWUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU1RCxPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQzs7OztBQUNsQyxJQUFNLE1BQU0sR0FBRyxPQUFPLENBQUM7QUFJdkIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFHckQ7SUFBK0QseUNBQWU7SUFLMUUsK0JBQ2MsTUFBYyxFQUNkLElBQWdCO1FBRjlCLFlBSUksaUJBQU8sU0FHVjtRQU5hLFlBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFJLEdBQUosSUFBSSxDQUFZO1FBRzFCLEtBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRixLQUFJLENBQUMsTUFBTSxHQUFHLEtBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxFQUFFLENB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QUFVLENBQUMsQ0FBQztZQUNoRSxPQUFPLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQztTQUM3QztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRCxzQkFBVyx3Q0FBSzthQUFoQjtZQUNJLElBQU0sS0FBSyxHQUFXLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDcEQsSUFBSSxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUMzQixPQUFPLElBQUksQ0FBQzthQUNmO1lBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdCLENBQUM7OztPQUFBO0lBRVMsNENBQVksR0FBdEI7UUFDSSxPQUFPLElBQUksV0FBVyxFQUFFO2FBQ25CLE1BQU0sQ0FBQyxlQUFlLEVBQUUsUUFBUSxHQUFHLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO2FBQ3BFLE1BQU0sQ0FBQyxjQUFjLEVBQUUsbUNBQW1DLENBQUM7YUFDM0QsTUFBTSxDQUFDLFlBQVksRUFBRSxLQUFLLENBQUM7YUFDM0IsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdELENBQUM7O2dCQXZHcUIsTUFBTTtnQkFDUixVQUFVOzs7SUFQckIscUJBQXFCO1FBRGpDLFVBQVUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsQ0FBQzt5Q0FPVCxNQUFNO1lBQ1IsVUFBVTtPQVByQixxQkFBcUIsQ0ErR2pDO2dDQS9IRDtDQStIQyxBQS9HRCxDQUErRCxlQUFlLEdBK0c3RTtTQS9HWSxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycywgSHR0cFBhcmFtcyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgKiBhcyBtb21lbnRfIGZyb20gJ21vbWVudCc7XG5jb25zdCBtb21lbnQgPSBtb21lbnRfO1xuXG5pbXBvcnQgeyBCYXNlVXNlciB9IGZyb20gJy4uL21vZGVscy9iYXNlLXVzZXIubW9kZWwnO1xuaW1wb3J0IHsgVG9rZW5EVE8gfSBmcm9tICcuLi9tb2RlbHMvZHRvL3Rva2VuLmR0byc7XG5pbXBvcnQgeyBPYmplY3RVdGlsIH0gZnJvbSAnLi4vdXRpbHMvb2JqZWN0LnV0aWwnO1xuaW1wb3J0IHsgU3RyaW5nVXRpbCB9IGZyb20gJy4uL3V0aWxzL3N0cmluZy51dGlsJztcbmltcG9ydCB7IEFic3RyYWN0U2VydmljZSB9IGZyb20gJy4vYWJzdHJhY3Quc2VydmljZSc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRpb25TZXJ2aWNlPFUgZXh0ZW5kcyBCYXNlVXNlcj4gZXh0ZW5kcyBBYnN0cmFjdFNlcnZpY2Uge1xuXG4gICAgcHJpdmF0ZSBfdG9rZW5TdWJqZWN0JDogQmVoYXZpb3JTdWJqZWN0PFRva2VuRFRPPFU+PjtcbiAgICBwdWJsaWMgdG9rZW4kOiBPYnNlcnZhYmxlPFRva2VuRFRPPFU+PjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsXG4gICAgICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuICAgICAgICB0aGlzLl90b2tlblN1YmplY3QkID0gbmV3IEJlaGF2aW9yU3ViamVjdChKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd0b2tlbicpKSk7XG4gICAgICAgIHRoaXMudG9rZW4kID0gdGhpcy5fdG9rZW5TdWJqZWN0JC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbG9naW4odXNlcm5hbWU6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZyk6IE9ic2VydmFibGU8VG9rZW5EVE88VT4+IHtcbiAgICAgICAgY29uc3QgYm9keTogSHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKClcbiAgICAgICAgICAgIC5zZXQoJ2dyYW50X3R5cGUnLCAncGFzc3dvcmQnKVxuICAgICAgICAgICAgLnNldCgndXNlcm5hbWUnLCB1c2VybmFtZSlcbiAgICAgICAgICAgIC5zZXQoJ3Bhc3N3b3JkJywgcGFzc3dvcmQpO1xuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUb2tlbkRUTzxVPj4oXG4gICAgICAgICAgICAnYXBpL2F1dGhlbnRpY2F0b3Ivb2F1dGgvdG9rZW4nLFxuICAgICAgICAgICAgYm9keSxcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucyh0aGlzLmJ1aWxkUGFyYW1zKCksIHRoaXMuYnVpbGRIZWFkZXJzKCkuYXBwZW5kKCdza2lwJywgU3RyaW5nKHRydWUpKSlcbiAgICAgICAgKS5waXBlKFxuICAgICAgICAgICAgbWFwKCh0b2tlbjogVG9rZW5EVE88VT4pID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1ZhbGlkVG9rZW4odG9rZW4pKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0U2Vzc2lvbih0b2tlbik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0b2tlbjtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMub25EZXN0cm95KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvciksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGxvZ291dCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZXZva2VUb2tlbigpLnN1YnNjcmliZShfID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlU2Vzc2lvbigpO1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvb2F1dGgvbG9naW4nXSwgeyBxdWVyeVBhcmFtczogeyByZXR1cm5Vcmw6IHRoaXMucm91dGVyLnJvdXRlclN0YXRlLnNuYXBzaG90LnVybCB9IH0pO1xuICAgICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVmcmVzaFRva2VuKGFkZGl0aW9uYWxQYXJhbXM/OiBNYXA8YW55LCBhbnk+KTogT2JzZXJ2YWJsZTxUb2tlbkRUTzxVPj4ge1xuICAgICAgICBsZXQgYm9keTogSHR0cFBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKClcbiAgICAgICAgICAgIC5zZXQoJ2dyYW50X3R5cGUnLCAncmVmcmVzaF90b2tlbicpXG4gICAgICAgICAgICAuc2V0KCdyZWZyZXNoX3Rva2VuJywgdGhpcy50b2tlbi5yZWZyZXNoVG9rZW4pO1xuXG4gICAgICAgIGlmICghT2JqZWN0VXRpbC5pc051bGwoYWRkaXRpb25hbFBhcmFtcykpIHtcbiAgICAgICAgICAgIGFkZGl0aW9uYWxQYXJhbXMuZm9yRWFjaCgodmFsdWUsIGtleSkgPT4gYm9keSA9IGJvZHkuYXBwZW5kKGtleSwgdmFsdWUpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUb2tlbkRUTzxVPj4oJ2FwaS9hdXRoZW50aWNhdG9yL29hdXRoL3Rva2VuJywgYm9keSwgdGhpcy5vcHRpb25zKHRoaXMuYnVpbGRQYXJhbXMoKSwgdGhpcy5idWlsZEhlYWRlcnMoKS5hcHBlbmQoJ3NraXAnLCAndHJ1ZScpKSkucGlwZShcbiAgICAgICAgICAgIG1hcChhY2Nlc3NUb2tlbiA9PiB0aGlzLnNldFNlc3Npb24oYWNjZXNzVG9rZW4pKSxcbiAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm9uRGVzdHJveSksXG4gICAgICAgICAgICBjYXRjaEVycm9yKHRoaXMuaGFuZGxlRXJyb3IpLFxuICAgICAgICApO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXZva2VUb2tlbih0b2tlbj86IFRva2VuRFRPPFU+KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICAgICAgbGV0IGxIdHRwSGVhZGVyczogSHR0cEhlYWRlcnMgPSBudWxsO1xuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKHRva2VuKSkge1xuICAgICAgICAgICAgbEh0dHBIZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKClcbiAgICAgICAgICAgICAgICAuYXBwZW5kKCdBdXRob3JpemF0aW9uJywgdG9rZW4uYWNjZXNzVG9rZW4pXG4gICAgICAgICAgICAgICAgLmFwcGVuZCgnc2tpcCcsICd0cnVlJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KCdhcGkvYXV0aGVudGljYXRvci9vYXV0aC90b2tlbi9yZXZva2UnLCB7fSwgdGhpcy5vcHRpb25zKG51bGwsIGxIdHRwSGVhZGVycykpLnBpcGUoXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc2V0U2Vzc2lvbih0b2tlbjogVG9rZW5EVE88VT4pOiBUb2tlbkRUTzxVPiB7XG4gICAgICAgIGlmICh0aGlzLmlzVmFsaWRUb2tlbih0b2tlbikpIHtcbiAgICAgICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCd0b2tlbicsIEpTT04uc3RyaW5naWZ5KHRva2VuKSk7XG4gICAgICAgICAgICB0aGlzLl90b2tlblN1YmplY3QkLm5leHQodG9rZW4pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0b2tlbjtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlU2Vzc2lvbigpOiB2b2lkIHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3Rva2VuJyk7XG4gICAgICAgIHNlc3Npb25TdG9yYWdlLmNsZWFyKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGlzVmFsaWRUb2tlbih0b2tlbjogVG9rZW5EVE88VT4pOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0b2tlbikgJiYgIU9iamVjdFV0aWwuaXNOdWxsKHRva2VuLmV4cGlyYXRpb24pKSB7XG4gICAgICAgICAgICBjb25zdCB0b2tlbkV4cGlyYXRpb246IG1vbWVudC5Nb21lbnQgPSBtb21lbnQodG9rZW4uZXhwaXJhdGlvbik7XG4gICAgICAgICAgICByZXR1cm4gbW9tZW50KCkuaXNCZWZvcmUodG9rZW5FeHBpcmF0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCB0b2tlbigpOiBUb2tlbkRUTzxVPiB7XG4gICAgICAgIGNvbnN0IHRva2VuOiBzdHJpbmcgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndG9rZW4nKTtcbiAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eSh0b2tlbikpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKHRva2VuKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYnVpbGRIZWFkZXJzKCk6IEh0dHBIZWFkZXJzIHtcbiAgICAgICAgcmV0dXJuIG5ldyBIdHRwSGVhZGVycygpXG4gICAgICAgICAgICAuYXBwZW5kKCdBdXRob3JpemF0aW9uJywgJ0Jhc2ljICcgKyBidG9hKCdDT05WRU5BTlRfTUFOQUdFTUVOVDoxMjMnKSlcbiAgICAgICAgICAgIC5hcHBlbmQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnKVxuICAgICAgICAgICAgLmFwcGVuZCgnYWNjZXNzVHlwZScsICdXRUInKVxuICAgICAgICAgICAgLmFwcGVuZCgndGltZVpvbmUnLCBtb21lbnQobmV3IERhdGUoKSkuZm9ybWF0KCdaWicpKTtcbiAgICB9XG5cbn1cbiJdfQ==
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbImNvcmUvc2VydmljZXMvYXV0aGVudGljYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDOUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxLQUFLLE9BQU8sTUFBTSxRQUFRLENBQUM7Ozs7O0FBQ2xDLElBQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQztBQUl2QixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdyRDtJQUErRCx5Q0FBZTtJQUsxRSwrQkFDYyxNQUFjLEVBQ2QsSUFBZ0IsRUFDbEIsVUFBcUI7UUFIakMsWUFLSSxpQkFBTyxTQUdWO1FBUGEsWUFBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUksR0FBSixJQUFJLENBQVk7UUFDbEIsZ0JBQVUsR0FBVixVQUFVLENBQVc7UUFHN0IsS0FBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMs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QWlIN0U7U0FqSFkscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2cgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbCc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0ICogYXMgbW9tZW50XyBmcm9tICdtb21lbnQnO1xuY29uc3QgbW9tZW50ID0gbW9tZW50XztcblxuaW1wb3J0IHsgQmFzZVVzZXIgfSBmcm9tICcuLi9tb2RlbHMvYmFzZS11c2VyLm1vZGVsJztcbmltcG9ydCB7IFRva2VuRFRPIH0gZnJvbSAnLi4vbW9kZWxzL2R0by90b2tlbi5kdG8nO1xuaW1wb3J0IHsgT2JqZWN0VXRpbCB9IGZyb20gJy4uL3V0aWxzL29iamVjdC51dGlsJztcbmltcG9ydCB7IFN0cmluZ1V0aWwgfSBmcm9tICcuLi91dGlscy9zdHJpbmcudXRpbCc7XG5pbXBvcnQgeyBBYnN0cmFjdFNlcnZpY2UgfSBmcm9tICcuL2Fic3RyYWN0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uU2VydmljZTxVIGV4dGVuZHMgQmFzZVVzZXI+IGV4dGVuZHMgQWJzdHJhY3RTZXJ2aWNlIHtcblxuICAgIHByaXZhdGUgX3Rva2VuU3ViamVjdCQ6IEJlaGF2aW9yU3ViamVjdDxUb2tlbkRUTzxVPj47XG4gICAgcHVibGljIHRva2VuJDogT2JzZXJ2YWJsZTxUb2tlbkRUTzxVPj47XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgcHJpdmF0ZSBfbWF0RGlhbG9nOiBNYXREaWFsb2csXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuX3Rva2VuU3ViamVjdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3Rva2VuJykpKTtcbiAgICAgICAgdGhpcy50b2tlbiQgPSB0aGlzLl90b2tlblN1YmplY3QkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBsb2dpbih1c2VybmFtZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxUb2tlbkRUTzxVPj4ge1xuICAgICAgICBjb25zdCBib2R5OiBIdHRwUGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKVxuICAgICAgICAgICAgLnNldCgnZ3JhbnRfdHlwZScsICdwYXNzd29yZCcpXG4gICAgICAgICAgICAuc2V0KCd1c2VybmFtZScsIHVzZXJuYW1lKVxuICAgICAgICAgICAgLnNldCgncGFzc3dvcmQnLCBwYXNzd29yZCk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFRva2VuRFRPPFU+PihcbiAgICAgICAgICAgICdhcGkvYXV0aGVudGljYXRvci9vYXV0aC90b2tlbicsXG4gICAgICAgICAgICBib2R5LFxuICAgICAgICAgICAgdGhpcy5vcHRpb25zKHRoaXMuYnVpbGRQYXJhbXMoKSwgdGhpcy5idWlsZEhlYWRlcnMoKS5hcHBlbmQoJ3NraXAnLCBTdHJpbmcodHJ1ZSkpKVxuICAgICAgICApLnBpcGUoXG4gICAgICAgICAgICBtYXAoKHRva2VuOiBUb2tlbkRUTzxVPikgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzVmFsaWRUb2tlbih0b2tlbikpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5zZXRTZXNzaW9uKHRva2VuKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRva2VuO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgbG9nb3V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJldm9rZVRva2VuKCkuc3Vic2NyaWJlKF8gPT4ge1xuICAgICAgICAgICAgdGhpcy5yZW1vdmVTZXNzaW9uKCk7XG4gICAgICAgICAgICB0aGlzLl9tYXREaWFsb2cuY2xvc2VBbGwoKTtcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL29hdXRoL2xvZ2luJ10sIHsgcXVlcnlQYXJhbXM6IHsgcmV0dXJuVXJsOiB0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5zbmFwc2hvdC51cmwgfSB9KTtcbiAgICAgICAgfSwgZXJyb3IgPT4ge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlZnJlc2hUb2tlbihhZGRpdGlvbmFsUGFyYW1zPzogTWFwPGFueSwgYW55Pik6IE9ic2VydmFibGU8VG9rZW5EVE88VT4+IHtcbiAgICAgICAgbGV0IGJvZHk6IEh0dHBQYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpXG4gICAgICAgICAgICAuc2V0KCdncmFudF90eXBlJywgJ3JlZnJlc2hfdG9rZW4nKVxuICAgICAgICAgICAgLnNldCgncmVmcmVzaF90b2tlbicsIHRoaXMudG9rZW4ucmVmcmVzaFRva2VuKTtcblxuICAgICAgICBpZiAoIU9iamVjdFV0aWwuaXNOdWxsKGFkZGl0aW9uYWxQYXJhbXMpKSB7XG4gICAgICAgICAgICBhZGRpdGlvbmFsUGFyYW1zLmZvckVhY2goKHZhbHVlLCBrZXkpID0+IGJvZHkgPSBib2R5LmFwcGVuZChrZXksIHZhbHVlKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VG9rZW5EVE88VT4+KCdhcGkvYXV0aGVudGljYXRvci9vYXV0aC90b2tlbicsIGJvZHksIHRoaXMub3B0aW9ucyh0aGlzLmJ1aWxkUGFyYW1zKCksIHRoaXMuYnVpbGRIZWFkZXJzKCkuYXBwZW5kKCdza2lwJywgJ3RydWUnKSkpLnBpcGUoXG4gICAgICAgICAgICBtYXAoYWNjZXNzVG9rZW4gPT4gdGhpcy5zZXRTZXNzaW9uKGFjY2Vzc1Rva2VuKSksXG4gICAgICAgICAgICB0YWtlVW50aWwodGhpcy5vbkRlc3Ryb3kpLFxuICAgICAgICAgICAgY2F0Y2hFcnJvcih0aGlzLmhhbmRsZUVycm9yKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmV2b2tlVG9rZW4odG9rZW4/OiBUb2tlbkRUTzxVPik6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGxldCBsSHR0cEhlYWRlcnM6IEh0dHBIZWFkZXJzID0gbnVsbDtcbiAgICAgICAgaWYgKCFPYmplY3RVdGlsLmlzTnVsbCh0b2tlbikpIHtcbiAgICAgICAgICAgIGxIdHRwSGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpXG4gICAgICAgICAgICAgICAgLmFwcGVuZCgnQXV0aG9yaXphdGlvbicsIHRva2VuLmFjY2Vzc1Rva2VuKVxuICAgICAgICAgICAgICAgIC5hcHBlbmQoJ3NraXAnLCAndHJ1ZScpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCgnYXBpL2F1dGhlbnRpY2F0b3Ivb2F1dGgvdG9rZW4vcmV2b2tlJywge30sIHRoaXMub3B0aW9ucyhudWxsLCBsSHR0cEhlYWRlcnMpKS5waXBlKFxuICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMub25EZXN0cm95KSxcbiAgICAgICAgICAgIGNhdGNoRXJyb3IodGhpcy5oYW5kbGVFcnJvciksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHNldFNlc3Npb24odG9rZW46IFRva2VuRFRPPFU+KTogVG9rZW5EVE88VT4ge1xuICAgICAgICBpZiAodGhpcy5pc1ZhbGlkVG9rZW4odG9rZW4pKSB7XG4gICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgndG9rZW4nLCBKU09OLnN0cmluZ2lmeSh0b2tlbikpO1xuICAgICAgICAgICAgdGhpcy5fdG9rZW5TdWJqZWN0JC5uZXh0KHRva2VuKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdG9rZW47XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZVNlc3Npb24oKTogdm9pZCB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCd0b2tlbicpO1xuICAgICAgICBzZXNzaW9uU3RvcmFnZS5jbGVhcigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBpc1ZhbGlkVG9rZW4odG9rZW46IFRva2VuRFRPPFU+KTogYm9vbGVhbiB7XG4gICAgICAgIGlmICghT2JqZWN0VXRpbC5pc051bGwodG9rZW4pICYmICFPYmplY3RVdGlsLmlzTnVsbCh0b2tlbi5leHBpcmF0aW9uKSkge1xuICAgICAgICAgICAgY29uc3QgdG9rZW5FeHBpcmF0aW9uOiBtb21lbnQuTW9tZW50ID0gbW9tZW50KHRva2VuLmV4cGlyYXRpb24pO1xuICAgICAgICAgICAgcmV0dXJuIG1vbWVudCgpLmlzQmVmb3JlKHRva2VuRXhwaXJhdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgdG9rZW4oKTogVG9rZW5EVE88VT4ge1xuICAgICAgICBjb25zdCB0b2tlbjogc3RyaW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3Rva2VuJyk7XG4gICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkodG9rZW4pKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSh0b2tlbik7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGJ1aWxkSGVhZGVycygpOiBIdHRwSGVhZGVycyB7XG4gICAgICAgIHJldHVybiBuZXcgSHR0cEhlYWRlcnMoKVxuICAgICAgICAgICAgLmFwcGVuZCgnQXV0aG9yaXphdGlvbicsICdCYXNpYyAnICsgYnRvYSgnQ09OVkVOQU5UX01BTkFHRU1FTlQ6MTIzJykpXG4gICAgICAgICAgICAuYXBwZW5kKCdDb250ZW50LVR5cGUnLCAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJylcbiAgICAgICAgICAgIC5hcHBlbmQoJ2FjY2Vzc1R5cGUnLCAnV0VCJylcbiAgICAgICAgICAgIC5hcHBlbmQoJ3RpbWVab25lJywgbW9tZW50KG5ldyBEYXRlKCkpLmZvcm1hdCgnWlonKSk7XG4gICAgfVxuXG59XG4iXX0=
|
@@ -49,14 +49,12 @@ var PhoneUtil = /** @class */ (function () {
|
|
49
49
|
PhoneUtil.format = function (number, mask) {
|
50
50
|
var numberNotFormatted = NumberUtil.onlyNumbers(number);
|
51
51
|
var phoneFormatted = '';
|
52
|
-
if ((numberNotFormatted.length < 8) ||
|
53
|
-
(numberNotFormatted.length > 12) ||
|
54
|
-
(!this.isPossible(numberNotFormatted) && !this.isValid(numberNotFormatted))) {
|
55
|
-
return numberNotFormatted;
|
56
|
-
}
|
57
52
|
if (StringUtil.isEmpty(mask)) {
|
58
53
|
mask = this.mask(numberNotFormatted);
|
59
54
|
}
|
55
|
+
if (mask === '0*') {
|
56
|
+
return numberNotFormatted;
|
57
|
+
}
|
60
58
|
for (var i = 0, j = 0; i < mask.length && j < numberNotFormatted.length; i++) {
|
61
59
|
phoneFormatted += mask.charAt(i) === '0' ? numberNotFormatted.charAt(j++) : mask.charAt(i);
|
62
60
|
}
|
@@ -78,7 +76,14 @@ var PhoneUtil = /** @class */ (function () {
|
|
78
76
|
case 8: return '0000-0000';
|
79
77
|
case 9: return '0 0000-0000';
|
80
78
|
case 10: return '(00) 0000-0000';
|
81
|
-
case 11:
|
79
|
+
case 11:
|
80
|
+
{
|
81
|
+
var startWithZero = phoneAux.startsWith('0');
|
82
|
+
return (startWithZero
|
83
|
+
? '(000) 0000-0000'
|
84
|
+
: '(00) 0 0000-0000');
|
85
|
+
}
|
86
|
+
;
|
82
87
|
case 12: return '(000) 0 0000-0000';
|
83
88
|
default: return '0*';
|
84
89
|
}
|
@@ -132,4 +137,4 @@ var PhoneUtil = /** @class */ (function () {
|
|
132
137
|
return PhoneUtil;
|
133
138
|
}());
|
134
139
|
export { PhoneUtil };
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmUudXRpbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbImNvcmUvdXRpbHMvcGhvbmUudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssUUFBUSxNQUFNLG1CQUFtQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxlQUFlO0FBQ2Y7SUFBQTtJQXFJQSxDQUFDO0lBbklpQiwwQkFBZ0IsR0FBOUIsVUFBK0IsS0FBYTtRQUN4QyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVhLGlCQUFPLEdBQXJCLFVBQXNCLFdBQW1CLEVBQUUsS0FBeUIsRUFBRSxPQUFvQztRQUFwQyx3QkFBQSxFQUFBLGNBQW9DO1FBQ3RHLElBQUksYUFBK0MsQ0FBQztRQUVwRCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNsQyxJQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsMEJBQTBCLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQy9FLElBQUksWUFBWSxFQUFFO2dCQUNkLGFBQWEsR0FBRyxZQUFZLENBQUM7YUFDaEM7U0FDSjthQUFNO1lBQ0gsYUFBYSxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDN0Q7UUFFRCxJQUFJLGFBQWEsRUFBRTtZQUNmLElBQU0sZUFBZSxHQUFHLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2RCxPQUFPLGVBQWUsQ0FBQyxPQUFPLENB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QUNMLENBQUM7SUFFYSxpQkFBTyxHQUFyQixVQUFzQixXQUFtQixFQUFFLE9BQW9DO1FBQXBDLHdCQUFBLEVBQUEsY0FBb0M7UUFDM0UsSUFBSTtZQUNBLElBQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDL0UsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ3ZEO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDWixPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0wsQ0FBQztJQUVhLGlCQUFPLEdBQXJCLFVBQXNCLFlBQW9CLEVBQUUsWUFBb0IsRUFBRSxPQUFvQztRQUFwQyx3QkFBQSxFQUFBLGNBQW9DO1FBQ2xHLElBQUk7WUFDQSxJQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsMEJBQTBCLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2pGLElBQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDakYsSUFBSSxhQUFhLElBQUksYUFBYSxFQUFFO2dCQUNoQyxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDL0M7aUJBQU07Z0JBQ0gsT0FBTyxLQUFLLENBQUM7YUFDaEI7U0FDSjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ1osT0FBTyxLQUFLLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRUwsZ0JBQUM7QUFBRCxDQUFDLEFBcklELElBcUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbGliUGhvbmUgZnJvbSAnbGlicGhvbmVudW1iZXItanMnO1xuXG5pbXBvcnQgeyBOdW1iZXJVdGlsIH0gZnJvbSAnLi9udW1iZXIudXRpbCc7XG5pbXBvcnQgeyBTdHJpbmdVdGlsIH0gZnJvbSAnLi9zdHJpbmcudXRpbCc7XG5cbi8qKiBAZHluYW1pYyAqL1xuZXhwb3J0IGNsYXNzIFBob25lVXRpbCB7XG5cbiAgICBwdWJsaWMgc3RhdGljIHJlbW92ZUNoYXJhY3RlcnModmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoL1xcRC9nLCAnJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBtYXNrTGliKHBob25lTnVtYmVyOiBzdHJpbmcsIHN0YXRlPzogbGliUGhvbmUuRXhhbXBsZXMsIGNvdW50cnk6IGxpYlBob25lLkNvdW50cnlDb2RlID0gJ0JSJyk6IHN0cmluZyB7XG4gICAgICAgIGxldCBleGFtcGxlTnVtYmVyOiBsaWJQaG9uZS5QaG9uZU51bWJlciB8IHVuZGVmaW5lZDtcblxuICAgICAgICBpZiAoIVN0cmluZ1V0aWwuaXNFbXB0eShwaG9uZU51bWJlcikpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZE51bWJlciA9IGxpYlBob25lLnBhcnNlUGhvbmVOdW1iZXJGcm9tU3RyaW5nKHBob25lTnVtYmVyLCBjb3VudHJ5KTtcbiAgICAgICAgICAgIGlmIChwYXJzZWROdW1iZXIpIHtcbiAgICAgICAgICAgICAgICBleGFtcGxlTnVtYmVyID0gcGFyc2VkTnVtYmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhhbXBsZU51bWJlciA9IGxpYlBob25lLmdldEV4YW1wbGVOdW1iZXIoY291bnRyeSwgc3RhdGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV4YW1wbGVOdW1iZXIpIHtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZE51bWJlciA9IGV4YW1wbGVOdW1iZXIuZm9ybWF0TmF0aW9uYWwoKTtcbiAgICAgICAgICAgIHJldHVybiBmb3JtYXR0ZWROdW1iZXIucmVwbGFjZSgvXFxkL2csICcwJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VzdGFkbyBuw6NvIHN1cG9ydGFkbyBvdSBjw7NkaWdvIGRlIGVzdGFkbyBpbnbDoWxpZG8uJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZvcm1hdExpYihwaG9uZU51bWJlcjogc3RyaW5nLCBjb3VudHJ5OiBsaWJQaG9uZS5Db3VudHJ5Q29kZSA9ICdCUicpOiBzdHJpbmcge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VkTnVtYmVyID0gbGliUGhvbmUucGFyc2VQaG9uZU51bWJlckZyb21TdHJpbmcocGhvbmVOdW1iZXIsIGNvdW50cnkpO1xuICAgICAgICAgICAgaWYgKHBhcnNlZE51bWJlcikge1xuICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZWROdW1iZXIuZm9ybWF0TmF0aW9uYWwoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOw7ptZXJvIGRlIHRlbGVmb25lIGludsOhbGlkby4nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRXJybyBhbyBmb3JtYXRhciBvIG7Dum1lcm8gZGUgdGVsZWZvbmU6ICcgKyBlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZm9ybWF0KG51bWJlcjogc3RyaW5nLCBtYXNrPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IG51bWJlck5vdEZvcm1hdHRlZDogc3RyaW5nID0gTnVtYmVyVXRpbC5vbmx5TnVtYmVycyhudW1iZXIpO1xuICAgICAgICBsZXQgcGhvbmVGb3JtYXR0ZWQ6IHN0cmluZyA9ICcnO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIChudW1iZXJOb3RGb3JtYXR0ZWQubGVuZ3RoIDwgOCkgfHxcbiAgICAgICAgICAgIChudW1iZXJOb3RGb3JtYXR0ZWQubGVuZ3RoID4gMTIpIHx8XG4gICAgICAgICAgICAoIXRoaXMuaXNQb3NzaWJsZShudW1iZXJOb3RGb3JtYXR0ZWQpICYmICF0aGlzLmlzVmFsaWQobnVtYmVyTm90Rm9ybWF0dGVkKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVtYmVyTm90Rm9ybWF0dGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFN0cmluZ1V0aWwuaXNFbXB0eShtYXNrKSkge1xuICAgICAgICAgICAgbWFzayA9IHRoaXMubWFzayhudW1iZXJOb3RGb3JtYXR0ZWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMCwgajogbnVtYmVyID0gMDsgaSA8IG1hc2subGVuZ3RoICYmIGogPCBudW1iZXJOb3RGb3JtYXR0ZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHBob25lRm9ybWF0dGVkICs9IG1hc2suY2hhckF0KGkpID09PSAnMCcgPyBudW1iZXJOb3RGb3JtYXR0ZWQuY2hhckF0KGorKykgOiBtYXNrLmNoYXJBdChpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwaG9uZUZvcm1hdHRlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG1hc2socGhvbmU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHNwZWNpYWxQcmVmaXhlczogc3RyaW5nW10gPSBbJzA5MDAnLCAnMDgwMCcsICcwNzAwJywgJzA2MDAnLCAnMDUwMCcsICcwNDAwJywgJzAzMDAnLCAnMDIwMCcsICcwMTAwJ107XG4gICAgICAgIGxldCBwaG9uZUF1eDogc3RyaW5nID0gdGhpcy5yZW1vdmVDaGFyYWN0ZXJzKHBob25lLnJlcGxhY2UoL1xcRC9nLCAnJykpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIChwaG9uZUF1eC5sZW5ndGggPCA4KSB8fFxuICAgICAgICAgICAgKHBob25lQXV4Lmxlbmd0aCA+IDEyKSB8fFxuICAgICAgICAgICAgKCF0aGlzLmlzUG9zc2libGUocGhvbmVBdXgpICYmICF0aGlzLmlzVmFsaWQocGhvbmVBdXgpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiAnMConO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXhpc3RJbkFycmF5OiBib29sZWFuID0gc3BlY2lhbFByZWZpeGVzLnNvbWUocHJlZml4ID0+IHBob25lQXV4LnN0YXJ0c1dpdGgocHJlZml4KSk7XG4gICAgICAgIGlmIChleGlzdEluQXJyYXkpIHtcbiAgICAgICAgICAgIHJldHVybiAnMDAwMCAwMDAgMDAwMCc7IC8vIFBhcmEgbsO6bWVyb3MgZXNwZWNpYWlzIGNvbW8gMDgwMFxuICAgICAgICB9XG5cbiAgICAgICAgc3dpdGNoIChwaG9uZUF1eC5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNhc2UgODogcmV0dXJuICcwMDAwLTAwMDAnO1xuICAgICAgICAgICAgY2FzZSA5OiByZXR1cm4gJzAgMDAwMC0wMDAwJztcbiAgICAgICAgICAgIGNhc2UgMTA6IHJldHVybiAnKDAwKSAwMDAwLTAwMDAnO1xuICAgICAgICAgICAgY2FzZSAxMTogcmV0dXJuICcoMDApIDAgMDAwMC0wMDAwJztcbiAgICAgICAgICAgIGNhc2UgMTI6IHJldHVybiAnKDAwMCkgMCAwMDAwLTAwMDAnO1xuICAgICAgICAgICAgZGVmYXVsdDogcmV0dXJuICcwKic7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGlzUG9zc2libGUocGhvbmVOdW1iZXI6IHN0cmluZywgY291bnRyeTogbGliUGhvbmUuQ291bnRyeUNvZGUgPSAnQlInKTogYm9vbGVhbiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWROdW1iZXIgPSBsaWJQaG9uZS5wYXJzZVBob25lTnVtYmVyRnJvbVN0cmluZyhwaG9uZU51bWJlciwgY291bnRyeSk7XG4gICAgICAgICAgICByZXR1cm4gcGFyc2VkTnVtYmVyID8gcGFyc2VkTnVtYmVyLmlzUG9zc2libGUoKSA6IGZhbHNlO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc1ZhbGlkKHBob25lTnVtYmVyOiBzdHJpbmcsIGNvdW50cnk6IGxpYlBob25lLkNvdW50cnlDb2RlID0gJ0JSJyk6IGJvb2xlYW4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VkTnVtYmVyID0gbGliUGhvbmUucGFyc2VQaG9uZU51bWJlckZyb21TdHJpbmcocGhvbmVOdW1iZXIsIGNvdW50cnkpO1xuICAgICAgICAgICAgcmV0dXJuIHBhcnNlZE51bWJlciA/IHBhcnNlZE51bWJlci5pc1ZhbGlkKCkgOiBmYWxzZTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VHlwZShwaG9uZU51bWJlcjogc3RyaW5nLCBjb3VudHJ5OiBsaWJQaG9uZS5Db3VudHJ5Q29kZSA9ICdCUicpOiBsaWJQaG9uZS5OdW1iZXJUeXBlIHwgbnVsbCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWROdW1iZXIgPSBsaWJQaG9uZS5wYXJzZVBob25lTnVtYmVyRnJvbVN0cmluZyhwaG9uZU51bWJlciwgY291bnRyeSk7XG4gICAgICAgICAgICByZXR1cm4gcGFyc2VkTnVtYmVyID8gcGFyc2VkTnVtYmVyLmdldFR5cGUoKSA6IG51bGw7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaXNFcXVhbChwaG9uZU51bWJlcjE6IHN0cmluZywgcGhvbmVOdW1iZXIyOiBzdHJpbmcsIGNvdW50cnk6IGxpYlBob25lLkNvdW50cnlDb2RlID0gJ0JSJyk6IGJvb2xlYW4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VkTnVtYmVyMSA9IGxpYlBob25lLnBhcnNlUGhvbmVOdW1iZXJGcm9tU3RyaW5nKHBob25lTnVtYmVyMSwgY291bnRyeSk7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWROdW1iZXIyID0gbGliUGhvbmUucGFyc2VQaG9uZU51bWJlckZyb21TdHJpbmcocGhvbmVOdW1iZXIyLCBjb3VudHJ5KTtcbiAgICAgICAgICAgIGlmIChwYXJzZWROdW1iZXIxICYmIHBhcnNlZE51bWJlcjIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcGFyc2VkTnVtYmVyMS5pc0VxdWFsKHBhcnNlZE51bWJlcjIpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGhvbmUudXRpbC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BnaXBpc2lzdGVtYXMvbmctY29yZS8iLCJzb3VyY2VzIjpbImNvcmUvdXRpbHMvcGhvbmUudXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssUUFBUSxNQUFNLG1CQUFtQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxlQUFlO0FBQ2Y7SUFBQTtJQXdJQSxDQUFDO0lBdElpQiwwQkFBZ0IsR0FBOUIsVUFBK0IsS0FBYTtRQUN4QyxJQUFJLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDM0IsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUNELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVhLGlCQUFPLEdBQXJCLFVBQXNCLFdBQW1CLEVBQUUsS0FBeUIsRUFBRSxPQUFvQztRQUFwQyx3QkFBQSxFQUFBLGNBQW9DO1FBQ3RHLElBQUksYUFBK0MsQ0FBQztRQUVwRCxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUNsQyxJQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsMEJBQTBCLENBQUMsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQy9FLElBQUksWUFBWSxFQUFFO2dCQUNkLGFBQWEsR0FBRyxZQUFZLENBQUM7YUFDaEM7U0FDSjthQUFNO1lBQ0gsYUFBYSxHQUFHLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDN0Q7UUFFRCxJQUFJLGFBQWEsRUFBRTtZQUNmLElBQU0sZUFBZSxHQUFHLGFBQWEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN2RCxPQUFPLGVBQWUsQ0FBQyxPQUFPLENB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QixXQUFtQixFQUFFLE9BQW9DO1FBQXBDLHdCQUFBLEVBQUEsY0FBb0M7UUFDM0UsSUFBSTtZQUNBLElBQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDL0UsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQ3ZEO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDWixPQUFPLElBQUksQ0FBQztTQUNmO0lBQ0wsQ0FBQztJQUVhLGlCQUFPLEdBQXJCLFVBQXNCLFlBQW9CLEVBQUUsWUFBb0IsRUFBRSxPQUFvQztRQUFwQyx3QkFBQSxFQUFBLGNBQW9DO1FBQ2xHLElBQUk7WUFDQSxJQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsMEJBQTBCLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2pGLElBQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQywwQkFBMEIsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDakYsSUFBSSxhQUFhLElBQUksYUFBYSxFQUFFO2dCQUNoQyxPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDL0M7aUJBQU07Z0JBQ0gsT0FBTyxLQUFLLENBQUM7YUFDaEI7U0FDSjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ1osT0FBTyxLQUFLLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRUwsZ0JBQUM7QUFBRCxDQUFDLEFBeElELElBd0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgbGliUGhvbmUgZnJvbSAnbGlicGhvbmVudW1iZXItanMnO1xuXG5pbXBvcnQgeyBOdW1iZXJVdGlsIH0gZnJvbSAnLi9udW1iZXIudXRpbCc7XG5pbXBvcnQgeyBTdHJpbmdVdGlsIH0gZnJvbSAnLi9zdHJpbmcudXRpbCc7XG5cbi8qKiBAZHluYW1pYyAqL1xuZXhwb3J0IGNsYXNzIFBob25lVXRpbCB7XG5cbiAgICBwdWJsaWMgc3RhdGljIHJlbW92ZUNoYXJhY3RlcnModmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkodmFsdWUpKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlLnJlcGxhY2UoL1xcRC9nLCAnJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBtYXNrTGliKHBob25lTnVtYmVyOiBzdHJpbmcsIHN0YXRlPzogbGliUGhvbmUuRXhhbXBsZXMsIGNvdW50cnk6IGxpYlBob25lLkNvdW50cnlDb2RlID0gJ0JSJyk6IHN0cmluZyB7XG4gICAgICAgIGxldCBleGFtcGxlTnVtYmVyOiBsaWJQaG9uZS5QaG9uZU51bWJlciB8IHVuZGVmaW5lZDtcblxuICAgICAgICBpZiAoIVN0cmluZ1V0aWwuaXNFbXB0eShwaG9uZU51bWJlcikpIHtcbiAgICAgICAgICAgIGNvbnN0IHBhcnNlZE51bWJlciA9IGxpYlBob25lLnBhcnNlUGhvbmVOdW1iZXJGcm9tU3RyaW5nKHBob25lTnVtYmVyLCBjb3VudHJ5KTtcbiAgICAgICAgICAgIGlmIChwYXJzZWROdW1iZXIpIHtcbiAgICAgICAgICAgICAgICBleGFtcGxlTnVtYmVyID0gcGFyc2VkTnVtYmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhhbXBsZU51bWJlciA9IGxpYlBob25lLmdldEV4YW1wbGVOdW1iZXIoY291bnRyeSwgc3RhdGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV4YW1wbGVOdW1iZXIpIHtcbiAgICAgICAgICAgIGNvbnN0IGZvcm1hdHRlZE51bWJlciA9IGV4YW1wbGVOdW1iZXIuZm9ybWF0TmF0aW9uYWwoKTtcbiAgICAgICAgICAgIHJldHVybiBmb3JtYXR0ZWROdW1iZXIucmVwbGFjZSgvXFxkL2csICcwJyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VzdGFkbyBuw6NvIHN1cG9ydGFkbyBvdSBjw7NkaWdvIGRlIGVzdGFkbyBpbnbDoWxpZG8uJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZvcm1hdExpYihwaG9uZU51bWJlcjogc3RyaW5nLCBjb3VudHJ5OiBsaWJQaG9uZS5Db3VudHJ5Q29kZSA9ICdCUicpOiBzdHJpbmcge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VkTnVtYmVyID0gbGliUGhvbmUucGFyc2VQaG9uZU51bWJlckZyb21TdHJpbmcocGhvbmVOdW1iZXIsIGNvdW50cnkpO1xuICAgICAgICAgICAgaWYgKHBhcnNlZE51bWJlcikge1xuICAgICAgICAgICAgICAgIHJldHVybiBwYXJzZWROdW1iZXIuZm9ybWF0TmF0aW9uYWwoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdOw7ptZXJvIGRlIHRlbGVmb25lIGludsOhbGlkby4nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRXJybyBhbyBmb3JtYXRhciBvIG7Dum1lcm8gZGUgdGVsZWZvbmU6ICcgKyBlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZm9ybWF0KG51bWJlcjogc3RyaW5nLCBtYXNrPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IG51bWJlck5vdEZvcm1hdHRlZDogc3RyaW5nID0gTnVtYmVyVXRpbC5vbmx5TnVtYmVycyhudW1iZXIpO1xuICAgICAgICBsZXQgcGhvbmVGb3JtYXR0ZWQ6IHN0cmluZyA9ICcnO1xuXG4gICAgICAgIGlmIChTdHJpbmdVdGlsLmlzRW1wdHkobWFzaykpIHtcbiAgICAgICAgICAgIG1hc2sgPSB0aGlzLm1hc2sobnVtYmVyTm90Rm9ybWF0dGVkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtYXNrID09PSAnMConKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVtYmVyTm90Rm9ybWF0dGVkO1xuICAgICAgICB9XG5cbiAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMCwgajogbnVtYmVyID0gMDsgaSA8IG1hc2subGVuZ3RoICYmIGogPCBudW1iZXJOb3RGb3JtYXR0ZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIHBob25lRm9ybWF0dGVkICs9IG1hc2suY2hhckF0KGkpID09PSAnMCcgPyBudW1iZXJOb3RGb3JtYXR0ZWQuY2hhckF0KGorKykgOiBtYXNrLmNoYXJBdChpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwaG9uZUZvcm1hdHRlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG1hc2socGhvbmU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHNwZWNpYWxQcmVmaXhlczogc3RyaW5nW10gPSBbJzA5MDAnLCAnMDgwMCcsICcwNzAwJywgJzA2MDAnLCAnMDUwMCcsICcwNDAwJywgJzAzMDAnLCAnMDIwMCcsICcwMTAwJ107XG4gICAgICAgIGxldCBwaG9uZUF1eDogc3RyaW5nID0gdGhpcy5yZW1vdmVDaGFyYWN0ZXJzKHBob25lLnJlcGxhY2UoL1xcRC9nLCAnJykpO1xuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIChwaG9uZUF1eC5sZW5ndGggPCA4KSB8fFxuICAgICAgICAgICAgKHBob25lQXV4Lmxlbmd0aCA+IDEyKSB8fFxuICAgICAgICAgICAgKCF0aGlzLmlzUG9zc2libGUocGhvbmVBdXgpICYmICF0aGlzLmlzVmFsaWQocGhvbmVBdXgpKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiAnMConO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZXhpc3RJbkFycmF5OiBib29sZWFuID0gc3BlY2lhbFByZWZpeGVzLnNvbWUocHJlZml4ID0+IHBob25lQXV4LnN0YXJ0c1dpdGgocHJlZml4KSk7XG4gICAgICAgIGlmIChleGlzdEluQXJyYXkpIHtcbiAgICAgICAgICAgIHJldHVybiAnMDAwMCAwMDAgMDAwMCc7IC8vIFBhcmEgbsO6bWVyb3MgZXNwZWNpYWlzIGNvbW8gMDgwMFxuICAgICAgICB9XG5cbiAgICAgICAgc3dpdGNoIChwaG9uZUF1eC5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNhc2UgODogcmV0dXJuICcwMDAwLTAwMDAnO1xuICAgICAgICAgICAgY2FzZSA5OiByZXR1cm4gJzAgMDAwMC0wMDAwJztcbiAgICAgICAgICAgIGNhc2UgMTA6IHJldHVybiAnKDAwKSAwMDAwLTAwMDAnO1xuICAgICAgICAgICAgY2FzZSAxMToge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YXJ0V2l0aFplcm86IGJvb2xlYW4gPSBwaG9uZUF1eC5zdGFydHNXaXRoKCcwJyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgc3RhcnRXaXRoWmVyb1xuICAgICAgICAgICAgICAgICAgICAgICAgPyAnKDAwMCkgMDAwMC0wMDAwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgOiAnKDAwKSAwIDAwMDAtMDAwMCdcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIGNhc2UgMTI6IHJldHVybiAnKDAwMCkgMCAwMDAwLTAwMDAnO1xuICAgICAgICAgICAgZGVmYXVsdDogcmV0dXJuICcwKic7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGlzUG9zc2libGUocGhvbmVOdW1iZXI6IHN0cmluZywgY291bnRyeTogbGliUGhvbmUuQ291bnRyeUNvZGUgPSAnQlInKTogYm9vbGVhbiB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWROdW1iZXIgPSBsaWJQaG9uZS5wYXJzZVBob25lTnVtYmVyRnJvbVN0cmluZyhwaG9uZU51bWJlciwgY291bnRyeSk7XG4gICAgICAgICAgICByZXR1cm4gcGFyc2VkTnVtYmVyID8gcGFyc2VkTnVtYmVyLmlzUG9zc2libGUoKSA6IGZhbHNlO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc1ZhbGlkKHBob25lTnVtYmVyOiBzdHJpbmcsIGNvdW50cnk6IGxpYlBob25lLkNvdW50cnlDb2RlID0gJ0JSJyk6IGJvb2xlYW4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VkTnVtYmVyID0gbGliUGhvbmUucGFyc2VQaG9uZU51bWJlckZyb21TdHJpbmcocGhvbmVOdW1iZXIsIGNvdW50cnkpO1xuICAgICAgICAgICAgcmV0dXJuIHBhcnNlZE51bWJlciA/IHBhcnNlZE51bWJlci5pc1ZhbGlkKCkgOiBmYWxzZTtcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0VHlwZShwaG9uZU51bWJlcjogc3RyaW5nLCBjb3VudHJ5OiBsaWJQaG9uZS5Db3VudHJ5Q29kZSA9ICdCUicpOiBsaWJQaG9uZS5OdW1iZXJUeXBlIHwgbnVsbCB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWROdW1iZXIgPSBsaWJQaG9uZS5wYXJzZVBob25lTnVtYmVyRnJvbVN0cmluZyhwaG9uZU51bWJlciwgY291bnRyeSk7XG4gICAgICAgICAgICByZXR1cm4gcGFyc2VkTnVtYmVyID8gcGFyc2VkTnVtYmVyLmdldFR5cGUoKSA6IG51bGw7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaXNFcXVhbChwaG9uZU51bWJlcjE6IHN0cmluZywgcGhvbmVOdW1iZXIyOiBzdHJpbmcsIGNvdW50cnk6IGxpYlBob25lLkNvdW50cnlDb2RlID0gJ0JSJyk6IGJvb2xlYW4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgcGFyc2VkTnVtYmVyMSA9IGxpYlBob25lLnBhcnNlUGhvbmVOdW1iZXJGcm9tU3RyaW5nKHBob25lTnVtYmVyMSwgY291bnRyeSk7XG4gICAgICAgICAgICBjb25zdCBwYXJzZWROdW1iZXIyID0gbGliUGhvbmUucGFyc2VQaG9uZU51bWJlckZyb21TdHJpbmcocGhvbmVOdW1iZXIyLCBjb3VudHJ5KTtcbiAgICAgICAgICAgIGlmIChwYXJzZWROdW1iZXIxICYmIHBhcnNlZE51bWJlcjIpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcGFyc2VkTnVtYmVyMS5pc0VxdWFsKHBhcnNlZE51bWJlcjIpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiJdfQ==
|
package/esm5/gipi-components.js
CHANGED
@@ -17,6 +17,7 @@ export * from './shared/gipi-components/infinite-scroll/infinite-scroll.directiv
|
|
17
17
|
export * from './shared/gipi-components/input-checkbox/input-checkbox.component';
|
18
18
|
export * from './shared/gipi-components/input-currency/input-currency.component';
|
19
19
|
export * from './shared/gipi-components/input-monthpicker/input-monthpicker.component';
|
20
|
+
export * from './shared/gipi-components/input-phone/input-phone.component';
|
20
21
|
export * from './shared/gipi-components/input-select-enum/input-select-enum.component';
|
21
22
|
export * from './shared/gipi-components/input-select-listbox/input-select-listbox.component';
|
22
23
|
export * from './shared/gipi-components/input-select-paged/input-search/input-search.component';
|
@@ -115,4 +116,4 @@ export * from './shared/gipi-components/datepicker/date-range-picker/shared/pres
|
|
115
116
|
export * from './shared/gipi-components/month-year-picker/calendar-month-year/calendar-month-year.component';
|
116
117
|
export * from './shared/gipi-components/month-year-picker/mont-year-picker.module';
|
117
118
|
export * from './shared/gipi-components/month-year-picker/month-year-picker.component';
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lwaS1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdpcGlzaXN0ZW1hcy9uZy1jb3JlLyIsInNvdXJjZXMiOlsiZ2lwaS1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDRFQUE0RSxDQUFDO0FBQzNGLGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLDBFQUEwRSxDQUFDO0FBQ3pGLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsb0VBQW9FLENBQUM7QUFDbkYsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsd0VBQXdFLENBQUM7QUFDdkYsY0FBYyx3RUFBd0UsQ0FBQztBQUN2RixjQUFjLDhFQUE4RSxDQUFDO0FBQzdGLGNBQWMsaUZBQWlGLENBQUM7QUFDaEcsY0FBYywwRUFBMEUsQ0FBQztBQUN6RixjQUFjLDBFQUEwRSxDQUFDO0FBQ3pGLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsd0RBQXdELENBQUM7QUFDdkUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHlEQUF5RCxDQUFDO0FB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QUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0VBQW9FLENBQUM7QUFDakksY0FBYyw4REFBOEQsQ0FBQztBQUU3RSxtR0FBbUc7QUFDbkcsbUdBQW1HO0FBQ25HLDBHQUEwRztBQUMxRywwR0FBMEc7QUFDMUcsNEZBQTRGO0FBRTVGLGNBQWMsbUZBQW1GLENBQUM7QUFDbEcsY0FBYyxxR0FBcUcsQ0FBQztBQUNwSCxjQUFjLDRGQUE0RixDQUFDO0FBQzNHLGNBQWMsa0dBQWtHLENBQUM7QUFFakgsY0FBYyw4RkFBOEYsQ0FBQztBQUM3RyxjQUFjLG9FQUFvRSxDQUFDO0FBQ25GLGNBQWMsd0VBQXdFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvYWJzdHJhY3QtZm9ybS9hYnN0cmFjdC1mb3JtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvYWN0aW9uLXJvdy9hY3Rpb24tcm93LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvYmFkZ2UvYmFkZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvY2FyZC9jYXJkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZG9tL2Nvbm5lY3RlZC1vdmVybGF5LXNjcm9sbC1oYW5kbGVyJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kb20vZG9tLWhhbmRsZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUvZHJvcGRvd24tbWVudS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2VtcHR5LXN0YXRlL2VtcHR5LXN0YXRlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZXhwYW5zaW9uLXBhbmVsL2V4cGFuc2lvbi1wYW5lbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2ZpbGUtZHJhZy1hbmQtZHJvcC9maWxlLWRyYWctYW5kLWRyb3AuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZm9ybS1maWVsZC9mb3JtLWZpZWxkLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvaGVscGZ1bC10aXAvaGVscGZ1bC10aXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbmZpbml0ZS1zY3JvbGwvaW5maW5pdGUtc2Nyb2xsLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvaW5wdXQtY2hlY2tib3gvaW5wdXQtY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1jdXJyZW5jeS9pbnB1dC1jdXJyZW5jeS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2lucHV0LW1vbnRocGlja2VyL2lucHV0LW1vbnRocGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvaW5wdXQtc2VsZWN0LWVudW0vaW5wdXQtc2VsZWN0LWVudW0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtbGlzdGJveC9pbnB1dC1zZWxlY3QtbGlzdGJveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1wYWdlZC9pbnB1dC1zZWFyY2gvaW5wdXQtc2VhcmNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvaW5wdXQtc2VsZWN0LXBhZ2VkL2lucHV0LXNlbGVjdC1wYWdlZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1yYWRpby9pbnB1dC1zZWxlY3QtcmFkaW8uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QvaW5wdXQtc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvbGF5b3V0LWdyaWQvY29sLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvbGF5b3V0LWdyaWQvcm93LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvbGF5b3V0LWdyaWQvc2VydmljZXMvYnJlYWtwb2ludC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9sYXlvdXQtZ3JpZC9zZXJ2aWNlcy9yZXNpemUuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL25vdmVsdGllcy9ub3ZlbHRpZXMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9vdmVybGF5L3NoYXJlZC9vdmVybGF5LXNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL292ZXJsYXkvc2hhcmVkL292ZXJsYXlfb3B0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvcGFzc3dvcmQtcmVxdWVyaW1lbnRzL3Bhc3N3b3JkLXJlcXVlcmltZW50cy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItYW5pbWF0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci1pbnRlcmZhY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9wb3BvdmVyL3NoYXJlZC9wb3BvdmVyLXRhcmdldCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10cmlnZ2VyJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9yYWRpby1ncm91cC9yYWRpby1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3JhbmdlLXBhZ2UvcmFuZ2UtcGFnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3JhbmdlLXNsaWRlci9yYW5nZS1zbGlkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9zZWxlY3QtYnV0dG9uL3NlbGVjdC1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9zZWxlY3Qvc2VsZWN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvc2lkZWJhci9jb250YWluZXIvY29udGFpbmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvc2lkZWJhci9zaWRlbmF2L3NpZGVuYXYuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9zbGlkZS10b2dnbGUvc2xpZGUtdG9nZ2xlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvc3BsaXQtYnV0dG9uL3NwbGl0LWJ1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RlbXBsYXRlL3RlbXBsYXRlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGV4dGFyZWEvdGV4dGFyZWEuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90b29sYmFyL3Rvb2xiYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90b3AtbmF2L3RvcC1uYXYuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy91c2VyLXByb2ZpbGUvdXNlci1wcm9maWxlLmNvbXBvbmVudCc7XG5cbi8vIFNla2VsZXRvblxuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3NrZWxldG9uL3NrZWxldG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvc2tlbGV0b24vc2tlbGV0b24uZGlyZWN0aXZlJztcblxuLy8gVGFic1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYnMvc2hhcmVkL2R5bmFtaWMtdGFiLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFicy9zaGFyZWQvdGFiLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJzL3RhYi1ncm91cC90YWItZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJzL3RhYi90YWIuY29tcG9uZW50JztcblxuLy8gVGFibGVcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLWJvZHkvdGFibGUtYm9keS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtZm9vdGVyL3RhYmxlLWZvb3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtaGVhZGVyL3RhYmxlLWhlYWRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi9zaGFyZWQvcGFnaW5hdGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1wYWdpbmF0aW9uL3NoYXJlZC9wYWdpbmF0aW9uLWNvbnRyb2xzLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1wYWdpbmF0aW9uL3NoYXJlZC9wYWdpbmF0aW9uLWluc3RhbmNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLXBhZ2luYXRpb24vc2hhcmVkL3BhZ2luYXRpb24uc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1wYWdpbmF0aW9uL3RhYmxlLXBhZ2luYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLXByb2dyZXNzLWJhci90YWJsZS1wcm9ncmVzcy1iYXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9tb2RlbHMvcGlwZS10cmFuc2Zvcm0ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL21vZGVscy9zb3J0Lm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9tb2RlbHMvc29ydGVkLWNvbHVtbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvbW9kZWxzL3RhYmxlLWNvbHVtbi1idWlsZGVyLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9tb2RlbHMvdGFibGUtY29sdW1uLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS90YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL3R5cGVzL3NvcnQtZGlyZWN0aW9uLnR5cGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL3R5cGVzL3NvcnQudHlwZSc7XG5cbi8vIERhdGVwaWNrZXJcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9hZGFwdGVyL2RhdGUtYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvYWRhcHRlci9kYXRlLWZvcm1hdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvc2hhcmVkL2FkYXB0ZXIvbmF0aXZlLWRhdGUtYWRhcHRlcic7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvYWRhcHRlci9uYXRpdmUtZGF0ZS1mb3JtYXRzJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9hZGFwdGVyL3BsYXRmb3JtJztcblxuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvY2FsZW5kYXInO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvY2FsZW5kYXItYm9keSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlLXJhbmdlLWlucHV0JztcbmV4cG9ydCB7IE1hdEVuZERhdGUsIE1hdFN0YXJ0RGF0ZSB9IGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGUtcmFuZ2UtaW5wdXQtcGFydHMnO1xuZXhwb3J0IHsgTWF0RGF0ZVJhbmdlUGlja2VyIH0gZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvZGF0ZS1yYW5nZS1waWNrZXInO1xuZXhwb3J0IHsgRGVmYXVsdE1hdENhbGVuZGFyUmFuZ2VTdHJhdGVneSwgTUFUX0RBVEVfUkFOR0VfU0VMRUNUSU9OX1NUUkFURUdZLCBNYXREYXRlUmFuZ2VTZWxlY3Rpb25TdHJhdGVneSB9IGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGUtcmFuZ2Utc2VsZWN0aW9uLXN0cmF0ZWd5JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGUtc2VsZWN0aW9uLW1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGVwaWNrZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvZGF0ZXBpY2tlci1hbmltYXRpb25zJztcbmV4cG9ydCB7IERhdGVwaWNrZXJEcm9wZG93blBvc2l0aW9uWCwgRGF0ZXBpY2tlckRyb3Bkb3duUG9zaXRpb25ZLCBNQVRfREFURVBJQ0tFUl9TQ1JPTExfU1RSQVRFR1ksIE1BVF9EQVRFUElDS0VSX1NDUk9MTF9TVFJBVEVHWV9GQUNUT1JZLCBNQVRfREFURVBJQ0tFUl9TQ1JPTExfU1RSQVRFR1lfRkFDVE9SWV9QUk9WSURFUiwgTWF0RGF0ZXBpY2tlckNvbnRlbnQgfSBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlcGlja2VyLWJhc2UnO1xuZXhwb3J0IHsgTUFUX0RBVEVQSUNLRVJfVkFMSURBVE9SUywgTUFUX0RBVEVQSUNLRVJfVkFMVUVfQUNDRVNTT1IsIE1hdERhdGVwaWNrZXJJbnB1dCB9IGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGVwaWNrZXItaW5wdXQnO1xuZXhwb3J0IHsgRGF0ZUZpbHRlckZuLCBNYXREYXRlcGlja2VySW5wdXRFdmVudCB9IGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGVwaWNrZXItaW5wdXQtYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlcGlja2VyLWludGwnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvZGF0ZXBpY2tlci10b2dnbGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvbW9udGgtdmlldyc7XG5leHBvcnQgeyBNYXRNdWx0aVllYXJWaWV3LCB5ZWFyc1BlclBhZ2UsIHllYXJzUGVyUm93IH0gZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvbXVsdGkteWVhci12aWV3JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3llYXItdmlldyc7XG5cbi8vIGV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9kYXRldGltZS9kYXRlLWFkYXB0ZXInO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvc2hhcmVkL2RhdGV0aW1lL2RhdGUtZm9ybWF0cyc7XG4vLyBleHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvZGF0ZXRpbWUvbmF0aXZlLWRhdGUtYWRhcHRlcic7XG4vLyBleHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvZGF0ZXRpbWUvbmF0aXZlLWRhdGUtZm9ybWF0cyc7XG4vLyBleHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvZGF0ZXRpbWUvaW5kZXgnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIvc2hhcmVkL21heC1yYW5nZS9tYXgtcmFuZ2Utc2VsZWN0aW9uLXN0YXJ0ZWd5JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyL3NoYXJlZC9tYXgtcmFuZ2UvbWF4LXJhbmdlLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci9zaGFyZWQvcHJlc2V0LXJhbmdlL3ByZXNldC1yYW5nZS5jb21wb25lbnQnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvbW9udGgteWVhci1waWNrZXIvY2FsZW5kYXItbW9udGgteWVhci9jYWxlbmRhci1tb250aC15ZWFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvbW9udGgteWVhci1waWNrZXIvbW9udC15ZWFyLXBpY2tlci5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL21vbnRoLXllYXItcGlja2VyL21vbnRoLXllYXItcGlja2VyLmNvbXBvbmVudCc7XG5cbiJdfQ==
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2lwaS1jb21wb25lbnRzLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGdpcGlzaXN0ZW1hcy9uZy1jb3JlLyIsInNvdXJjZXMiOlsiZ2lwaS1jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0VBQWdFLENBQUM7QUFDL0UsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDRFQUE0RSxDQUFDO0FBQzNGLGNBQWMsK0RBQStELENBQUM7QUFDOUUsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyxvRUFBb0UsQ0FBQztBQUNuRixjQUFjLDBFQUEwRSxDQUFDO0FBQ3pGLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYywwREFBMEQsQ0FBQztBQUN6RSxjQUFjLDREQUE0RCxDQUFDO0FBQzNFLGNBQWMsb0VBQW9FLENBQUM7QUFDbkYsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLGtFQUFrRSxDQUFDO0FBQ2pGLGNBQWMsd0VBQXdFLENBQUM7QUFDdkYsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLHdFQUF3RSxDQUFDO0FBQ3ZGLGNBQWMsOEVBQThFLENBQUM7QUFDN0YsY0FBYyxpRkFBaUYsQ0FBQztBQUNoRyxjQUFjLDBFQUEwRSxDQUFDO0FBQ3pGLGNBQWMsMEVBQTBFLENBQUM7QUFDekYsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxrRUFBa0UsQ0FBQztBQUNqRixjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsOERBQThELENBQUM7QUFDN0UsY0FBYyx3REFBd0QsQ0FBQztBQUN2RSxjQUFjLG9EQUFvRCxDQUFDO0FB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T0FBTyxFQUFFLGdCQUFnQixFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsTUFBTSxvRUFBb0UsQ0FBQztBQUNqSSxjQUFjLDhEQUE4RCxDQUFDO0FBRTdFLG1HQUFtRztBQUNuRyxtR0FBbUc7QUFDbkcsMEdBQTBHO0FBQzFHLDBHQUEwRztBQUMxRyw0RkFBNEY7QUFFNUYsY0FBYyxtRkFBbUYsQ0FBQztBQUNsRyxjQUFjLHFHQUFxRyxDQUFDO0FBQ3BILGNBQWMsNEZBQTRGLENBQUM7QUFDM0csY0FBYyxrR0FBa0csQ0FBQztBQUVqSCxjQUFjLDhGQUE4RixDQUFDO0FBQzdHLGNBQWMsb0VBQW9FLENBQUM7QUFDbkYsY0FBYyx3RUFBd0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9hYnN0cmFjdC1mb3JtL2Fic3RyYWN0LWZvcm0uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9hY3Rpb24tcm93L2FjdGlvbi1yb3cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9iYWRnZS9iYWRnZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9jYXJkL2NhcmQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kb20vY29ubmVjdGVkLW92ZXJsYXktc2Nyb2xsLWhhbmRsZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RvbS9kb20taGFuZGxlcic7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZHJvcGRvd24tbWVudS9kcm9wZG93bi1tZW51LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZW1wdHktc3RhdGUvZW1wdHktc3RhdGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9leHBhbnNpb24tcGFuZWwvZXhwYW5zaW9uLXBhbmVsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZmlsZS1kcmFnLWFuZC1kcm9wL2ZpbGUtZHJhZy1hbmQtZHJvcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2Zvb3Rlci9mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9oZWxwZnVsLXRpcC9oZWxwZnVsLXRpcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2luZmluaXRlLXNjcm9sbC9pbmZpbml0ZS1zY3JvbGwuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1jaGVja2JveC9pbnB1dC1jaGVja2JveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2lucHV0LWN1cnJlbmN5L2lucHV0LWN1cnJlbmN5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvaW5wdXQtbW9udGhwaWNrZXIvaW5wdXQtbW9udGhwaWNrZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1waG9uZS9pbnB1dC1waG9uZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1lbnVtL2lucHV0LXNlbGVjdC1lbnVtLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvaW5wdXQtc2VsZWN0LWxpc3Rib3gvaW5wdXQtc2VsZWN0LWxpc3Rib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtcGFnZWQvaW5wdXQtc2VhcmNoL2lucHV0LXNlYXJjaC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2lucHV0LXNlbGVjdC1wYWdlZC9pbnB1dC1zZWxlY3QtcGFnZWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9pbnB1dC1zZWxlY3QtcmFkaW8vaW5wdXQtc2VsZWN0LXJhZGlvLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvaW5wdXQtc2VsZWN0L2lucHV0LXNlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL2NvbC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3Jvdy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2xheW91dC1ncmlkL3NlcnZpY2VzL2JyZWFrcG9pbnQuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvbGF5b3V0LWdyaWQvc2VydmljZXMvcmVzaXplLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL25vdGlmaWNhdGlvbi9ub3RpZmljYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9ub3ZlbHRpZXMvbm92ZWx0aWVzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvb3ZlcmxheS9vdmVybGF5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvb3ZlcmxheS9zaGFyZWQvb3ZlcmxheS1zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9vdmVybGF5L3NoYXJlZC9vdmVybGF5X29wdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3Bhc3N3b3JkLXJlcXVlcmltZW50cy9wYXNzd29yZC1yZXF1ZXJpbWVudHMuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9wb3BvdmVyL3NoYXJlZC9wb3BvdmVyLWFuaW1hdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItaW50ZXJmYWNlcyc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvcG9wb3Zlci9zaGFyZWQvcG9wb3Zlci10YXJnZXQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3BvcG92ZXIvc2hhcmVkL3BvcG92ZXItdHJpZ2dlcic7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvcmFkaW8tZ3JvdXAvcmFkaW8tZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9yYW5nZS1wYWdlL3JhbmdlLXBhZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9yYW5nZS1zbGlkZXIvcmFuZ2Utc2xpZGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvc2VsZWN0LWJ1dHRvbi9zZWxlY3QtYnV0dG9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3NpZGViYXIvY29udGFpbmVyL2NvbnRhaW5lci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3NpZGViYXIvc2lkZW5hdi9zaWRlbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvc2xpZGUtdG9nZ2xlL3NsaWRlLXRvZ2dsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3NwbGl0LWJ1dHRvbi9zcGxpdC1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90ZW1wbGF0ZS90ZW1wbGF0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RleHRhcmVhL3RleHRhcmVhLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdG9vbGJhci90b29sYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdG9wLW5hdi90b3AtbmF2LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdXNlci1wcm9maWxlL3VzZXItcHJvZmlsZS5jb21wb25lbnQnO1xuXG4vLyBTZWtlbGV0b25cbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9za2VsZXRvbi9za2VsZXRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3NrZWxldG9uL3NrZWxldG9uLmRpcmVjdGl2ZSc7XG5cbi8vIFRhYnNcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJzL3NoYXJlZC9keW5hbWljLXRhYi5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYnMvc2hhcmVkL3RhYi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFicy90YWItZ3JvdXAvdGFiLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFicy90YWIvdGFiLmNvbXBvbmVudCc7XG5cbi8vIFRhYmxlXG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1ib2R5L3RhYmxlLWJvZHkuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLWZvb3Rlci90YWJsZS1mb290ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLWhlYWRlci90YWJsZS1oZWFkZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9jb21wb25lbnRzL3RhYmxlLXBhZ2luYXRpb24vc2hhcmVkL3BhZ2luYXRlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi9zaGFyZWQvcGFnaW5hdGlvbi1jb250cm9scy5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi9zaGFyZWQvcGFnaW5hdGlvbi1pbnN0YW5jZSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1wYWdpbmF0aW9uL3NoYXJlZC9wYWdpbmF0aW9uLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL2NvbXBvbmVudHMvdGFibGUtcGFnaW5hdGlvbi90YWJsZS1wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvY29tcG9uZW50cy90YWJsZS1wcm9ncmVzcy1iYXIvdGFibGUtcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvbW9kZWxzL3BpcGUtdHJhbnNmb3JtLm1vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS9tb2RlbHMvc29ydC5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvbW9kZWxzL3NvcnRlZC1jb2x1bW4ubW9kZWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL3RhYmxlL21vZGVscy90YWJsZS1jb2x1bW4tYnVpbGRlci5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvbW9kZWxzL3RhYmxlLWNvbHVtbi5tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvdGFibGUvdGFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS90eXBlcy9zb3J0LWRpcmVjdGlvbi50eXBlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy90YWJsZS90eXBlcy9zb3J0LnR5cGUnO1xuXG4vLyBEYXRlcGlja2VyXG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvYWRhcHRlci9kYXRlLWFkYXB0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvc2hhcmVkL2FkYXB0ZXIvZGF0ZS1mb3JtYXRzJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9hZGFwdGVyL25hdGl2ZS1kYXRlLWFkYXB0ZXInO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvc2hhcmVkL2FkYXB0ZXIvbmF0aXZlLWRhdGUtZm9ybWF0cyc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvYWRhcHRlci9wbGF0Zm9ybSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL2RhdGVwaWNrZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2NhbGVuZGFyJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2NhbGVuZGFyLWJvZHknO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvZGF0ZS1yYW5nZS1pbnB1dCc7XG5leHBvcnQgeyBNYXRFbmREYXRlLCBNYXRTdGFydERhdGUgfSBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlLXJhbmdlLWlucHV0LXBhcnRzJztcbmV4cG9ydCB7IE1hdERhdGVSYW5nZVBpY2tlciB9IGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyJztcbmV4cG9ydCB7IERlZmF1bHRNYXRDYWxlbmRhclJhbmdlU3RyYXRlZ3ksIE1BVF9EQVRFX1JBTkdFX1NFTEVDVElPTl9TVFJBVEVHWSwgTWF0RGF0ZVJhbmdlU2VsZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlLXJhbmdlLXNlbGVjdGlvbi1zdHJhdGVneSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlLXNlbGVjdGlvbi1tb2RlbCc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlcGlja2VyJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGVwaWNrZXItYW5pbWF0aW9ucyc7XG5leHBvcnQgeyBEYXRlcGlja2VyRHJvcGRvd25Qb3NpdGlvblgsIERhdGVwaWNrZXJEcm9wZG93blBvc2l0aW9uWSwgTUFUX0RBVEVQSUNLRVJfU0NST0xMX1NUUkFURUdZLCBNQVRfREFURVBJQ0tFUl9TQ1JPTExfU1RSQVRFR1lfRkFDVE9SWSwgTUFUX0RBVEVQSUNLRVJfU0NST0xMX1NUUkFURUdZX0ZBQ1RPUllfUFJPVklERVIsIE1hdERhdGVwaWNrZXJDb250ZW50IH0gZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvZGF0ZXBpY2tlci1iYXNlJztcbmV4cG9ydCB7IE1BVF9EQVRFUElDS0VSX1ZBTElEQVRPUlMsIE1BVF9EQVRFUElDS0VSX1ZBTFVFX0FDQ0VTU09SLCBNYXREYXRlcGlja2VySW5wdXQgfSBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlcGlja2VyLWlucHV0JztcbmV4cG9ydCB7IERhdGVGaWx0ZXJGbiwgTWF0RGF0ZXBpY2tlcklucHV0RXZlbnQgfSBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9kYXRlcGlja2VyLWlucHV0LWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvZGF0ZXBpY2tlci1pbnRsJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL2RhdGVwaWNrZXItdG9nZ2xlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL21vbnRoLXZpZXcnO1xuZXhwb3J0IHsgTWF0TXVsdGlZZWFyVmlldywgeWVhcnNQZXJQYWdlLCB5ZWFyc1BlclJvdyB9IGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL211bHRpLXllYXItdmlldyc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci95ZWFyLXZpZXcnO1xuXG4vLyBleHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9tYXQtZGF0ZXBpY2tlci9zaGFyZWQvZGF0ZXRpbWUvZGF0ZS1hZGFwdGVyJztcbi8vIGV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL21hdC1kYXRlcGlja2VyL3NoYXJlZC9kYXRldGltZS9kYXRlLWZvcm1hdHMnO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvc2hhcmVkL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWFkYXB0ZXInO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvc2hhcmVkL2RhdGV0aW1lL25hdGl2ZS1kYXRlLWZvcm1hdHMnO1xuLy8gZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvbWF0LWRhdGVwaWNrZXIvc2hhcmVkL2RhdGV0aW1lL2luZGV4JztcblxuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9kYXRlcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyL3NoYXJlZC9tYXgtcmFuZ2UvbWF4LXJhbmdlLXNlbGVjdGlvbi1zdGFydGVneSc7XG5leHBvcnQgKiBmcm9tICcuL3NoYXJlZC9naXBpLWNvbXBvbmVudHMvZGF0ZXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci9zaGFyZWQvbWF4LXJhbmdlL21heC1yYW5nZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL2RhdGVwaWNrZXIvZGF0ZS1yYW5nZS1waWNrZXIvc2hhcmVkL3ByZXNldC1yYW5nZS9wcmVzZXQtcmFuZ2UuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL21vbnRoLXllYXItcGlja2VyL2NhbGVuZGFyLW1vbnRoLXllYXIvY2FsZW5kYXItbW9udGgteWVhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zaGFyZWQvZ2lwaS1jb21wb25lbnRzL21vbnRoLXllYXItcGlja2VyL21vbnQteWVhci1waWNrZXIubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc2hhcmVkL2dpcGktY29tcG9uZW50cy9tb250aC15ZWFyLXBpY2tlci9tb250aC15ZWFyLXBpY2tlci5jb21wb25lbnQnO1xuXG4iXX0=
|