vcomply-workflow-engine 3.7.7 → 3.7.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -193,6 +193,8 @@ export class LogIssueService {
193
193
  }
194
194
  payloadBuilder(issueData, optionFieldsStatus) {
195
195
  const isMoment = moment.isMoment(issueData.issueDueDate);
196
+ console.log('payload builder issueData ==>', issueData);
197
+ debugger;
196
198
  const selectedDate = isMoment
197
199
  ? moment(issueData.issueDueDate)?.toDate()
198
200
  : new Date(issueData.issueDueDate);
@@ -355,4 +357,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
355
357
  }], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.AuthService }, { type: i3.Configurations, decorators: [{
356
358
  type: Optional
357
359
  }] }]; } });
358
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWlzc3VlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1zZXJ2aWNlcy9sb2ctaXNzdWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFJbkMsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFLekUsTUFBTSxPQUFPLGVBQWU7SUFFMUIsWUFDVSxJQUFnQixFQUNoQixXQUF3QixFQUNwQixNQUF1QjtRQUYzQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBa1ZsQyw0QkFBdUIsR0FBRyxDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQ3hDLElBQUksTUFBTSxFQUFFO2dCQUNWLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxHQUFHLE1BQU07cUJBQ3JDLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQztxQkFDOUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNaLE1BQU0sRUFBRSxHQUFHLE1BQU0sS0FBSyxJQUFJLENBQUM7Z0JBQzNCLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBRTdDLE9BQU8sR0FBRyxDQUFDLEdBQUcsR0FB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TSxhQUFhLEdBQUcsR0FBRyxHQUFHLElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ2hELE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7K0dBaGFVLGVBQWU7bUhBQWYsZUFBZSxjQUZkLE1BQU07OzRGQUVQLGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFNSSxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IG1hcCwgcmV0cnkgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50L21vbWVudCc7XHJcblxyXG5pbXBvcnQgeyBDb25maWd1cmF0aW9ucyB9IGZyb20gJy4uL2NvbmZpZ3VyYXRpb25zJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IERFRkFVTFRfMjRIUiwgREVGQVVMVF9USU1FIH0gZnJvbSAnLi4vY29uc3RhbnRzL3RpbWUuY29uc3RhbnRzJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dJc3N1ZVNlcnZpY2Uge1xyXG4gIGVudiE6IGFueTtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgQE9wdGlvbmFsKCkgY29uZmlnPzogQ29uZmlndXJhdGlvbnNcclxuICApIHtcclxuICAgIGlmIChjb25maWcpIHtcclxuICAgICAgdGhpcy5lbnYgPSBjb25maWcuZW52Q29uZmlnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0SXNzdWVUeXBlcygpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXHJcbiAgICAgICd0b2tlbicsXHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcclxuICAgICk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55W10+KHRoaXMuZW52Lm9yZ2FuaXphdGlvbkdldCArICdpc3N1ZVR5cGVMaXN0JywgeyBoZWFkZXJzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldE9yZ1Blb3BsZSgpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXHJcbiAgICAgICd0b2tlbicsXHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcclxuICAgICk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55W10+KHRoaXMuZW52Lm9yZ2FuaXphdGlvbkdldCArICdwZW9wbGUnLCB7IGhlYWRlcnMgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXNzdWVDYXRlZ29yaWVzKCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnlbXT4oXHJcbiAgICAgICAgdGhpcy5lbnYuYXNzdXJhbmNlICsgJ0lzc3VlL0NhdGVnb3J5L0NhdExpc3Q/Y2F0ZWdvcmllcz10cnVlJyxcclxuICAgICAgICB7IGhlYWRlcnMgfVxyXG4gICAgICApXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICAgIC8vaHR0cHM6Ly9kZXZhcGkudi1jb21wbHkuY29tL0Fzc3VyYW5jZS9Jc3N1ZS9DYXRlZ29yeS9DYXRMaXN0LzE/aXNCdXNpbmVzc0N5Y2xlPXRydWUmY2F0ZWdvcmllcz10cnVlXHJcbiAgfVxyXG4gIGdldFJlc3BvbnNpYmlsaXR5Q2VudGVyTGlzdCgpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXHJcbiAgICAgICd0b2tlbicsXHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcclxuICAgICk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5nZXQ8YW55W10+KHRoaXMuZW52LmNvbXBsaWFuY2VHZXQgKyAncmVzcG9uc2liaWxpdHlDZW50ZXJUcmVlJywge1xyXG4gICAgICAgIGhlYWRlcnMsXHJcbiAgICAgIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcbiAgY3JlYXRlSXNzdWUocGF5bG9hZDogYW55KSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxyXG4gICAgICAndG9rZW4nLFxyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXHJcbiAgICApO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucG9zdCh0aGlzLmVudi5hc3N1cmFuY2UgKyAnSXNzdWUnLCBwYXlsb2FkLCB7IGhlYWRlcnMgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuICB1cGRhdGVJc3N1ZShwYXlsb2FkOiBhbnksIGlzc3VlSWQ6IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLnB1dCh0aGlzLmVudi5hc3N1cmFuY2UgKyAnSXNzdWUvJyArIGlzc3VlSWQsIHBheWxvYWQsIHsgaGVhZGVycyB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRDb250cm9sUmlzayhhdWRpdFBsYW5JZDogc3RyaW5nLCB0eXBlOiBzdHJpbmcpIHtcclxuICAgIC8vICAgICBHZXQgTGlua2VkIEF1ZGl0IFBsYW4gUmVzcG9uc2liaWxpdGllcyBieSBBdWRpdF9QbGFuX0lkXHJcbiAgICAvLyBVUkw6IGh0dHBzOi8vZGV2YXBpLnYtY29tcGx5LmNvbS9yZXNwb25zaWJpbGl0aWVzLz9tb2RlPW1hbmFnZV9hdWRpdF9wbGFuX3Jlc3BvbnNpYmlsaXRpZXMmaWQ9NjEwYjMyOTE0NGM4MWEwMDA5Y2JiNTk4IE1ldGhvZDogR0VUXHJcblxyXG4gICAgLy8gR2V0IExpbmtlZCBBdWRpdCBQbGFuIFJpc2sgYnkgQXVkaXRfUGxhbl9JZFxyXG4gICAgLy8gVVJMOiBodHRwczovL2RldmFwaS52LWNvbXBseS5jb20vcmlzay8/bW9kZT1yaXNrL21hbmFnZV9hdWRpdF9wbGFuX3Jpc2smaWQ9NjEwYjMyOTE0NGM4MWEwMDA5Y2JiNTk4XHJcbiAgICAvLyBNZXRob2Q6IEdFVFxyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIGlmICh0eXBlID09PSAnUkVTUE9OU0lCSUxJVFknKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAuZ2V0PGFueVtdPihcclxuICAgICAgICAgIHRoaXMuZW52LnJlc3BvbnNpYmlsaXRpZXNHZXQgK1xyXG4gICAgICAgICAgICAnbWFuYWdlX2F1ZGl0X3BsYW5fcmVzcG9uc2liaWxpdGllcyZpZD0nICtcclxuICAgICAgICAgICAgYXVkaXRQbGFuSWQsXHJcbiAgICAgICAgICB7IGhlYWRlcnMgfVxyXG4gICAgICAgIClcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIG1hcCgoaXRlbXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gaXRlbXMubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgICAgICAgICAgaXRlbUlkOiBpdGVtPy5yZXBvcnRfaWQsXHJcbiAgICAgICAgICAgICAgaXRlbUNvbnRyb2xJZDogaXRlbT8uY29udHJvbF9pZCxcclxuICAgICAgICAgICAgICBpdGVtQ29udHJvbE5hbWU6IGl0ZW0/LnJlcG9ydF9uYW1lLFxyXG4gICAgICAgICAgICAgIGl0ZW1UeXBlOiAnUkVTUE9OU0lCSUxJVFknLFxyXG4gICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICdSSVNLJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgICAgLmdldDxhbnlbXT4oXHJcbiAgICAgICAgICB0aGlzLmVudi5yaXNrICsgJ3Jpc2svbWFuYWdlX2F1ZGl0X3BsYW5fcmlzayZpZD0nICsgYXVkaXRQbGFuSWQsXHJcbiAgICAgICAgICB7IGhlYWRlcnMgfVxyXG4gICAgICAgIClcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIG1hcCgoaXRlbXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICByZXR1cm4gaXRlbXMubWFwKChpdGVtOiBhbnkpID0+ICh7XHJcbiAgICAgICAgICAgICAgaXRlbUlkOiBpdGVtPy5yaXNrX2lkLFxyXG4gICAgICAgICAgICAgIGl0ZW1Db250cm9sSWQ6IGl0ZW0/LnJpc2tfY29udHJvbF9pZCxcclxuICAgICAgICAgICAgICBpdGVtQ29udHJvbE5hbWU6IGl0ZW0/LnRpdGxlLFxyXG4gICAgICAgICAgICAgIGl0ZW1UeXBlOiAnUklTSycsXHJcbiAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdmFsaWRhdGUoaXNzdWVEYXRhOiBhbnksIG9wZW5lZEZyb206IGFueSwgaXNSQ01hbmRhdG9yeTogYW55KSB7XHJcbiAgICBjb25zdCBlcnJvcnMgPSBbXTtcclxuICAgIGlmICghaXNzdWVEYXRhLmlzc3VlTmFtZSB8fCBpc3N1ZURhdGEuaXNzdWVOYW1lLnRyaW0oKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgZXJyb3JzLnB1c2goJ2lzc3VlTmFtZScpO1xyXG4gICAgfVxyXG4gICAgaWYgKGlzc3VlRGF0YS5pc3N1ZVJDLmxlbmd0aCA9PT0gMCAmJiBpc1JDTWFuZGF0b3J5KSB7XHJcbiAgICAgIGVycm9ycy5wdXNoKCdpc3N1ZVJDJyk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNzdWVEYXRhLmVudHJ1c3RUby5sZW5ndGggPT09IDApIHtcclxuICAgICAgZXJyb3JzLnB1c2goJ2VudHJ1c3RUbycpO1xyXG4gICAgfVxyXG4gICAgaWYgKCFpc3N1ZURhdGEuaXNzdWVEdWVEYXRlKSB7XHJcbiAgICAgIGVycm9ycy5wdXNoKCdpc3N1ZUR1ZURhdGUnKTtcclxuICAgIH1cclxuICAgIGlmIChcclxuICAgICAgaXNzdWVEYXRhLmlzc3VlUmVjb21tZW5kYXRpb25cclxuICAgICAgICAucmVwbGFjZSgvJm5ic3A7L2csICcnKVxyXG4gICAgICAgIC5yZXBsYWNlKC9cXDxiclxccypbXFwvXT8+L2dpLCAnJylcclxuICAgICAgICAudHJpbSgpLmxlbmd0aCA9PT0gMFxyXG4gICAgKSB7XHJcbiAgICAgIGVycm9ycy5wdXNoKCdpc3N1ZVJlY29tbWVuZGF0aW9uJyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZXJyb3JzO1xyXG4gIH1cclxuXHJcbiAgZ2VuZXJhdGVQYXlsb2FkKGlzc3VlRGF0YTogYW55LCBvcHRpb25GaWVsZHNTdGF0dXM6IGFueSkge1xyXG4gICAgY29uc3Qgc2VsZWN0ZWREYXRlID0gbmV3IERhdGUoaXNzdWVEYXRhLmlzc3VlRHVlRGF0ZSk7XHJcbiAgICBjb25zdCBkYXRlU3BsaXQgPSBbXHJcbiAgICAgIHNlbGVjdGVkRGF0ZS5nZXRGdWxsWWVhcigpLFxyXG4gICAgICBzZWxlY3RlZERhdGUuZ2V0TW9udGgoKSArIDEsXHJcbiAgICAgIHNlbGVjdGVkRGF0ZS5nZXREYXRlKCksXHJcbiAgICBdO1xyXG4gICAgY29uc3QgdGltZTogYW55ID0gdGhpcy5jb252ZXJ0RnJvbTEyVG8yNEZvcm1hdChcclxuICAgICAgaXNzdWVEYXRhLmlzc3VlRHVlVGltZVxyXG4gICAgKS5zcGxpdCgnOicpO1xyXG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKFxyXG4gICAgICBkYXRlU3BsaXRbMF0sXHJcbiAgICAgIGRhdGVTcGxpdFsxXSAtIDEsXHJcbiAgICAgIGRhdGVTcGxpdFsyXSxcclxuICAgICAgdGltZVswXSxcclxuICAgICAgdGltZVsxXSxcclxuICAgICAgMFxyXG4gICAgKTtcclxuXHJcbiAgICBjb25zdCBjcmVhdGVJc3N1ZTogYW55ID0ge1xyXG4gICAgICBpc3N1ZV9kZXNjcmlwdGlvbl9hdHRhY2htZW50czogaXNzdWVEYXRhPy5pc3N1ZURlc2NyaXB0aW9uQXR0YWNoZW1lbnRzLFxyXG4gICAgICBhc3NvY2lhdGVkX3Jpc2s6IG9wdGlvbkZpZWxkc1N0YXR1cy5BU1NPQ0lBVEVEX1JJU0tTXHJcbiAgICAgICAgPyBpc3N1ZURhdGEuaXNzdWVBc3NvY2lhdGVkUmlza1xyXG4gICAgICAgIDogJycsXHJcbiAgICAgIGlzc3VlX25hbWU6IGlzc3VlRGF0YS5pc3N1ZU5hbWUsXHJcbiAgICAgIHJlcG9ydF9pZDogJzAnLFxyXG4gICAgICBpc3N1ZV9kZXNjcmlwdGlvbjogaXNzdWVEYXRhLmlzc3VlRGVzY3JpcHRpb24sXHJcbiAgICAgIGlzc3VlX3R5cGU6IG9wdGlvbkZpZWxkc1N0YXR1cy5JU1NVRV9UWVBFXHJcbiAgICAgICAgPyB0aGlzLmFycmF5VG9JZChpc3N1ZURhdGEuaXNzdWVUeXBlLCAnaXNzdWVfaWQnKS50b1N0cmluZygpXHJcbiAgICAgICAgOiAnJyxcclxuICAgICAgZXhjZXB0aW9uX3R5cGU6IG9wdGlvbkZpZWxkc1N0YXR1cy5FWENFUFRJT05fVFlQRVxyXG4gICAgICAgID8gaXNzdWVEYXRhLmV4Y2VwdGlvblR5cGUudG9TdHJpbmcoKVxyXG4gICAgICAgIDogJycsXHJcbiAgICAgIHJpc2tfY2xhc3M6IGlzc3VlRGF0YS5pc3N1ZVJpc2tSYXRpbmcudG9TdHJpbmcoKSA/PyAnJyxcclxuICAgICAgcHJpb3JpdHk6IG9wdGlvbkZpZWxkc1N0YXR1cy5QUklPUklUWVxyXG4gICAgICAgID8gaXNzdWVEYXRhLmlzc3VlUHJpb3JpdHkudG9TdHJpbmcoKVxyXG4gICAgICAgIDogJycsXHJcbiAgICAgIGlzc3VlX2NhdGVnb3J5X2lkOlxyXG4gICAgICAgIHRoaXMuYXJyYXlUb0lkKGlzc3VlRGF0YS5pc3N1ZUNhdGVnb3J5LCAnY2F0ZWdvcnlfaWQnKSA/PyAwLFxyXG4gICAgICByZWNvbW1lbmRhdGlvbjogaXNzdWVEYXRhLmlzc3VlUmVjb21tZW5kYXRpb24sXHJcbiAgICAgIGVudHJ1c3RlZF90bzogdGhpcy5hcnJheVRvSWQoaXNzdWVEYXRhLmVudHJ1c3RUbywgJ2VtcGxveWVlX2lkJykgPz8gMCxcclxuICAgICAgaXNzdWVfZGF0ZTpcclxuICAgICAgICBkYXRlU3BsaXRbMF0gK1xyXG4gICAgICAgICctJyArXHJcbiAgICAgICAgZGF0ZVNwbGl0WzFdICtcclxuICAgICAgICAnLScgK1xyXG4gICAgICAgIGRhdGVTcGxpdFsyXSArXHJcbiAgICAgICAgJyAnICtcclxuICAgICAgICB0aGlzLmNvbnZlcnRGcm9tMTJUbzI0Rm9ybWF0KGlzc3VlRGF0YS5pc3N1ZUR1ZVRpbWUpLFxyXG4gICAgICBmYWlsZWRfdGltZTogdGhpcy5jb252ZXJ0RnJvbTEyVG8yNEZvcm1hdChpc3N1ZURhdGEuaXNzdWVEdWVUaW1lKSxcclxuICAgICAgaXNzdWVfZHVlX2RhdGU6XHJcbiAgICAgICAgZGF0ZVNwbGl0WzBdICtcclxuICAgICAgICAnLScgK1xyXG4gICAgICAgIGRhdGVTcGxpdFsxXSArXHJcbiAgICAgICAgJy0nICtcclxuICAgICAgICBkYXRlU3BsaXRbMl0gK1xyXG4gICAgICAgICcgJyArXHJcbiAgICAgICAgdGhpcy5jb252ZXJ0RnJvbTEyVG8yNEZvcm1hdChpc3N1ZURhdGEuaXNzdWVEdWVUaW1lKSxcclxuICAgICAgZ3JjX2FyZWE6ICcnLFxyXG4gICAgICBjY19lbXBsb3llZV9lbWFpbDogb3B0aW9uRmllbGRzU3RhdHVzLk9WRVJTSUdIVFxyXG4gICAgICAgID8gdGhpcy5hcnJheVRvSURzRHRyaW5nKGlzc3VlRGF0YS5pc3N1ZUNDVXNlcnMsICdlbXBsb3llZV9lbWFpbCcpXHJcbiAgICAgICAgOiAnJyxcclxuICAgICAgZmFpbHVyZV9jY19lbXBsb3llZV9lbWFpbDogb3B0aW9uRmllbGRzU3RhdHVzLk9WRVJTSUdIVFxyXG4gICAgICAgID8gdGhpcy5hcnJheVRvSURzRHRyaW5nKGlzc3VlRGF0YS5mYWlsdXJlQ0NVc2VycywgJ2VtcGxveWVlX2VtYWlsJylcclxuICAgICAgICA6ICcnLFxyXG4gICAgICBjdXN0b21fdGFnX3ZhbHVlOiAnJyxcclxuICAgICAgaXNzdWVfcmVzb2x2ZV90aW1lc3RhbXA6IChkYXRlLmdldFRpbWUoKSAvIDEwMDApLnRvU3RyaW5nKCksXHJcbiAgICAgIGV2aWRlbmNlX3VwbG9hZF9mbGFnOiBvcHRpb25GaWVsZHNTdGF0dXMuRVZJREVOQ0VcclxuICAgICAgICA/IGlzc3VlRGF0YS5ldmlkZW5jZVJlcXVpcmVkXHJcbiAgICAgICAgICA/ICcxJ1xyXG4gICAgICAgICAgOiAnMCdcclxuICAgICAgICA6ICcwJyxcclxuICAgIH07XHJcbiAgICBpZiAoaXNzdWVEYXRhLmlzc3VlUkMubGVuZ3RoKSB7XHJcbiAgICAgIGNyZWF0ZUlzc3VlLnJjX2lkID0gdGhpcy5hcnJheVRvSWQoaXNzdWVEYXRhLmlzc3VlUkMsICdyY19pZCcpID8/IDA7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGNyZWF0ZUlzc3VlO1xyXG4gIH1cclxuXHJcbiAgcGF5bG9hZEJ1aWxkZXIoaXNzdWVEYXRhOiBhbnksIG9wdGlvbkZpZWxkc1N0YXR1czogYW55KSB7XHJcbiAgICBjb25zdCBpc01vbWVudCA9IG1vbWVudC5pc01vbWVudChpc3N1ZURhdGEuaXNzdWVEdWVEYXRlKTtcclxuICAgIGNvbnN0IHNlbGVjdGVkRGF0ZSA9IGlzTW9tZW50XHJcbiAgICAgID8gbW9tZW50KGlzc3VlRGF0YS5pc3N1ZUR1ZURhdGUpPy50b0RhdGUoKVxyXG4gICAgICA6IG5ldyBEYXRlKGlzc3VlRGF0YS5pc3N1ZUR1ZURhdGUpO1xyXG4gICAgY29uc3QgZGF0ZVNwbGl0ID0gW1xyXG4gICAgICBzZWxlY3RlZERhdGUuZ2V0RnVsbFllYXIoKSxcclxuICAgICAgc2VsZWN0ZWREYXRlLmdldE1vbnRoKCkgKyAxLFxyXG4gICAgICBzZWxlY3RlZERhdGUuZ2V0RGF0ZSgpLFxyXG4gICAgXTtcclxuICAgIGNvbnN0IHBheWxvYWQ6IGFueSA9IHtcclxuICAgICAgZGVzY3JpcHRpb246IFtdLFxyXG4gICAgICBhc3NvY2lhdGVkX3Jpc2s6IFtdLFxyXG4gICAgICByZWNvbW1lbmRhdGlvbjogW10sXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC50aXRsZSA9IGlzc3VlRGF0YS5pc3N1ZU5hbWUudHJpbSgpID8/ICcnO1xyXG4gICAgcGF5bG9hZC5yY19pZCA9IGlzc3VlRGF0YS5pc3N1ZVJDLmxlbmd0aFxyXG4gICAgICA/IHRoaXMuZ2V0QXJyYXlJZChpc3N1ZURhdGEuaXNzdWVSQywgJ3JjX2lkJylcclxuICAgICAgOiBbXTtcclxuICAgIHBheWxvYWQucmVzcG9uc2liaWxpdGllc19MaW5rZWQgPSBpc3N1ZURhdGEucmVzcG9uc2liaWxpdHlMaW5rZWQubGVuZ3RoXHJcbiAgICAgID8gdGhpcy5nZXRBcnJheUlkKGlzc3VlRGF0YS5yZXNwb25zaWJpbGl0eUxpbmtlZCwgJ1JlcG9ydElkJylcclxuICAgICAgOiBbXTtcclxuICAgIHBheWxvYWQuY2F0ZWdvcnlfaWQgPSBpc3N1ZURhdGEuaXNzdWVDYXRlZ29yeS5sZW5ndGhcclxuICAgICAgPyB0aGlzLmFycmF5VG9JZChpc3N1ZURhdGEuaXNzdWVDYXRlZ29yeSwgJ2NhdGVnb3J5X2lkJylcclxuICAgICAgOiBudWxsO1xyXG4gICAgcGF5bG9hZC5kZXNjcmlwdGlvblswXSA9IHtcclxuICAgICAgdGV4dDogaXNzdWVEYXRhLmlzc3VlRGVzY3JpcHRpb24gPz8gJycsXHJcbiAgICAgIGF0dGFjaG1lbnRzOiBpc3N1ZURhdGE/Lmlzc3VlRGVzY3JpcHRpb25BdHRhY2hlbWVudHMubGVuZ3RoXHJcbiAgICAgICAgPyBpc3N1ZURhdGE/Lmlzc3VlRGVzY3JpcHRpb25BdHRhY2hlbWVudHNcclxuICAgICAgICA6IFtdLFxyXG4gICAgfTtcclxuICAgIHBheWxvYWQuZXhjZXB0aW9uX3R5cGUgPSBvcHRpb25GaWVsZHNTdGF0dXMuRVhDRVBUSU9OX1RZUEVcclxuICAgICAgPyBOdW1iZXIoaXNzdWVEYXRhLmV4Y2VwdGlvblR5cGUpXHJcbiAgICAgIDogbnVsbDtcclxuICAgIHBheWxvYWQucmlza19jbGFzcyA9IGlzc3VlRGF0YS5pc3N1ZVJpc2tSYXRpbmcgPz8gbnVsbDtcclxuICAgIHBheWxvYWQucHJpb3JpdHkgPSBvcHRpb25GaWVsZHNTdGF0dXMuUFJJT1JJVFlcclxuICAgICAgPyBOdW1iZXIoaXNzdWVEYXRhLmlzc3VlUHJpb3JpdHkpXHJcbiAgICAgIDogbnVsbDtcclxuICAgIHBheWxvYWQuYXNzaWduZWVfaWQgPSBpc3N1ZURhdGEuZW50cnVzdFRvXHJcbiAgICAgID8gdGhpcy5hcnJheVRvSWQoaXNzdWVEYXRhLmVudHJ1c3RUbywgJ215X21lbWJlcl9pZCcpXHJcbiAgICAgIDogbnVsbDtcclxuICAgIHBheWxvYWQuYXNzb2NpYXRlZF9yaXNrWzBdID0ge1xyXG4gICAgICB0ZXh0OiBvcHRpb25GaWVsZHNTdGF0dXMuQVNTT0NJQVRFRF9SSVNLU1xyXG4gICAgICAgID8gaXNzdWVEYXRhLmlzc3VlQXNzb2NpYXRlZFJpc2tcclxuICAgICAgICA6ICcnLFxyXG4gICAgICBhdHRhY2htZW50czogW10sXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5yZWNvbW1lbmRhdGlvblswXSA9IHtcclxuICAgICAgdGV4dDogaXNzdWVEYXRhLmlzc3VlUmVjb21tZW5kYXRpb24gPz8gJycsXHJcbiAgICAgIGF0dGFjaG1lbnRzOiBpc3N1ZURhdGE/LnJlY29tbWVuZGVkQWN0aW9uc0F0dGFjaG1lbnRzLmxlbmd0aFxyXG4gICAgICAgID8gaXNzdWVEYXRhPy5yZWNvbW1lbmRlZEFjdGlvbnNBdHRhY2htZW50c1xyXG4gICAgICAgIDogW10sXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5ldmlkZW5jZSA9IHtcclxuICAgICAgZXZpZGVuY2VfZmxhZzogb3B0aW9uRmllbGRzU3RhdHVzLkVWSURFTkNFXHJcbiAgICAgICAgPyBpc3N1ZURhdGEuZXZpZGVuY2VSZXF1aXJlZFxyXG4gICAgICAgICAgPyAxXHJcbiAgICAgICAgICA6IDBcclxuICAgICAgICA6IDAsXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5mcmVxdWVuY3lfZGV0YWlscyA9IHtcclxuICAgICAgZnJlcXVlbmN5X3RpbWU6XHJcbiAgICAgICAgdGhpcy5jb252ZXJ0RnJvbTEyVG8yNEZvcm1hdChpc3N1ZURhdGEuaXNzdWVEdWVUaW1lKSA/PyBERUZBVUxUX1RJTUUsXHJcbiAgICAgIGZyZXF1ZW5jeV9kYXRlOlxyXG4gICAgICAgIGRhdGVTcGxpdFswXSArXHJcbiAgICAgICAgJy0nICtcclxuICAgICAgICAoZGF0ZVNwbGl0WzFdIDwgMTAgPyAnMCcgKyBkYXRlU3BsaXRbMV0gOiBkYXRlU3BsaXRbMV0pICtcclxuICAgICAgICAnLScgK1xyXG4gICAgICAgIChkYXRlU3BsaXRbMl0gPCAxMCA/ICcwJyArIGRhdGVTcGxpdFsyXSA6IGRhdGVTcGxpdFsyXSksXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5vdmVyc2VlciA9IHtcclxuICAgICAgY2NfZW1haWw6IG9wdGlvbkZpZWxkc1N0YXR1cy5PVkVSU0lHSFRcclxuICAgICAgICA/IGlzc3VlRGF0YS5pc3N1ZUNDVXNlcnMubGVuZ3RoXHJcbiAgICAgICAgICA/IGlzc3VlRGF0YS5pc3N1ZUNDVXNlcnMubWFwKCh4OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4geyBtZW1iZXJfaWQ6IHgubXlfbWVtYmVyX2lkID8/IDAsIGFsZXJ0X2VuYWJsZTogMSB9O1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgOiBbXVxyXG4gICAgICAgIDogW10sXHJcbiAgICAgIGZhaWx1cmVfY2NfZW1haWw6IG9wdGlvbkZpZWxkc1N0YXR1cy5PVkVSU0lHSFRcclxuICAgICAgICA/IGlzc3VlRGF0YS5mYWlsdXJlQ0NVc2Vycy5sZW5ndGhcclxuICAgICAgICAgID8gaXNzdWVEYXRhLmZhaWx1cmVDQ1VzZXJzLm1hcCgoeDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHsgbWVtYmVyX2lkOiB4Lm15X21lbWJlcl9pZCA/PyAwLCBhbGVydF9lbmFibGU6IDEgfTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIDogW11cclxuICAgICAgICA6IFtdLFxyXG4gICAgfTtcclxuICAgIHBheWxvYWQuY3VzdG9tX3RhZ3MgPSBpc3N1ZURhdGE/Lmlzc3VlQ3VzdG9tVGFnO1xyXG4gICAgcGF5bG9hZC5pc3N1ZVR5cGUgPSBpc3N1ZURhdGE/Lmlzc3VlVHlwZTtcclxuICAgIHBheWxvYWQubGlua2VkX2Fzc2Vzc21lbnRfaXNzdWVzID0ge1xyXG4gICAgICByZXNwX2lkOiBpc3N1ZURhdGE/LnJlc3BJZCA/PyAnJyxcclxuICAgICAgZHVlX2RhdGVfaWQ6IGlzc3VlRGF0YT8uZHVlRGF0ZUlkID8/ICcnLFxyXG4gICAgICBhc3Nlc3NtZW50X2lkOiBpc3N1ZURhdGE/LmFzc2Vzc21lbnRJZCA/PyAnJyxcclxuICAgICAgcXVlc3Rpb25faWQ6IGlzc3VlRGF0YT8ucXVlc3Rpb25JZCA/PyAnJyxcclxuICAgICAgYXVkaXRlZV9pZDogaXNzdWVEYXRhPy5hdWRpdGVlSWQgPz8gbnVsbCxcclxuICAgIH07XHJcbiAgICBwYXlsb2FkLnNvdXJjZSA9IGlzc3VlRGF0YT8uc291cmNlO1xyXG5cclxuICAgIHJldHVybiBwYXlsb2FkO1xyXG4gIH1cclxuXHJcbiAgYXJyYXlUb0lkKGFycmF5OiBhbnksIGtleTogYW55KSB7XHJcbiAgICBpZiAoYXJyYXkubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBhcnJheVswXVtrZXldO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0QXJyYXlJZChhcnJheTogYW55LCBrZXk6IGFueSkge1xyXG4gICAgcmV0dXJuIGFycmF5Lm1hcCgoZWxlOiBhbnkpID0+IGVsZVtrZXldKTtcclxuICB9XHJcblxyXG4gIGNvbnZlcnRGcm9tMTJUbzI0Rm9ybWF0ID0gKHRpbWUxMjogYW55KSA9PiB7XHJcbiAgICBpZiAodGltZTEyKSB7XHJcbiAgICAgIGNvbnN0IFtzSG91cnMsIG1pbnV0ZXMsIHBlcmlvZF0gPSB0aW1lMTJcclxuICAgICAgICAubWF0Y2goLyhbMC05XXsxLDJ9KTooWzAtOV17Mn0pIChhbXxwbXxBTXxQTSkvKVxyXG4gICAgICAgIC5zbGljZSgxKTtcclxuICAgICAgY29uc3QgUE0gPSBwZXJpb2QgPT09ICdQTSc7XHJcbiAgICAgIGNvbnN0IGhvdXJzID0gKCtzSG91cnMgJSAxMikgKyAoUE0gPyAxMiA6IDApO1xyXG5cclxuICAgICAgcmV0dXJuIGAkeygnMCcgKyBob3Vycykuc2xpY2UoLTIpfToke21pbnV0ZXN9OjAwYDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBERUZBVUxUXzI0SFI7XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgY29udmVydEZyb20yNFRvMTJGb3JtYXQodGltZTogYW55KSB7XHJcbiAgICBjb25zdCBoaG1tID0gdGltZS5zcGxpdCgnOicpO1xyXG4gICAgdGltZSA9IGAke2hobW1bMF19OiR7aGhtbVsxXX1gO1xyXG4gICAgLy8gQ2hlY2sgY29ycmVjdCB0aW1lIGZvcm1hdCBhbmQgc3BsaXQgaW50byBjb21wb25lbnRzXHJcbiAgICB0aW1lID0gdGltZVxyXG4gICAgICAudG9TdHJpbmcoKVxyXG4gICAgICAubWF0Y2goL14oWzAxXVxcZHwyWzAtM10pKDopKFswLTVdXFxkKSg6WzAtNV1cXGQpPyQvKSB8fCBbdGltZV07XHJcblxyXG4gICAgaWYgKHRpbWUubGVuZ3RoID4gMSkge1xyXG4gICAgICAvLyBJZiB0aW1lIGZvcm1hdCBjb3JyZWN0XHJcbiAgICAgIHRpbWUgPSB0aW1lLnNsaWNlKDEpOyAvLyBSZW1vdmUgZnVsbCBzdHJpbmcgbWF0Y2ggdmFsdWVcclxuICAgICAgdGltZVs1XSA9ICt0aW1lWzBdIDwgMTIgPyAnIEFNJyA6ICcgUE0nOyAvLyBTZXQgQU0vUE1cclxuICAgICAgdGltZVswXSA9ICt0aW1lWzBdICUgMTIgfHwgMTI7IC8vIEFkanVzdCBob3Vyc1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRpbWUuam9pbignJyk7IC8vIHJldHVybiBhZGp1c3RlZCB0aW1lIG9yIG9yaWdpbmFsIHN0cmluZ1xyXG4gIH1cclxuXHJcbiAgYXJyYXlUb0lEc0R0cmluZyhhcnJheTogYW55LCBpZGVudGlmaWVyS2V5OiBhbnkpIHtcclxuICAgIGNvbnN0IGxpc3QgPSBhcnJheS5tYXAoKGVsOiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIGVsW2lkZW50aWZpZXJLZXldO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gbGlzdC5qb2luKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGxvYWRzIHRoZSBnaXZlbiBmaWxlIHRvIHNlcnZlclxyXG4gICAqIEBwYXJhbSBwYXlsb2FkIHBheWxvYWQgRmlsZSBkYXRhIHRvIGJlIHVwbG9hZGVkXHJcbiAgICogQHBhcmFtIHBhdGggcGF0aCBQYXRoIG9mIGZpbGUgdG8gYmUgdXBsb2FkZWRcclxuICAgKiBAcmV0dXJucyByZXNwb25zZSBhZnRlciB1cGxvYWRpbmcgYSBmaWxlXHJcbiAgICovXHJcbiAgdXBsb2FkRmlsZXMocGF5bG9hZDogYW55LCBwYXRoOiBhbnkpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXHJcbiAgICAgICd0b2tlbicsXHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcclxuICAgICk7XHJcbiAgICBjb25zdCBPUkdfUEFUSCA9IGBvLyR7cGF0aH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxyXG4gICAgICB0aGlzLmVudi5maWxlVXBsb2FkRW5kUG9pbnQgKyBPUkdfUEFUSCArICcmbmdzdy1ieXBhc3M9dHJ1ZScsXHJcbiAgICAgIHBheWxvYWQsXHJcbiAgICAgIHsgaGVhZGVycyB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXNzdWVEZXRhaWxzKGlzc3VlSWQ6IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldCh0aGlzLmVudi5hc3N1cmFuY2UgKyAnSXNzdWUvRWRpdC8nICsgaXNzdWVJZCwgeyBoZWFkZXJzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDMpKTtcclxuICB9XHJcblxyXG4gIGZvcm1hdERhdGUoKSB7XHJcbiAgICBjb25zdCBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICBjb25zdCBkYXkgPSBTdHJpbmcoY3VycmVudERhdGUuZ2V0RGF0ZSgpKS5wYWRTdGFydCgyLCAnMCcpO1xyXG4gICAgY29uc3QgbW9udGggPSBTdHJpbmcoY3VycmVudERhdGUuZ2V0TW9udGgoKSArIDEpLnBhZFN0YXJ0KDIsICcwJyk7XHJcbiAgICBjb25zdCB5ZWFyID0gY3VycmVudERhdGUuZ2V0RnVsbFllYXIoKTtcclxuICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBgJHtkYXl9LSR7bW9udGh9LSR7eWVhcn1gO1xyXG4gICAgcmV0dXJuIGZvcm1hdHRlZERhdGU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
360
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLWlzc3VlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1zZXJ2aWNlcy9sb2ctaXNzdWUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFJbkMsT0FBTyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7Ozs7QUFLekUsTUFBTSxPQUFPLGVBQWU7SUFFMUIsWUFDVSxJQUFnQixFQUNoQixXQUF3QixFQUNwQixNQUF1QjtRQUYzQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBcVZsQyw0QkFBdUIsR0FBRyxDQUFDLE1BQVcsRUFBRSxFQUFFO1lBQ3hDLElBQUksTUFBTSxFQUFFO2dCQUNWLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxHQUFHLE1BQU07cUJBQ3JDLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQztxQkFDOUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNaLE1BQU0sRUFBRSxHQUFHLE1BQU0sS0FBSyxJQUFJLENBQUM7Z0JBQzNCLE1BQU0sS0FBSyxHQUFHLENBQUMsQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBRTdDLE9BQU8sR0FBRyxDQUFDLEdBQUcsR0FB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QUcsQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sSUFBSSxHQUFHLFdBQVcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN2QyxNQUFNLGFBQWEsR0FBRyxHQUFHLEdBQUcsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7UUFDaEQsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQzsrR0FuYVUsZUFBZTttSEFBZixlQUFlLGNBRmQsTUFBTTs7NEZBRVAsZUFBZTtrQkFIM0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1JLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50LCBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgbWFwLCByZXRyeSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQvbW9tZW50JztcclxuXHJcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zIH0gZnJvbSAnLi4vY29uZmlndXJhdGlvbnMnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4vYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgREVGQVVMVF8yNEhSLCBERUZBVUxUX1RJTUUgfSBmcm9tICcuLi9jb25zdGFudHMvdGltZS5jb25zdGFudHMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIExvZ0lzc3VlU2VydmljZSB7XHJcbiAgZW52ITogYW55O1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBAT3B0aW9uYWwoKSBjb25maWc/OiBDb25maWd1cmF0aW9uc1xyXG4gICkge1xyXG4gICAgaWYgKGNvbmZpZykge1xyXG4gICAgICB0aGlzLmVudiA9IGNvbmZpZy5lbnZDb25maWc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRJc3N1ZVR5cGVzKCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnYub3JnYW5pemF0aW9uR2V0ICsgJ2lzc3VlVHlwZUxpc3QnLCB7IGhlYWRlcnMgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T3JnUGVvcGxlKCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnYub3JnYW5pemF0aW9uR2V0ICsgJ3Blb3BsZScsIHsgaGVhZGVycyB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG5cclxuICBnZXRJc3N1ZUNhdGVnb3JpZXMoKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxyXG4gICAgICAndG9rZW4nLFxyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXHJcbiAgICApO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAuZ2V0PGFueVtdPihcclxuICAgICAgICB0aGlzLmVudi5hc3N1cmFuY2UgKyAnSXNzdWUvQ2F0ZWdvcnkvQ2F0TGlzdD9jYXRlZ29yaWVzPXRydWUnLFxyXG4gICAgICAgIHsgaGVhZGVycyB9XHJcbiAgICAgIClcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gICAgLy9odHRwczovL2RldmFwaS52LWNvbXBseS5jb20vQXNzdXJhbmNlL0lzc3VlL0NhdGVnb3J5L0NhdExpc3QvMT9pc0J1c2luZXNzQ3ljbGU9dHJ1ZSZjYXRlZ29yaWVzPXRydWVcclxuICB9XHJcbiAgZ2V0UmVzcG9uc2liaWxpdHlDZW50ZXJMaXN0KCkge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldDxhbnlbXT4odGhpcy5lbnYuY29tcGxpYW5jZUdldCArICdyZXNwb25zaWJpbGl0eUNlbnRlclRyZWUnLCB7XHJcbiAgICAgICAgaGVhZGVycyxcclxuICAgICAgfSlcclxuICAgICAgLnBpcGUocmV0cnkoMikpO1xyXG4gIH1cclxuICBjcmVhdGVJc3N1ZShwYXlsb2FkOiBhbnkpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXHJcbiAgICAgICd0b2tlbicsXHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcclxuICAgICk7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwXHJcbiAgICAgIC5wb3N0KHRoaXMuZW52LmFzc3VyYW5jZSArICdJc3N1ZScsIHBheWxvYWQsIHsgaGVhZGVycyB9KVxyXG4gICAgICAucGlwZShyZXRyeSgyKSk7XHJcbiAgfVxyXG4gIHVwZGF0ZUlzc3VlKHBheWxvYWQ6IGFueSwgaXNzdWVJZDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxyXG4gICAgICAndG9rZW4nLFxyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXHJcbiAgICApO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAucHV0KHRoaXMuZW52LmFzc3VyYW5jZSArICdJc3N1ZS8nICsgaXNzdWVJZCwgcGF5bG9hZCwgeyBoZWFkZXJzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDIpKTtcclxuICB9XHJcblxyXG4gIGdldENvbnRyb2xSaXNrKGF1ZGl0UGxhbklkOiBzdHJpbmcsIHR5cGU6IHN0cmluZykge1xyXG4gICAgLy8gICAgIEdldCBMaW5rZWQgQXVkaXQgUGxhbiBSZXNwb25zaWJpbGl0aWVzIGJ5IEF1ZGl0X1BsYW5fSWRcclxuICAgIC8vIFVSTDogaHR0cHM6Ly9kZXZhcGkudi1jb21wbHkuY29tL3Jlc3BvbnNpYmlsaXRpZXMvP21vZGU9bWFuYWdlX2F1ZGl0X3BsYW5fcmVzcG9uc2liaWxpdGllcyZpZD02MTBiMzI5MTQ0YzgxYTAwMDljYmI1OTggTWV0aG9kOiBHRVRcclxuXHJcbiAgICAvLyBHZXQgTGlua2VkIEF1ZGl0IFBsYW4gUmlzayBieSBBdWRpdF9QbGFuX0lkXHJcbiAgICAvLyBVUkw6IGh0dHBzOi8vZGV2YXBpLnYtY29tcGx5LmNvbS9yaXNrLz9tb2RlPXJpc2svbWFuYWdlX2F1ZGl0X3BsYW5fcmlzayZpZD02MTBiMzI5MTQ0YzgxYTAwMDljYmI1OThcclxuICAgIC8vIE1ldGhvZDogR0VUXHJcbiAgICBjb25zdCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxyXG4gICAgICAndG9rZW4nLFxyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLmdldEF1dGhvcml6YXRpb25Ub2tlbigpXHJcbiAgICApO1xyXG4gICAgaWYgKHR5cGUgPT09ICdSRVNQT05TSUJJTElUWScpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaHR0cFxyXG4gICAgICAgIC5nZXQ8YW55W10+KFxyXG4gICAgICAgICAgdGhpcy5lbnYucmVzcG9uc2liaWxpdGllc0dldCArXHJcbiAgICAgICAgICAgICdtYW5hZ2VfYXVkaXRfcGxhbl9yZXNwb25zaWJpbGl0aWVzJmlkPScgK1xyXG4gICAgICAgICAgICBhdWRpdFBsYW5JZCxcclxuICAgICAgICAgIHsgaGVhZGVycyB9XHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgbWFwKChpdGVtczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBpdGVtcy5tYXAoKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgICBpdGVtSWQ6IGl0ZW0/LnJlcG9ydF9pZCxcclxuICAgICAgICAgICAgICBpdGVtQ29udHJvbElkOiBpdGVtPy5jb250cm9sX2lkLFxyXG4gICAgICAgICAgICAgIGl0ZW1Db250cm9sTmFtZTogaXRlbT8ucmVwb3J0X25hbWUsXHJcbiAgICAgICAgICAgICAgaXRlbVR5cGU6ICdSRVNQT05TSUJJTElUWScsXHJcbiAgICAgICAgICAgIH0pKTtcclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgKTtcclxuICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ1JJU0snKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgICAuZ2V0PGFueVtdPihcclxuICAgICAgICAgIHRoaXMuZW52LnJpc2sgKyAncmlzay9tYW5hZ2VfYXVkaXRfcGxhbl9yaXNrJmlkPScgKyBhdWRpdFBsYW5JZCxcclxuICAgICAgICAgIHsgaGVhZGVycyB9XHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgbWFwKChpdGVtczogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBpdGVtcy5tYXAoKGl0ZW06IGFueSkgPT4gKHtcclxuICAgICAgICAgICAgICBpdGVtSWQ6IGl0ZW0/LnJpc2tfaWQsXHJcbiAgICAgICAgICAgICAgaXRlbUNvbnRyb2xJZDogaXRlbT8ucmlza19jb250cm9sX2lkLFxyXG4gICAgICAgICAgICAgIGl0ZW1Db250cm9sTmFtZTogaXRlbT8udGl0bGUsXHJcbiAgICAgICAgICAgICAgaXRlbVR5cGU6ICdSSVNLJyxcclxuICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB2YWxpZGF0ZShpc3N1ZURhdGE6IGFueSwgb3BlbmVkRnJvbTogYW55LCBpc1JDTWFuZGF0b3J5OiBhbnkpIHtcclxuICAgIGNvbnN0IGVycm9ycyA9IFtdO1xyXG4gICAgaWYgKCFpc3N1ZURhdGEuaXNzdWVOYW1lIHx8IGlzc3VlRGF0YS5pc3N1ZU5hbWUudHJpbSgpLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICBlcnJvcnMucHVzaCgnaXNzdWVOYW1lJyk7XHJcbiAgICB9XHJcbiAgICBpZiAoaXNzdWVEYXRhLmlzc3VlUkMubGVuZ3RoID09PSAwICYmIGlzUkNNYW5kYXRvcnkpIHtcclxuICAgICAgZXJyb3JzLnB1c2goJ2lzc3VlUkMnKTtcclxuICAgIH1cclxuICAgIGlmIChpc3N1ZURhdGEuZW50cnVzdFRvLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICBlcnJvcnMucHVzaCgnZW50cnVzdFRvJyk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWlzc3VlRGF0YS5pc3N1ZUR1ZURhdGUpIHtcclxuICAgICAgZXJyb3JzLnB1c2goJ2lzc3VlRHVlRGF0ZScpO1xyXG4gICAgfVxyXG4gICAgaWYgKFxyXG4gICAgICBpc3N1ZURhdGEuaXNzdWVSZWNvbW1lbmRhdGlvblxyXG4gICAgICAgIC5yZXBsYWNlKC8mbmJzcDsvZywgJycpXHJcbiAgICAgICAgLnJlcGxhY2UoL1xcPGJyXFxzKltcXC9dPz4vZ2ksICcnKVxyXG4gICAgICAgIC50cmltKCkubGVuZ3RoID09PSAwXHJcbiAgICApIHtcclxuICAgICAgZXJyb3JzLnB1c2goJ2lzc3VlUmVjb21tZW5kYXRpb24nKTtcclxuICAgIH1cclxuICAgIHJldHVybiBlcnJvcnM7XHJcbiAgfVxyXG5cclxuICBnZW5lcmF0ZVBheWxvYWQoaXNzdWVEYXRhOiBhbnksIG9wdGlvbkZpZWxkc1N0YXR1czogYW55KSB7XHJcbiAgICBjb25zdCBzZWxlY3RlZERhdGUgPSBuZXcgRGF0ZShpc3N1ZURhdGEuaXNzdWVEdWVEYXRlKTtcclxuICAgIGNvbnN0IGRhdGVTcGxpdCA9IFtcclxuICAgICAgc2VsZWN0ZWREYXRlLmdldEZ1bGxZZWFyKCksXHJcbiAgICAgIHNlbGVjdGVkRGF0ZS5nZXRNb250aCgpICsgMSxcclxuICAgICAgc2VsZWN0ZWREYXRlLmdldERhdGUoKSxcclxuICAgIF07XHJcbiAgICBjb25zdCB0aW1lOiBhbnkgPSB0aGlzLmNvbnZlcnRGcm9tMTJUbzI0Rm9ybWF0KFxyXG4gICAgICBpc3N1ZURhdGEuaXNzdWVEdWVUaW1lXHJcbiAgICApLnNwbGl0KCc6Jyk7XHJcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoXHJcbiAgICAgIGRhdGVTcGxpdFswXSxcclxuICAgICAgZGF0ZVNwbGl0WzFdIC0gMSxcclxuICAgICAgZGF0ZVNwbGl0WzJdLFxyXG4gICAgICB0aW1lWzBdLFxyXG4gICAgICB0aW1lWzFdLFxyXG4gICAgICAwXHJcbiAgICApO1xyXG5cclxuICAgIGNvbnN0IGNyZWF0ZUlzc3VlOiBhbnkgPSB7XHJcbiAgICAgIGlzc3VlX2Rlc2NyaXB0aW9uX2F0dGFjaG1lbnRzOiBpc3N1ZURhdGE/Lmlzc3VlRGVzY3JpcHRpb25BdHRhY2hlbWVudHMsXHJcbiAgICAgIGFzc29jaWF0ZWRfcmlzazogb3B0aW9uRmllbGRzU3RhdHVzLkFTU09DSUFURURfUklTS1NcclxuICAgICAgICA/IGlzc3VlRGF0YS5pc3N1ZUFzc29jaWF0ZWRSaXNrXHJcbiAgICAgICAgOiAnJyxcclxuICAgICAgaXNzdWVfbmFtZTogaXNzdWVEYXRhLmlzc3VlTmFtZSxcclxuICAgICAgcmVwb3J0X2lkOiAnMCcsXHJcbiAgICAgIGlzc3VlX2Rlc2NyaXB0aW9uOiBpc3N1ZURhdGEuaXNzdWVEZXNjcmlwdGlvbixcclxuICAgICAgaXNzdWVfdHlwZTogb3B0aW9uRmllbGRzU3RhdHVzLklTU1VFX1RZUEVcclxuICAgICAgICA/IHRoaXMuYXJyYXlUb0lkKGlzc3VlRGF0YS5pc3N1ZVR5cGUsICdpc3N1ZV9pZCcpLnRvU3RyaW5nKClcclxuICAgICAgICA6ICcnLFxyXG4gICAgICBleGNlcHRpb25fdHlwZTogb3B0aW9uRmllbGRzU3RhdHVzLkVYQ0VQVElPTl9UWVBFXHJcbiAgICAgICAgPyBpc3N1ZURhdGEuZXhjZXB0aW9uVHlwZS50b1N0cmluZygpXHJcbiAgICAgICAgOiAnJyxcclxuICAgICAgcmlza19jbGFzczogaXNzdWVEYXRhLmlzc3VlUmlza1JhdGluZy50b1N0cmluZygpID8/ICcnLFxyXG4gICAgICBwcmlvcml0eTogb3B0aW9uRmllbGRzU3RhdHVzLlBSSU9SSVRZXHJcbiAgICAgICAgPyBpc3N1ZURhdGEuaXNzdWVQcmlvcml0eS50b1N0cmluZygpXHJcbiAgICAgICAgOiAnJyxcclxuICAgICAgaXNzdWVfY2F0ZWdvcnlfaWQ6XHJcbiAgICAgICAgdGhpcy5hcnJheVRvSWQoaXNzdWVEYXRhLmlzc3VlQ2F0ZWdvcnksICdjYXRlZ29yeV9pZCcpID8/IDAsXHJcbiAgICAgIHJlY29tbWVuZGF0aW9uOiBpc3N1ZURhdGEuaXNzdWVSZWNvbW1lbmRhdGlvbixcclxuICAgICAgZW50cnVzdGVkX3RvOiB0aGlzLmFycmF5VG9JZChpc3N1ZURhdGEuZW50cnVzdFRvLCAnZW1wbG95ZWVfaWQnKSA/PyAwLFxyXG4gICAgICBpc3N1ZV9kYXRlOlxyXG4gICAgICAgIGRhdGVTcGxpdFswXSArXHJcbiAgICAgICAgJy0nICtcclxuICAgICAgICBkYXRlU3BsaXRbMV0gK1xyXG4gICAgICAgICctJyArXHJcbiAgICAgICAgZGF0ZVNwbGl0WzJdICtcclxuICAgICAgICAnICcgK1xyXG4gICAgICAgIHRoaXMuY29udmVydEZyb20xMlRvMjRGb3JtYXQoaXNzdWVEYXRhLmlzc3VlRHVlVGltZSksXHJcbiAgICAgIGZhaWxlZF90aW1lOiB0aGlzLmNvbnZlcnRGcm9tMTJUbzI0Rm9ybWF0KGlzc3VlRGF0YS5pc3N1ZUR1ZVRpbWUpLFxyXG4gICAgICBpc3N1ZV9kdWVfZGF0ZTpcclxuICAgICAgICBkYXRlU3BsaXRbMF0gK1xyXG4gICAgICAgICctJyArXHJcbiAgICAgICAgZGF0ZVNwbGl0WzFdICtcclxuICAgICAgICAnLScgK1xyXG4gICAgICAgIGRhdGVTcGxpdFsyXSArXHJcbiAgICAgICAgJyAnICtcclxuICAgICAgICB0aGlzLmNvbnZlcnRGcm9tMTJUbzI0Rm9ybWF0KGlzc3VlRGF0YS5pc3N1ZUR1ZVRpbWUpLFxyXG4gICAgICBncmNfYXJlYTogJycsXHJcbiAgICAgIGNjX2VtcGxveWVlX2VtYWlsOiBvcHRpb25GaWVsZHNTdGF0dXMuT1ZFUlNJR0hUXHJcbiAgICAgICAgPyB0aGlzLmFycmF5VG9JRHNEdHJpbmcoaXNzdWVEYXRhLmlzc3VlQ0NVc2VycywgJ2VtcGxveWVlX2VtYWlsJylcclxuICAgICAgICA6ICcnLFxyXG4gICAgICBmYWlsdXJlX2NjX2VtcGxveWVlX2VtYWlsOiBvcHRpb25GaWVsZHNTdGF0dXMuT1ZFUlNJR0hUXHJcbiAgICAgICAgPyB0aGlzLmFycmF5VG9JRHNEdHJpbmcoaXNzdWVEYXRhLmZhaWx1cmVDQ1VzZXJzLCAnZW1wbG95ZWVfZW1haWwnKVxyXG4gICAgICAgIDogJycsXHJcbiAgICAgIGN1c3RvbV90YWdfdmFsdWU6ICcnLFxyXG4gICAgICBpc3N1ZV9yZXNvbHZlX3RpbWVzdGFtcDogKGRhdGUuZ2V0VGltZSgpIC8gMTAwMCkudG9TdHJpbmcoKSxcclxuICAgICAgZXZpZGVuY2VfdXBsb2FkX2ZsYWc6IG9wdGlvbkZpZWxkc1N0YXR1cy5FVklERU5DRVxyXG4gICAgICAgID8gaXNzdWVEYXRhLmV2aWRlbmNlUmVxdWlyZWRcclxuICAgICAgICAgID8gJzEnXHJcbiAgICAgICAgICA6ICcwJ1xyXG4gICAgICAgIDogJzAnLFxyXG4gICAgfTtcclxuICAgIGlmIChpc3N1ZURhdGEuaXNzdWVSQy5sZW5ndGgpIHtcclxuICAgICAgY3JlYXRlSXNzdWUucmNfaWQgPSB0aGlzLmFycmF5VG9JZChpc3N1ZURhdGEuaXNzdWVSQywgJ3JjX2lkJykgPz8gMDtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY3JlYXRlSXNzdWU7XHJcbiAgfVxyXG5cclxuICBwYXlsb2FkQnVpbGRlcihpc3N1ZURhdGE6IGFueSwgb3B0aW9uRmllbGRzU3RhdHVzOiBhbnkpIHtcclxuICAgIGNvbnN0IGlzTW9tZW50ID0gbW9tZW50LmlzTW9tZW50KGlzc3VlRGF0YS5pc3N1ZUR1ZURhdGUpO1xyXG4gICAgY29uc29sZS5sb2coJ3BheWxvYWQgYnVpbGRlciBpc3N1ZURhdGEgPT0+JywgaXNzdWVEYXRhKTtcclxuICAgIGRlYnVnZ2VyO1xyXG4gICAgY29uc3Qgc2VsZWN0ZWREYXRlID0gaXNNb21lbnRcclxuICAgICAgPyBtb21lbnQoaXNzdWVEYXRhLmlzc3VlRHVlRGF0ZSk/LnRvRGF0ZSgpXHJcbiAgICAgIDogbmV3IERhdGUoaXNzdWVEYXRhLmlzc3VlRHVlRGF0ZSk7XHJcbiAgICBjb25zdCBkYXRlU3BsaXQgPSBbXHJcbiAgICAgIHNlbGVjdGVkRGF0ZS5nZXRGdWxsWWVhcigpLFxyXG4gICAgICBzZWxlY3RlZERhdGUuZ2V0TW9udGgoKSArIDEsXHJcbiAgICAgIHNlbGVjdGVkRGF0ZS5nZXREYXRlKCksXHJcbiAgICBdO1xyXG4gICAgY29uc3QgcGF5bG9hZDogYW55ID0ge1xyXG4gICAgICBkZXNjcmlwdGlvbjogW10sXHJcbiAgICAgIGFzc29jaWF0ZWRfcmlzazogW10sXHJcbiAgICAgIHJlY29tbWVuZGF0aW9uOiBbXSxcclxuICAgIH07XHJcblxyXG4gICAgcGF5bG9hZC50aXRsZSA9IGlzc3VlRGF0YS5pc3N1ZU5hbWUudHJpbSgpID8/ICcnO1xyXG4gICAgcGF5bG9hZC5yY19pZCA9IGlzc3VlRGF0YS5pc3N1ZVJDLmxlbmd0aFxyXG4gICAgICA/IHRoaXMuZ2V0QXJyYXlJZChpc3N1ZURhdGEuaXNzdWVSQywgJ3JjX2lkJylcclxuICAgICAgOiBbXTtcclxuICAgIHBheWxvYWQucmVzcG9uc2liaWxpdGllc19MaW5rZWQgPSBpc3N1ZURhdGEucmVzcG9uc2liaWxpdHlMaW5rZWQubGVuZ3RoXHJcbiAgICAgID8gdGhpcy5nZXRBcnJheUlkKGlzc3VlRGF0YS5yZXNwb25zaWJpbGl0eUxpbmtlZCwgJ1JlcG9ydElkJylcclxuICAgICAgOiBbXTtcclxuICAgIHBheWxvYWQuY2F0ZWdvcnlfaWQgPSBpc3N1ZURhdGEuaXNzdWVDYXRlZ29yeS5sZW5ndGhcclxuICAgICAgPyB0aGlzLmFycmF5VG9JZChpc3N1ZURhdGEuaXNzdWVDYXRlZ29yeSwgJ2NhdGVnb3J5X2lkJylcclxuICAgICAgOiBudWxsO1xyXG4gICAgcGF5bG9hZC5kZXNjcmlwdGlvblswXSA9IHtcclxuICAgICAgdGV4dDogaXNzdWVEYXRhLmlzc3VlRGVzY3JpcHRpb24gPz8gJycsXHJcbiAgICAgIGF0dGFjaG1lbnRzOiBpc3N1ZURhdGE/Lmlzc3VlRGVzY3JpcHRpb25BdHRhY2hlbWVudHMubGVuZ3RoXHJcbiAgICAgICAgPyBpc3N1ZURhdGE/Lmlzc3VlRGVzY3JpcHRpb25BdHRhY2hlbWVudHNcclxuICAgICAgICA6IFtdLFxyXG4gICAgfTtcclxuICAgIHBheWxvYWQuZXhjZXB0aW9uX3R5cGUgPSBvcHRpb25GaWVsZHNTdGF0dXMuRVhDRVBUSU9OX1RZUEVcclxuICAgICAgPyBOdW1iZXIoaXNzdWVEYXRhLmV4Y2VwdGlvblR5cGUpXHJcbiAgICAgIDogbnVsbDtcclxuICAgIHBheWxvYWQucmlza19jbGFzcyA9IGlzc3VlRGF0YS5pc3N1ZVJpc2tSYXRpbmcgPz8gbnVsbDtcclxuICAgIHBheWxvYWQucHJpb3JpdHkgPSBvcHRpb25GaWVsZHNTdGF0dXMuUFJJT1JJVFlcclxuICAgICAgPyBOdW1iZXIoaXNzdWVEYXRhLmlzc3VlUHJpb3JpdHkpXHJcbiAgICAgIDogbnVsbDtcclxuICAgIHBheWxvYWQuYXNzaWduZWVfaWQgPSBpc3N1ZURhdGEuZW50cnVzdFRvXHJcbiAgICAgID8gdGhpcy5hcnJheVRvSWQoaXNzdWVEYXRhLmVudHJ1c3RUbywgJ215X21lbWJlcl9pZCcpXHJcbiAgICAgIDogbnVsbDtcclxuICAgIHBheWxvYWQuYXNzb2NpYXRlZF9yaXNrWzBdID0ge1xyXG4gICAgICB0ZXh0OiBvcHRpb25GaWVsZHNTdGF0dXMuQVNTT0NJQVRFRF9SSVNLU1xyXG4gICAgICAgID8gaXNzdWVEYXRhLmlzc3VlQXNzb2NpYXRlZFJpc2tcclxuICAgICAgICA6ICcnLFxyXG4gICAgICBhdHRhY2htZW50czogW10sXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5yZWNvbW1lbmRhdGlvblswXSA9IHtcclxuICAgICAgdGV4dDogaXNzdWVEYXRhLmlzc3VlUmVjb21tZW5kYXRpb24gPz8gJycsXHJcbiAgICAgIGF0dGFjaG1lbnRzOiBpc3N1ZURhdGE/LnJlY29tbWVuZGVkQWN0aW9uc0F0dGFjaG1lbnRzLmxlbmd0aFxyXG4gICAgICAgID8gaXNzdWVEYXRhPy5yZWNvbW1lbmRlZEFjdGlvbnNBdHRhY2htZW50c1xyXG4gICAgICAgIDogW10sXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5ldmlkZW5jZSA9IHtcclxuICAgICAgZXZpZGVuY2VfZmxhZzogb3B0aW9uRmllbGRzU3RhdHVzLkVWSURFTkNFXHJcbiAgICAgICAgPyBpc3N1ZURhdGEuZXZpZGVuY2VSZXF1aXJlZFxyXG4gICAgICAgICAgPyAxXHJcbiAgICAgICAgICA6IDBcclxuICAgICAgICA6IDAsXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5mcmVxdWVuY3lfZGV0YWlscyA9IHtcclxuICAgICAgZnJlcXVlbmN5X3RpbWU6XHJcbiAgICAgICAgdGhpcy5jb252ZXJ0RnJvbTEyVG8yNEZvcm1hdChpc3N1ZURhdGEuaXNzdWVEdWVUaW1lKSA/PyBERUZBVUxUX1RJTUUsXHJcbiAgICAgIGZyZXF1ZW5jeV9kYXRlOlxyXG4gICAgICAgIGRhdGVTcGxpdFswXSArXHJcbiAgICAgICAgJy0nICtcclxuICAgICAgICAoZGF0ZVNwbGl0WzFdIDwgMTAgPyAnMCcgKyBkYXRlU3BsaXRbMV0gOiBkYXRlU3BsaXRbMV0pICtcclxuICAgICAgICAnLScgK1xyXG4gICAgICAgIChkYXRlU3BsaXRbMl0gPCAxMCA/ICcwJyArIGRhdGVTcGxpdFsyXSA6IGRhdGVTcGxpdFsyXSksXHJcbiAgICB9O1xyXG4gICAgcGF5bG9hZC5vdmVyc2VlciA9IHtcclxuICAgICAgY2NfZW1haWw6IG9wdGlvbkZpZWxkc1N0YXR1cy5PVkVSU0lHSFRcclxuICAgICAgICA/IGlzc3VlRGF0YS5pc3N1ZUNDVXNlcnMubGVuZ3RoXHJcbiAgICAgICAgICA/IGlzc3VlRGF0YS5pc3N1ZUNDVXNlcnMubWFwKCh4OiBhbnkpID0+IHtcclxuICAgICAgICAgICAgICByZXR1cm4geyBtZW1iZXJfaWQ6IHgubXlfbWVtYmVyX2lkID8/IDAsIGFsZXJ0X2VuYWJsZTogMSB9O1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgOiBbXVxyXG4gICAgICAgIDogW10sXHJcbiAgICAgIGZhaWx1cmVfY2NfZW1haWw6IG9wdGlvbkZpZWxkc1N0YXR1cy5PVkVSU0lHSFRcclxuICAgICAgICA/IGlzc3VlRGF0YS5mYWlsdXJlQ0NVc2Vycy5sZW5ndGhcclxuICAgICAgICAgID8gaXNzdWVEYXRhLmZhaWx1cmVDQ1VzZXJzLm1hcCgoeDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHsgbWVtYmVyX2lkOiB4Lm15X21lbWJlcl9pZCA/PyAwLCBhbGVydF9lbmFibGU6IDEgfTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIDogW11cclxuICAgICAgICA6IFtdLFxyXG4gICAgfTtcclxuICAgIHBheWxvYWQuY3VzdG9tX3RhZ3MgPSBpc3N1ZURhdGE/Lmlzc3VlQ3VzdG9tVGFnO1xyXG4gICAgcGF5bG9hZC5pc3N1ZVR5cGUgPSBpc3N1ZURhdGE/Lmlzc3VlVHlwZTtcclxuICAgIHBheWxvYWQubGlua2VkX2Fzc2Vzc21lbnRfaXNzdWVzID0ge1xyXG4gICAgICByZXNwX2lkOiBpc3N1ZURhdGE/LnJlc3BJZCA/PyAnJyxcclxuICAgICAgZHVlX2RhdGVfaWQ6IGlzc3VlRGF0YT8uZHVlRGF0ZUlkID8/ICcnLFxyXG4gICAgICBhc3Nlc3NtZW50X2lkOiBpc3N1ZURhdGE/LmFzc2Vzc21lbnRJZCA/PyAnJyxcclxuICAgICAgcXVlc3Rpb25faWQ6IGlzc3VlRGF0YT8ucXVlc3Rpb25JZCA/PyAnJyxcclxuICAgICAgYXVkaXRlZV9pZDogaXNzdWVEYXRhPy5hdWRpdGVlSWQgPz8gbnVsbCxcclxuICAgIH07XHJcbiAgICBwYXlsb2FkLnNvdXJjZSA9IGlzc3VlRGF0YT8uc291cmNlO1xyXG5cclxuICAgIHJldHVybiBwYXlsb2FkO1xyXG4gIH1cclxuXHJcbiAgYXJyYXlUb0lkKGFycmF5OiBhbnksIGtleTogYW55KSB7XHJcbiAgICBpZiAoYXJyYXkubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBhcnJheVswXVtrZXldO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0QXJyYXlJZChhcnJheTogYW55LCBrZXk6IGFueSkge1xyXG4gICAgcmV0dXJuIGFycmF5Lm1hcCgoZWxlOiBhbnkpID0+IGVsZVtrZXldKTtcclxuICB9XHJcblxyXG4gIGNvbnZlcnRGcm9tMTJUbzI0Rm9ybWF0ID0gKHRpbWUxMjogYW55KSA9PiB7XHJcbiAgICBpZiAodGltZTEyKSB7XHJcbiAgICAgIGNvbnN0IFtzSG91cnMsIG1pbnV0ZXMsIHBlcmlvZF0gPSB0aW1lMTJcclxuICAgICAgICAubWF0Y2goLyhbMC05XXsxLDJ9KTooWzAtOV17Mn0pIChhbXxwbXxBTXxQTSkvKVxyXG4gICAgICAgIC5zbGljZSgxKTtcclxuICAgICAgY29uc3QgUE0gPSBwZXJpb2QgPT09ICdQTSc7XHJcbiAgICAgIGNvbnN0IGhvdXJzID0gKCtzSG91cnMgJSAxMikgKyAoUE0gPyAxMiA6IDApO1xyXG5cclxuICAgICAgcmV0dXJuIGAkeygnMCcgKyBob3Vycykuc2xpY2UoLTIpfToke21pbnV0ZXN9OjAwYDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBERUZBVUxUXzI0SFI7XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgY29udmVydEZyb20yNFRvMTJGb3JtYXQodGltZTogYW55KSB7XHJcbiAgICBjb25zdCBoaG1tID0gdGltZS5zcGxpdCgnOicpO1xyXG4gICAgdGltZSA9IGAke2hobW1bMF19OiR7aGhtbVsxXX1gO1xyXG4gICAgLy8gQ2hlY2sgY29ycmVjdCB0aW1lIGZvcm1hdCBhbmQgc3BsaXQgaW50byBjb21wb25lbnRzXHJcbiAgICB0aW1lID0gdGltZVxyXG4gICAgICAudG9TdHJpbmcoKVxyXG4gICAgICAubWF0Y2goL14oWzAxXVxcZHwyWzAtM10pKDopKFswLTVdXFxkKSg6WzAtNV1cXGQpPyQvKSB8fCBbdGltZV07XHJcblxyXG4gICAgaWYgKHRpbWUubGVuZ3RoID4gMSkge1xyXG4gICAgICAvLyBJZiB0aW1lIGZvcm1hdCBjb3JyZWN0XHJcbiAgICAgIHRpbWUgPSB0aW1lLnNsaWNlKDEpOyAvLyBSZW1vdmUgZnVsbCBzdHJpbmcgbWF0Y2ggdmFsdWVcclxuICAgICAgdGltZVs1XSA9ICt0aW1lWzBdIDwgMTIgPyAnIEFNJyA6ICcgUE0nOyAvLyBTZXQgQU0vUE1cclxuICAgICAgdGltZVswXSA9ICt0aW1lWzBdICUgMTIgfHwgMTI7IC8vIEFkanVzdCBob3Vyc1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRpbWUuam9pbignJyk7IC8vIHJldHVybiBhZGp1c3RlZCB0aW1lIG9yIG9yaWdpbmFsIHN0cmluZ1xyXG4gIH1cclxuXHJcbiAgYXJyYXlUb0lEc0R0cmluZyhhcnJheTogYW55LCBpZGVudGlmaWVyS2V5OiBhbnkpIHtcclxuICAgIGNvbnN0IGxpc3QgPSBhcnJheS5tYXAoKGVsOiBhbnkpID0+IHtcclxuICAgICAgcmV0dXJuIGVsW2lkZW50aWZpZXJLZXldO1xyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gbGlzdC5qb2luKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBVcGxvYWRzIHRoZSBnaXZlbiBmaWxlIHRvIHNlcnZlclxyXG4gICAqIEBwYXJhbSBwYXlsb2FkIHBheWxvYWQgRmlsZSBkYXRhIHRvIGJlIHVwbG9hZGVkXHJcbiAgICogQHBhcmFtIHBhdGggcGF0aCBQYXRoIG9mIGZpbGUgdG8gYmUgdXBsb2FkZWRcclxuICAgKiBAcmV0dXJucyByZXNwb25zZSBhZnRlciB1cGxvYWRpbmcgYSBmaWxlXHJcbiAgICovXHJcbiAgdXBsb2FkRmlsZXMocGF5bG9hZDogYW55LCBwYXRoOiBhbnkpIHtcclxuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXHJcbiAgICAgICd0b2tlbicsXHJcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuZ2V0QXV0aG9yaXphdGlvblRva2VuKClcclxuICAgICk7XHJcbiAgICBjb25zdCBPUkdfUEFUSCA9IGBvLyR7cGF0aH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KFxyXG4gICAgICB0aGlzLmVudi5maWxlVXBsb2FkRW5kUG9pbnQgKyBPUkdfUEFUSCArICcmbmdzdy1ieXBhc3M9dHJ1ZScsXHJcbiAgICAgIHBheWxvYWQsXHJcbiAgICAgIHsgaGVhZGVycyB9XHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0SXNzdWVEZXRhaWxzKGlzc3VlSWQ6IHN0cmluZykge1xyXG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldChcclxuICAgICAgJ3Rva2VuJyxcclxuICAgICAgdGhpcy5hdXRoU2VydmljZS5nZXRBdXRob3JpemF0aW9uVG9rZW4oKVxyXG4gICAgKTtcclxuICAgIHJldHVybiB0aGlzLmh0dHBcclxuICAgICAgLmdldCh0aGlzLmVudi5hc3N1cmFuY2UgKyAnSXNzdWUvRWRpdC8nICsgaXNzdWVJZCwgeyBoZWFkZXJzIH0pXHJcbiAgICAgIC5waXBlKHJldHJ5KDMpKTtcclxuICB9XHJcblxyXG4gIGZvcm1hdERhdGUoKSB7XHJcbiAgICBjb25zdCBjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCk7XHJcbiAgICBjb25zdCBkYXkgPSBTdHJpbmcoY3VycmVudERhdGUuZ2V0RGF0ZSgpKS5wYWRTdGFydCgyLCAnMCcpO1xyXG4gICAgY29uc3QgbW9udGggPSBTdHJpbmcoY3VycmVudERhdGUuZ2V0TW9udGgoKSArIDEpLnBhZFN0YXJ0KDIsICcwJyk7XHJcbiAgICBjb25zdCB5ZWFyID0gY3VycmVudERhdGUuZ2V0RnVsbFllYXIoKTtcclxuICAgIGNvbnN0IGZvcm1hdHRlZERhdGUgPSBgJHtkYXl9LSR7bW9udGh9LSR7eWVhcn1gO1xyXG4gICAgcmV0dXJuIGZvcm1hdHRlZERhdGU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -33724,6 +33724,8 @@ class LogIssueService {
33724
33724
  }
33725
33725
  payloadBuilder(issueData, optionFieldsStatus) {
33726
33726
  const isMoment = moment.isMoment(issueData.issueDueDate);
33727
+ console.log('payload builder issueData ==>', issueData);
33728
+ debugger;
33727
33729
  const selectedDate = isMoment
33728
33730
  ? moment(issueData.issueDueDate)?.toDate()
33729
33731
  : new Date(issueData.issueDueDate);
@@ -35198,6 +35200,8 @@ class LogAnIssueComponent {
35198
35200
  * @param issueData issue data fetched from API
35199
35201
  */
35200
35202
  async populateForm(issueData) {
35203
+ debugger;
35204
+ console.log('populateForm issueData ==>', issueData);
35201
35205
  this.dataForEdit = issueData;
35202
35206
  this.loader = false;
35203
35207
  this.uiKitService.isLoader = false;
@@ -35292,6 +35296,7 @@ class LogAnIssueComponent {
35292
35296
  }
35293
35297
  this.setOptionalField(issueData);
35294
35298
  this.setLink();
35299
+ console.log('populateForm last issueData ==>', issueData);
35295
35300
  }
35296
35301
  /**
35297
35302
  * Sets the visibility of optional fields