@uiapplibct/ngx-reusa-app-lib 0.0.26 → 0.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/header/header.component.mjs +3 -12
- package/esm2022/lib/components/idle-detector/idle-detector.component.mjs +2 -2
- package/esm2022/lib/interceptors/header-interceptor/http-header.interceptor.mjs +9 -1
- package/esm2022/lib/services/idle/idle.service.mjs +2 -2
- package/esm2022/lib/services/login/login.service.mjs +4 -3
- package/fesm2022/uiapplibct-ngx-reusa-app-lib.mjs +15 -15
- package/fesm2022/uiapplibct-ngx-reusa-app-lib.mjs.map +1 -1
- package/lib/components/header/header.component.d.ts.map +1 -1
- package/lib/interceptors/header-interceptor/http-header.interceptor.d.ts.map +1 -1
- package/lib/services/login/login.service.d.ts +1 -1
- package/lib/services/login/login.service.d.ts.map +1 -1
- package/package.json +2 -5
|
@@ -209,9 +209,10 @@ export class LoginService {
|
|
|
209
209
|
let cookie = `${cookieName}=${value}; expires=${expiration + '.000'}; path=/; domain=${LibConstants.ssoDomain}`;
|
|
210
210
|
document.cookie = cookie;
|
|
211
211
|
}
|
|
212
|
-
logout() {
|
|
212
|
+
logout(reason = 'UCLO') {
|
|
213
|
+
console.log("REASON" + reason);
|
|
213
214
|
if (this.user) {
|
|
214
|
-
this.util.get('user/logout')
|
|
215
|
+
this.util.get('user/logout?logoutReason=' + reason)
|
|
215
216
|
.subscribe(res => {
|
|
216
217
|
this.reset();
|
|
217
218
|
}, err => {
|
|
@@ -359,4 +360,4 @@ export class LoginService {
|
|
|
359
360
|
providedIn: 'root'
|
|
360
361
|
}]
|
|
361
362
|
}], () => [{ type: i1.UtilService }, { type: i2.Storage }, { type: i3.ClaimantContextService }], null); })();
|
|
362
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUd6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBU25ELE1BQU0sT0FBTyxZQUFZO0lBWXZCLFdBQVcsQ0FBQyxRQUFpQjtRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFlO1FBQzNCLElBQUcsR0FBRyxFQUFDO1lBQ0wsSUFBSSxJQUFJLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7WUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO1lBQzdCLElBQUksQ0FBQyxR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QUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELHdCQUF3QixDQUFDLEtBQWM7UUFDckMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEtBQUssRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxjQUFjLENBQUMsSUFBYTtRQUMxQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxHQUFZO1FBQy9CLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsMEJBQTBCLEdBQUcsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVELGlDQUFpQyxDQUFDLE1BQWU7UUFDL0MsSUFBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxJQUFJLElBQUk7WUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWMsWUFBWSxNQUFNLEVBQUUsQ0FBQztpQkFDM0MsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDOzZFQTlaVSxZQUFZO3VFQUFaLFlBQVksV0FBWixZQUFZLG1CQUZYLE1BQU07O2lGQUVQLFlBQVk7Y0FIeEIsVUFBVTtlQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExpYkNvbnN0YW50cyB9IGZyb20gJy4uLy4uL21vZGVscy9MaWJDb25zdGFudHMnO1xuaW1wb3J0IHsgT3RwQXV0aE1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL090cEF1dGhNb2RlbCc7XG5pbXBvcnQgeyBVc2VyRGV0YWlsc01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1VzZXJEZXRhaWxzTW9kZWwnO1xuaW1wb3J0IHsgVXNlck1vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzL1VzZXJNb2RlbCc7XG5pbXBvcnQgeyBVdGlsU2VydmljZSB9IGZyb20gJy4uL3V0aWwvdXRpbC5zZXJ2aWNlJztcbmltcG9ydCB7IFN0b3JhZ2UgfSBmcm9tICdAaW9uaWMvc3RvcmFnZS1hbmd1bGFyJztcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAncHJpbWVuZy9hcGknO1xuaW1wb3J0IHsgQ2xhaW1hbnRDb250ZXh0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2NsYWltYW50LWNvbnRleHQvY2xhaW1hbnQtY29udGV4dC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTG9naW5TZXJ2aWNlIHtcblxuICBvcHRpb25zID0ge307XG5cbiAgcHJpdmF0ZSB1c2VyQnMgOiBCZWhhdmlvclN1YmplY3Q8VXNlck1vZGVsPiA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XG4gIHByaXZhdGUgdXNlcklkSW5Vbml0QnMgOiBCZWhhdmlvclN1YmplY3Q8VXNlck1vZGVsW10+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHJpdmF0ZSBtZW51QnMgOiBCZWhhdmlvclN1YmplY3Q8TWVudUl0ZW1bXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xuXG4gIHByaXZhdGUgdXNlciA6IFVzZXJNb2RlbDtcblxuICBwcml2YXRlIGF1dGhDb2RlIDogc3RyaW5nO1xuXG4gIHNldEF1dGhDb2RlKGF1dGhjb2RlIDogc3RyaW5nKXtcbiAgICB0aGlzLmF1dGhDb2RlID0gYXV0aGNvZGU7XG4gIH1cblxuICBnZXRBdXRoY29kZSgpe1xuICAgIHJldHVybiB0aGlzLmF1dGhDb2RlO1xuICB9XG5cbiAgZ2V0VXNlcigpIDogVXNlck1vZGVse1xuICAgIHJldHVybiB0aGlzLnVzZXJCcy5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgZ2V0VXNlckJzKCkgOiBCZWhhdmlvclN1YmplY3Q8VXNlck1vZGVsPntcbiAgICByZXR1cm4gdGhpcy51c2VyQnM7XG4gIH1cblxuICBnZXRNZW51QnMoKSA6IEJlaGF2aW9yU3ViamVjdDxNZW51SXRlbVtdPntcbiAgICByZXR1cm4gdGhpcy5tZW51QnM7XG4gIH1cblxuICBhc3luYyBzZXRVc2VyKHJlcyA6IFVzZXJNb2RlbCl7XG4gICAgaWYocmVzKXtcbiAgICAgIGxldCB1c2VyID0gbmV3IFVzZXJNb2RlbCgpO1xuICAgICAgdXNlci5maXJzdE5hbWUgPSByZXMuZmlyc3ROYW1lO1xuICAgICAgdXNlci5sYXN0TmFtZSA9IHJlcy5sYXN0TmFtZTtcbiAgICAgIHVzZXIudXNlcm5hbWUgPSByZXNbJ3VzZXJfbmFtZSddO1xuICAgICAgdXNlci5taWRkbGVOYW1lID0gcmVzLm1pZGRsZU5hbWU7XG4gICAgICB1c2VyLmlzQWN0aXZlID0gcmVzLmlzQWN0aXZlXG4gICAgICB1c2VyLnJvbGVzID0gcmVzLnJvbGVzO1xuICAgICAgdXNlci5mdW5jdGlvbnMgPSByZXMuZnVuY3Rpb25zO1xuICAgICAgdXNlci5kb2IgPSByZXMuZG9iO1xuICAgICAgdXNlci51c2VyVHlwZSA9IHJlcy51c2VyVHlwZTtcbiAgICAgIHVzZXIuZ2VuZGVyID0gcmVzLmdlbmRlcjtcbiAgICAgIHVzZXIuZW1haWxJZD1yZXMuZW1haWxJZDtcbiAgICAgIHVzZXIucGFzc3dvcmRFeHBpcmF0aW9uRGF0ZSA9IHJlcy5wYXNzd29yZEV4cGlyYXRpb25EYXRlO1xuICAgICAgdXNlci5lbWFpbFN0YXR1cyA9IHJlcy5lbWFpbFN0YXR1cztcbiAgICAgIHVzZXIuaXNMb2dnZWRJbiA9IHJlcy5pc0xvZ2dlZEluO1xuICAgICAgdXNlci5jaGFuZ2VQd2QgPSByZXMuY2hhbmdlUHdkO1xuICAgICAgdXNlci5leHBpcmF0aW9uID0gcmVzLmV4cGlyYXRpb247XG4gICAgICB1c2VyLmV4cGlyZXNfaW4gPSByZXMuZXhwaXJlc19pbjtcbiAgICAgIHVzZXIuc3NuID0gcmVzLnNzbjtcbiAgICAgIHVzZXIuY2xhaW1hbnRJZCA9IHJlcy5jbGFpbWFudElkO1xuICAgICAgdXNlci5lbXBsb3llcklkID0gcmVzLmVtcGxveWVySWQ7XG4gICAgICB1c2VyLmNvb2tpZU5hbWUgPSByZXMuY29va2llTmFtZTtcbiAgICAgIHVzZXIuY29va2llVmFsdWUgPSByZXMuY29va2llVmFsdWU7XG4gICAgICB1c2VyLnVzZXJVbml0ID0gcmVzLnVzZXJVbml0O1xuICAgICAgdXNlci5kb21haW5OYW1lID0gcmVzLmRvbWFpbk5hbWU7XG4gICAgICB1c2VyLmlzMkZBUmVxdWlyZWQgPSByZXMuaXMyRkFSZXF1aXJlZDtcbiAgICAgIHVzZXIuZGF5c1RpbGxQYXNzd29yZEV4cGlyZSA9IHJlcy5kYXlzVGlsbFBhc3N3b3JkRXhwaXJlO1xuICAgICAgdXNlci5pc0VtYWlsVmVyaWZpY2F0aW9uUmVxdWlyZWQgPSByZXMuaXNFbWFpbFZlcmlmaWNhdGlvblJlcXVpcmVkO1xuICAgICAgdXNlci5jZWxscGhvbmVObyA9IHJlcy5jZWxscGhvbmVObztcbiAgICAgIHVzZXIuY2VsbHBob25lU3RhdHVzID0gcmVzLmNlbGxwaG9uZVN0YXR1cztcbiAgICAgIHVzZXIuc3VwcG9ydGVkTWZhVHlwZXMgPSByZXMuc3VwcG9ydGVkTWZhVHlwZXM7XG4gICAgICBpZihyZXMuYWNjZXNzX3Rva2VuICYmIHJlcy5yZWZyZXNoX3Rva2VuKXtcbiAgICAgICAgdXNlci5hY2Nlc3NfdG9rZW4gPSByZXMuYWNjZXNzX3Rva2VuO1xuICAgICAgICB1c2VyLnJlZnJlc2hfdG9rZW4gPSByZXMucmVmcmVzaF90b2tlbjtcbiAgICAgICAgYXdhaXQgdGhpcy5zdG9yYWdlLnNldCgnYWNjZXNzX3Rva2VuJywgcmVzLmFjY2Vzc190b2tlbik7XG4gICAgICAgIGF3YWl0IHRoaXMuc3RvcmFnZS5zZXQoJ3JlZnJlc2hfdG9rZW4nLCByZXMucmVmcmVzaF90b2tlbik7XG4gICAgICB9ZWxzZXtcbiAgICAgICAgdXNlci5hY2Nlc3NfdG9rZW4gPSB0aGlzLnVzZXIuYWNjZXNzX3Rva2VuO1xuICAgICAgICB1c2VyLnJlZnJlc2hfdG9rZW4gPSB0aGlzLnVzZXIucmVmcmVzaF90b2tlbjtcbiAgICAgICAgYXdhaXQgdGhpcy5zdG9yYWdlLnNldCgnYWNjZXNzX3Rva2VuJywgdGhpcy51c2VyLmFjY2Vzc190b2tlbik7XG4gICAgICAgIGF3YWl0IHRoaXMuc3RvcmFnZS5zZXQoJ3JlZnJlc2hfdG9rZW4nLCB0aGlzLnVzZXIucmVmcmVzaF90b2tlbik7XG4gICAgICB9XG4gICAgICBhd2FpdCB0aGlzLnN0b3JhZ2Uuc2V0KCd1c2VybmFtZScsIGJ0b2EodXNlci51c2VybmFtZSkpO1xuICAgICAgbGV0IHNob3dfZGlzY2xvc3VyZSA9IGF3YWl0IHRoaXMuc3RvcmFnZS5nZXQoJ3Nob3dfZGlzY2xvc3VyZScpO1xuICAgICAgaWYoc2hvd19kaXNjbG9zdXJlID09IG51bGwgfHwgc2hvd19kaXNjbG9zdXJlID09IHVuZGVmaW5lZCB8fCBzaG93X2Rpc2Nsb3N1cmUgIT0gJ2ZhbHNlJyl7XG4gICAgICAgIGF3YWl0IHRoaXMuc3RvcmFnZS5zZXQoJ3Nob3dfZGlzY2xvc3VyZScsICd0cnVlJyk7XG4gICAgICB9XG4gICAgICB0aGlzLnVzZXIgPSB1c2VyO1xuICAgICAgdGhpcy51c2VyQnMubmV4dCh0aGlzLnVzZXIpO1xuICAgICAgaWYodGhpcy51dGlsLmlzU3RhdGUoJ21zJykpe1xuICAgICAgICBpZighdXNlci5pczJGQVJlcXVpcmVkKXtcbiAgICAgICAgICB0aGlzLmNyZWF0ZUNvb2tpZShMaWJDb25zdGFudHMuc3NvQ29va2llTmFtZSwgYFwiJHt1c2VyLmNvb2tpZVZhbHVlfVwiYCwgdXNlci5leHBpcmF0aW9uKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGdldEZ1bGxOYW1lKCl7XG4gICAgY29uc3QgbWlkID0gdGhpcy5nZXRVc2VyKCkubWlkZGxlTmFtZTtcbiAgICBjb25zdCBsYXN0ID0gdGhpcy5nZXRVc2VyKCkubGFzdE5hbWU7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VXNlcigpLmZpcnN0TmFtZVxuICAgICAgKyAobWlkICE9IG51bGwgJiYgbWlkICE9PSAnbnVsbCcgJiYgbWlkICE9PSAnJyA/ICcgJyArIG1pZCA6ICcnKVxuICAgICAgKyAobGFzdCAhPSBudWxsICYmIGxhc3QgIT09ICdudWxsJyAmJiBsYXN0ICE9PSAnJyA/ICcgJyArIGxhc3QgOiAnJyk7XG4gIH1cblxuICBnZXRJc1VzZXJQcm9maWxlQ29tcGxldGUoKXtcbiAgICAgIHJldHVybiB0aGlzLmdldFVzZXIoKS51c2VyUHJvZmlsZUNvbXBsZXRlO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIHV0aWwgOiBVdGlsU2VydmljZSwgcHJpdmF0ZSBzdG9yYWdlOiBTdG9yYWdlLCBwcml2YXRlIGNsYWltYW50Q29udGV4dFNlcnZpY2UgOiBDbGFpbWFudENvbnRleHRTZXJ2aWNlKSB7IFxuICAgIFxuICB9XG5cbiAgZ2V0VXNlclBlcnNvbmFsRGV0YWlscygpIDogT2JzZXJ2YWJsZTxVc2VyRGV0YWlsc01vZGVsPntcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldDxVc2VyRGV0YWlsc01vZGVsPigndXNlci9kZXRhaWxzLycgKyB0aGlzLnVzZXIudXNlcm5hbWUpO1xuICB9XG5cbiAgZ2VuZXJhdGVPdHAodXNlcklkIDogc3RyaW5nLCB0eXBlIDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldChgdXNlci92Mi9vdHAvJHt1c2VySWR9P3R5cGU9JHt0eXBlfWApO1xuICB9XG5cbiAgbG9naW4oYXV0aCA6IE90cEF1dGhNb2RlbCl7XG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgLy9cIkFjY2VwdFwiIDogXCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRcIlxuICAgIH0pO1xuICAgIHRoaXMub3B0aW9ucyA9IHsgaGVhZGVyczogaGVhZGVycyB9O1xuXG4gICAgbGV0IGF1dGhEYXRhIDogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBhdXRoRGF0YS5zZXQoJ2dyYW50X3R5cGUnLCAncGFzc3dvcmQnKTtcbiAgICBhdXRoRGF0YS5zZXQoJ3VzZXJuYW1lJywgYXV0aC51c2VySWQpO1xuICAgIGF1dGhEYXRhLnNldCgncGFzc3dvcmQnLCBhdXRoLnBhc3N3b3JkKTtcblxuICAgIHJldHVybiB0aGlzLnV0aWwucG9zdEZvcm1EYXRhPFVzZXJNb2RlbD4oJ29hdXRoL3Rva2VuJywgYXV0aERhdGEsdGhpcy5vcHRpb25zKTtcbiAgfVxuXG4gIGxvZ2luQW5kQ2hlY2tGb3JNRkEoYXV0aCA6IE90cEF1dGhNb2RlbCl7XG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgLy9cIkFjY2VwdFwiIDogXCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRcIlxuICAgIH0pO1xuICAgIHRoaXMub3B0aW9ucyA9IHsgaGVhZGVyczogaGVhZGVycyB9O1xuXG4gICAgbGV0IGF1dGhEYXRhIDogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBhdXRoRGF0YS5zZXQoJ2dyYW50X3R5cGUnLCAnbWZhJyk7XG4gICAgYXV0aERhdGEuc2V0KCd1c2VybmFtZScsIGF1dGgudXNlcklkKTtcbiAgICBhdXRoRGF0YS5zZXQoJ3Bhc3N3b3JkJywgYXV0aC5wYXNzd29yZCk7XG4gICAgaWYoYXV0aC5vdHApe1xuICAgICAgYXV0aERhdGEuc2V0KCdtZmFfY29kZScsIGF1dGgub3RwKTtcbiAgICAgIGF1dGhEYXRhLnNldCgnaXNfdHJ1c3RlZF9kZXZpY2UnLCBhdXRoLmlzdHJ1c3RlZERldmljZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0Rm9ybURhdGE8VXNlck1vZGVsPignb2F1dGgvdG9rZW4nLCBhdXRoRGF0YSx0aGlzLm9wdGlvbnMpO1xuICB9XG5cbiAgYXN5bmMgcmVmcmVzaFRva2VuKHJlZnJlc2hUb2tlbil7XG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgXCJBY2NlcHRcIiA6IFwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkXCIsXG4gICAgICAnQXV0aG9yaXphdGlvbic6IGBCYXNpYyBgICsgYnRvYShgJHtMaWJDb25zdGFudHMub2F1dGhDbGllbnRVc2VyfToke0xpYkNvbnN0YW50cy5vYXV0aENsaWVudFNlY3JldH1gKVxuICAgIH0pO1xuICAgIHRoaXMub3B0aW9ucyA9IHsgaGVhZGVyczogaGVhZGVycyB9O1xuXG4gICAgbGV0IGF1dGhEYXRhIDogRm9ybURhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICBhdXRoRGF0YS5zZXQoJ2dyYW50X3R5cGUnLCAncmVmcmVzaF90b2tlbicpO1xuICAgIGF1dGhEYXRhLnNldCgnY2xpZW50X2lkJywgTGliQ29uc3RhbnRzLm9hdXRoQ2xpZW50VXNlcik7XG4gICAgYXV0aERhdGEuc2V0KCdyZWZyZXNoX3Rva2VuJywgcmVmcmVzaFRva2VuKTtcblxuICAgIHJldHVybiB0aGlzLnV0aWwucG9zdEZvcm1EYXRhPFVzZXJNb2RlbD4oYG9hdXRoL3Rva2VuYCwgYXV0aERhdGEsIHRoaXMub3B0aW9ucykudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyByZWZyZXNoVG9rZW5XaW5ncyhyZWZyZXNoVG9rZW4pe1xuICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgIFwiQWNjZXB0XCIgOiBcImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZFwiLFxuICAgICAgJ0F1dGhvcml6YXRpb24nOiBgQmFzaWMgYCArIGJ0b2EoYCR7TGliQ29uc3RhbnRzLm9hdXRoV2luZ3NDbGllbnRVc2VyfToke0xpYkNvbnN0YW50cy5vYXV0aFdpbmdzQ2xpZW50U2VjcmV0fWApXG4gICAgfSk7XG4gICAgdGhpcy5vcHRpb25zID0geyBoZWFkZXJzOiBoZWFkZXJzIH07XG5cbiAgICBsZXQgYXV0aERhdGEgOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGF1dGhEYXRhLnNldCgnZ3JhbnRfdHlwZScsICdyZWZyZXNoX3Rva2VuJyk7XG4gICAgYXV0aERhdGEuc2V0KCdjbGllbnRfaWQnLCBMaWJDb25zdGFudHMub2F1dGhXaW5nc0NsaWVudFVzZXIpO1xuICAgIGF1dGhEYXRhLnNldCgncmVmcmVzaF90b2tlbicsIHJlZnJlc2hUb2tlbik7XG5cbiAgICByZXR1cm4gdGhpcy51dGlsLnBvc3RGb3JtRGF0YTxVc2VyTW9kZWw+KGBvYXV0aC90b2tlbmAsIGF1dGhEYXRhLCB0aGlzLm9wdGlvbnMpLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgY3JlYXRlVG9rZW5Qb3N0U3NvVmFsaWRhdGlvbigpe1xuICAgIGNvbnN0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoJ0NvbnRlbnQtVHlwZScsICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnKTtcbiAgICBjb25zdCBib2R5ID0gbmV3IFVSTFNlYXJjaFBhcmFtcyh7XG4gICAgICBncmFudF90eXBlOiAnY3VzdG9tX3NzbydcbiAgICB9KS50b1N0cmluZygpO1xuXG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0Rm9ybURhdGE8VXNlck1vZGVsPignb2F1dGgvdG9rZW4nLCBib2R5LCB7IGhlYWRlcnMsd2l0aENyZWRlbnRpYWxzOiB0cnVlIH0pLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgbG9hZFVzZXJJbmZvKCl7XG4gICAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgIFwiQWNjZXB0XCIgOiBcImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZFwiXG4gICAgICB9KTtcbiAgICAgIHRoaXMub3B0aW9ucyA9IHsgaGVhZGVyczogaGVhZGVycyB9O1xuICAgICAgbGV0IGF1dGhUb2tlbiA9IGF3YWl0IHRoaXMuZ2V0U3RvcmVkQWNjZXNzVG9wZW4oKTtcbiAgICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0PFVzZXJNb2RlbD4oYG9hdXRoL2NoZWNrX3Rva2VuP3Rva2VuPSR7YXV0aFRva2VufWApLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0U3RvcmVkQWNjZXNzVG9wZW4oKXtcbiAgICBsZXQgYWNjZXNzVG9rZW4gPSBhd2FpdCB0aGlzLnN0b3JhZ2UuZ2V0KCdhY2Nlc3NfdG9rZW4nKS50aGVuKHJlcyA9PiByZXMpO1xuICAgIHJldHVybiBhY2Nlc3NUb2tlbjtcbiAgfVxuXG4gIGdlbmVyYXRlT3RwVW5yZWdpc3RlcmVkKG1vYmlsZU5vIDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldCgnYXV0aC9vdHAvbmV3dXNlci8nICsgbW9iaWxlTm8pO1xuICB9XG5cbiAgc2lnblVwKHVzZXJNb2RlbCA6IFVzZXJNb2RlbCl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0KCd1c2VyJywgdXNlck1vZGVsKTtcbiAgfVxuXG4gIHVwZGF0ZVBlcnNvbmFsRGV0YWlscyh1c3JEdGxzIDogVXNlckRldGFpbHNNb2RlbCl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0KCd1c2VyL2RldGFpbHMnLCB1c3JEdGxzKTtcbiAgfVxuXG4gIHJlc2V0KCl7XG4gICAgdGhpcy51c2VyID0gbnVsbDtcbiAgICB0aGlzLnVzZXJCcy5uZXh0KG51bGwpO1xuICAgIHRoaXMubWVudUJzLm5leHQobnVsbCk7XG4gICAgdGhpcy5zdG9yYWdlLnJlbW92ZSgnYWNjZXNzX3Rva2VuJyk7XG4gICAgdGhpcy5zdG9yYWdlLnJlbW92ZSgncmVmcmVzaF90b2tlbicpO1xuICAgIHRoaXMuc3RvcmFnZS5yZW1vdmUoJ3Nob3dfZGlzY2xvc3VyZScpO1xuICAgIHRoaXMuc3RvcmFnZS5yZW1vdmUoJ3VzZXJuYW1lJyk7XG4gICAgdGhpcy5jbGFpbWFudENvbnRleHRTZXJ2aWNlLmNsZWFyQ29udGV4dCgpO1xuICAgIHRoaXMucmVtb3ZlQ29va2llcygpO1xuICB9XG5cbiAgcmVtb3ZlQ29va2llcygpe1xuICAgIHRoaXMuZGVsZXRlQ29va2llKCdhdCcpO1xuICAgIHRoaXMuZGVsZXRlQ29va2llKCdydCcpO1xuICAgIHRoaXMuZGVsZXRlQ29va2llKExpYkNvbnN0YW50cy5zc29Db29raWVOYW1lKTtcbiAgfVxuXG4gIGRlbGV0ZUNvb2tpZShjb29raWVOYW1lKXtcbiAgICBsZXQgY29va2llID0gYCR7Y29va2llTmFtZX09OyBNYXgtQWdlPTA7IHBhdGg9LzsgZG9tYWluPSR7TGliQ29uc3RhbnRzLnNzb0RvbWFpbn1gO1xuICAgIGRvY3VtZW50LmNvb2tpZSA9IGNvb2tpZTtcbiAgfVxuXG4gIGNyZWF0ZUNvb2tpZShjb29raWVOYW1lLCB2YWx1ZSwgZXhwaXJhdGlvbil7XG4gICAgbGV0IGNvb2tpZSA9IGAke2Nvb2tpZU5hbWV9PSR7dmFsdWV9OyBleHBpcmVzPSR7ZXhwaXJhdGlvbiArICcuMDAwJ307IHBhdGg9LzsgZG9tYWluPSR7TGliQ29uc3RhbnRzLnNzb0RvbWFpbn1gO1xuICAgIGRvY3VtZW50LmNvb2tpZSA9IGNvb2tpZTtcbiAgfVxuXG4gIGxvZ291dCgpe1xuICAgIGlmKHRoaXMudXNlcil7XG4gICAgICB0aGlzLnV0aWwuZ2V0KCd1c2VyL2xvZ291dCcpXG4gICAgICAuc3Vic2NyaWJlKFxuICAgICAgICByZXMgPT4ge1xuICAgICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyID0+IHtcbiAgICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgICAgICAgdGhpcy51dGlsLmVycm9ySGFuZGxlcihlcnIpO1xuICAgICAgICB9XG4gICAgICApXG4gICAgfWVsc2V7XG4gICAgICB0aGlzLnJlc2V0KCk7XG4gICAgfVxuICB9XG5cbiAgaXNMb2dnZWRJbigpe1xuICAgIHJldHVybiB0aGlzLnVzZXIgJiYgdGhpcy51c2VyLmlzTG9nZ2VkSW47XG4gIH1cblxuICBpczJGQVJlcXVpcmVkKCl7XG4gICAgcmV0dXJuIHRoaXMudXNlciAmJiB0aGlzLnVzZXIuaXMyRkFSZXF1aXJlZDtcbiAgfVxuXG4gIHVwZGF0ZVByb2ZpbGUodXNlciA6IFVzZXJNb2RlbCl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0KCd1c2VyL3Byb2ZpbGUnLCB1c2VyKTtcbiAgfVxuXG4gIHVwZGF0ZVBhc3N3b3JkKG9sZFBhc3N3b3JkLCBuZXdQYXNzd29yZCwgY29uZmlybVBhc3N3b3JkKXtcbiAgICBsZXQgcHdkQ2hhbmdlTW9kZWwgOiB7b2xkUGFzc3dvcmQ6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZywgY29uZmlybVBhc3N3b3JkOiBzdHJpbmd9ID0ge29sZFBhc3N3b3JkOiBvbGRQYXNzd29yZCwgcGFzc3dvcmQ6IG5ld1Bhc3N3b3JkLCBjb25maXJtUGFzc3dvcmQ6IGNvbmZpcm1QYXNzd29yZH07XG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0KGB1c2VyL3Bhc3N3b3JkLyR7dGhpcy5nZXRVc2VyKCkudXNlcm5hbWV9YCwgcHdkQ2hhbmdlTW9kZWwpO1xuICB9XG5cbiAgaW5pdGlhdGVGb3Jnb3RQYXNzd29yZCh1c2VySWQgOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0KGB1c2VyL3Bhc3N3b3JkL3Jlc2V0LyR7dXNlcklkfWApO1xuICB9XG5cbiAgaW5pdGlhdGVGb3Jnb3RQYXNzd29yZFYyKHVzZXJJZCA6IHN0cmluZyl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5nZXQoYHVzZXIvdjIvcGFzc3dvcmQvcmVzZXQvJHt1c2VySWR9YCk7XG4gIH1cblxuICBoYXNSb2xlKHJvbGVOYW1lIDogc3RyaW5nKSA6IGJvb2xlYW57XG4gICAgcmV0dXJuIHRoaXMudXNlciAmJiB0aGlzLnVzZXIucm9sZXMgJiYgdGhpcy51c2VyLnJvbGVzLmluY2x1ZGVzKHJvbGVOYW1lKTtcbiAgfVxuXG4gIGhhc0Z1bmN0aW9uKGZ1bmN0aW9uTmFtZSA6IHN0cmluZykgOiBib29sZWFue1xuICAgIHJldHVybiB0aGlzLnVzZXIgJiYgdGhpcy51c2VyLmZ1bmN0aW9ucyAmJiB0aGlzLnVzZXIuZnVuY3Rpb25zLmluY2x1ZGVzKGZ1bmN0aW9uTmFtZSk7XG4gIH1cblxuICBoYXNSb2xlcyguLi5yb2xlcyA6IHN0cmluZ1tdKXtcbiAgICBsZXQgaXNQcmVzZW50ID0gZmFsc2U7XG4gICAgZm9yKHZhciBpID0gMCA7IGkgPCByb2xlcy5sZW5ndGggOyBpKyspe1xuICAgICAgaWYodGhpcy5oYXNSb2xlKHJvbGVzW2ldLnRvU3RyaW5nKCkpKXtcbiAgICAgICAgaXNQcmVzZW50ID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBpc1ByZXNlbnQ7XG4gIH1cblxuICBoYXNGdW5jdGlvbnMoLi4uZnVuY3Rpb25zIDogc3RyaW5nW10pe1xuICAgIGxldCBpc1ByZXNlbnQgPSBmYWxzZTtcbiAgICBmb3IodmFyIGkgPSAwIDsgaSA8IGZ1bmN0aW9ucy5sZW5ndGggOyBpKyspe1xuICAgICAgaWYodGhpcy5oYXNGdW5jdGlvbihmdW5jdGlvbnNbaV0pKXtcbiAgICAgICAgaXNQcmVzZW50ID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBpc1ByZXNlbnQ7XG4gIH1cblxuICBjaGVja1JvbGVzKHJvbGVzIDogc3RyaW5nW10pe1xuICAgIGxldCBpc1ByZXNlbnQgPSBmYWxzZTtcbiAgICBmb3IodmFyIGkgPSAwIDsgaSA8IHJvbGVzLmxlbmd0aCA7IGkrKyl7XG4gICAgICBpZih0aGlzLmhhc1JvbGUocm9sZXNbaV0udG9TdHJpbmcoKSkpe1xuICAgICAgICBpc1ByZXNlbnQgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGlzUHJlc2VudDtcbiAgfVxuXG4gIGNoZWNrRnVuY3Rpb25zKGZ1bmN0aW9ucyA6IHN0cmluZ1tdKXtcbiAgICBsZXQgaXNQcmVzZW50ID0gZmFsc2U7XG4gICAgZm9yKHZhciBpID0gMCA7IGkgPCBmdW5jdGlvbnMubGVuZ3RoIDsgaSsrKXtcbiAgICAgIGlmKHRoaXMuaGFzRnVuY3Rpb24oZnVuY3Rpb25zW2ldKSl7XG4gICAgICAgIGlzUHJlc2VudCA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gaXNQcmVzZW50O1xuICB9XG5cbiAgaXNDc3IoKXtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyKCkgJiYgdGhpcy5nZXRVc2VyKCkudXNlclR5cGUgPT09ICdNREVTJ1xuICB9XG5cbiAgaXNUYXhBdWRpdFN1cGVydmlzb3IoKXtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyKCkgJiYgdGhpcy5oYXNSb2xlKCd0YXhhdWRpdHN1cGVydmlzb3InKSAmJnRoaXMuZ2V0VXNlcigpLnVzZXJUeXBlID09PSAnTURFUycgXG4gIH1cblxuICBpc1RheEF1ZGl0QXVkaXRvcigpe1xuICAgIHJldHVybiB0aGlzLmdldFVzZXIoKSAmJiB0aGlzLmhhc1JvbGUoJ3RheGF1ZGl0c3BlY2lhbGlzdCcpICYmIHRoaXMuZ2V0VXNlcigpLnVzZXJUeXBlID09PSAnTURFUydcbiAgfVxuXG4gIGlzVGF4QXVkaXREaXJlY3Rvcigpe1xuICAgIHJldHVybiB0aGlzLmdldFVzZXIoKSAmJiB0aGlzLmhhc1JvbGUoJ3RheEF1ZGl0RGlyZWN0b3InKSAmJiB0aGlzLmdldFVzZXIoKS51c2VyVHlwZSA9PT0gJ01ERVMnXG4gIH1cblxuICBpc0VtcGxveWVyKCl7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VXNlcigpICYmIHRoaXMuZ2V0VXNlcigpLnVzZXJUeXBlID09PSAnRU1QTCdcbiAgfVxuXG4gIGlzVHBhKCl7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VXNlcigpICYmIHRoaXMuZ2V0VXNlcigpLnVzZXJUeXBlID09PSAnVFBBJ1xuICB9XG5cbiAgaXNDbGFpbWFudCgpe1xuICAgIHJldHVybiB0aGlzLmdldFVzZXIoKSAmJiB0aGlzLmdldFVzZXIoKS51c2VyVHlwZSA9PT0gJ0NMTVQnXG4gIH1cblxuICBoYXNTc25Bc3NvY2lhdGVkKCkgOiBib29sZWFue1xuICAgIHJldHVybiB0aGlzLmdldFVzZXIoKSAmJiB0aGlzLmdldFVzZXIoKS51c2VyVHlwZSA9PT0gJ0NMTVQnICYmIHRoaXMuZ2V0VXNlcigpLnNzbiAhPT0gdW5kZWZpbmVkIFxuICB9XG5cbiAgZ2V0VXNlck1lbnVzKCl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5nZXQ8TWVudUl0ZW1bXT4oYG1lbnUvYCk7XG4gIH1cblxuICBtYXJrRmF2KG1lbnVJZCA6IHN0cmluZyl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0PE1lbnVJdGVtW10+KGBtZW51L2Zhdi8ke21lbnVJZH1gLCBudWxsKTtcbiAgfVxuXG4gIHJlbW92ZUZhdihtZW51SWQgOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZGVsZXRlPE1lbnVJdGVtW10+KGBtZW51L2Zhdi8ke21lbnVJZH1gKTtcbiAgfVxuXG4gIGdldEZhdm91cml0ZU1lbnUoKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldDxNZW51SXRlbVtdPihgbWVudS9mYXZgKTtcbiAgfVxuXG4gIGdldFRyZW5kaW5nTWVudSgpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0PE1lbnVJdGVtW10+KGBtZW51L3RyZW5kaW5nYCk7XG4gIH1cblxuICB2ZXJpZnlFbWFpbChjb2RlIDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLnBvc3QoYHVzZXIvZW1haWwvJHtjb2RlfWAsIG51bGwpO1xuICB9XG5cbiAgZ2V0TmV3Q29kZSgpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0KGB1c2VyL2VtYWlsYCk7XG4gIH1cblxuICB1cGRhdGVFbWFpbEFuZEdldE5ld0NvZGUoZW1haWwgOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwucGF0Y2goYHVzZXIvZW1haWwvJHtlbWFpbH1gLCBudWxsKTtcbiAgfVxuXG4gIGdldE5ld0F1dGhDb2RlKHR5cGUgOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0KGB1c2VyL290cD90eXBlPSR7dHlwZX1gKTtcbiAgfVxuXG4gIGFzc29jaWF0ZVNzblRvVXNlcklkKHNzbiA6IHN0cmluZyl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0KGBjbGFpbWFudC9hc3NvY2lhdGUtc3NuLyR7c3NufWAsIG51bGwpO1xuICB9XG5cbiAgZ2V0VXNlcklkSW5Vbml0QnMoKXtcbiAgICByZXR1cm4gdGhpcy51c2VySWRJblVuaXRCcztcbiAgfVxuXG4gIGxvYWRVc2VySWRzRnJvbVVuaXRPZkxvZ2dlZEluVXNlcih1bml0SWQgOiBzdHJpbmcpe1xuICAgIGlmKHRoaXMudXNlcklkSW5Vbml0QnMuZ2V0VmFsdWUoKSA9PSBudWxsKVxuICAgICAgdGhpcy51dGlsLmdldDxVc2VyTW9kZWxbXT4oYHVzZXIvYWxsLyR7dW5pdElkfWApXG4gICAgICAgICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy51c2VySWRJblVuaXRCcy5uZXh0KHJlcykpO1xuICB9XG59XG4iXX0=
|
|
363
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1yZXVzYS1hcHAtbGliL3NyYy9saWIvc2VydmljZXMvbG9naW4vbG9naW4uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUd6RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7Ozs7O0FBU25ELE1BQU0sT0FBTyxZQUFZO0lBWXZCLFdBQVcsQ0FBQyxRQUFpQjtRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMzQixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsT0FBTztRQUNMLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFlO1FBQzNCLElBQUcsR0FBRyxFQUFDO1lBQ0wsSUFBSSxJQUFJLEdBQUcsSUFBSSxTQUFTLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7WUFDL0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO1lBQzdCLElBQUksQ0FBQyxR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eyBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTGliQ29uc3RhbnRzIH0gZnJvbSAnLi4vLi4vbW9kZWxzL0xpYkNvbnN0YW50cyc7XG5pbXBvcnQgeyBPdHBBdXRoTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvT3RwQXV0aE1vZGVsJztcbmltcG9ydCB7IFVzZXJEZXRhaWxzTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvVXNlckRldGFpbHNNb2RlbCc7XG5pbXBvcnQgeyBVc2VyTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvVXNlck1vZGVsJztcbmltcG9ydCB7IFV0aWxTZXJ2aWNlIH0gZnJvbSAnLi4vdXRpbC91dGlsLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RvcmFnZSB9IGZyb20gJ0Bpb25pYy9zdG9yYWdlLWFuZ3VsYXInO1xuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBDbGFpbWFudENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2xhaW1hbnQtY29udGV4dC9jbGFpbWFudC1jb250ZXh0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMb2dpblNlcnZpY2Uge1xuXG4gIG9wdGlvbnMgPSB7fTtcblxuICBwcml2YXRlIHVzZXJCcyA6IEJlaGF2aW9yU3ViamVjdDxVc2VyTW9kZWw+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChudWxsKTtcbiAgcHJpdmF0ZSB1c2VySWRJblVuaXRCcyA6IEJlaGF2aW9yU3ViamVjdDxVc2VyTW9kZWxbXT4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KG51bGwpO1xuICBwcml2YXRlIG1lbnVCcyA6IEJlaGF2aW9yU3ViamVjdDxNZW51SXRlbVtdPiA9IG5ldyBCZWhhdmlvclN1YmplY3QobnVsbCk7XG5cbiAgcHJpdmF0ZSB1c2VyIDogVXNlck1vZGVsO1xuXG4gIHByaXZhdGUgYXV0aENvZGUgOiBzdHJpbmc7XG5cbiAgc2V0QXV0aENvZGUoYXV0aGNvZGUgOiBzdHJpbmcpe1xuICAgIHRoaXMuYXV0aENvZGUgPSBhdXRoY29kZTtcbiAgfVxuXG4gIGdldEF1dGhjb2RlKCl7XG4gICAgcmV0dXJuIHRoaXMuYXV0aENvZGU7XG4gIH1cblxuICBnZXRVc2VyKCkgOiBVc2VyTW9kZWx7XG4gICAgcmV0dXJuIHRoaXMudXNlckJzLmdldFZhbHVlKCk7XG4gIH1cblxuICBnZXRVc2VyQnMoKSA6IEJlaGF2aW9yU3ViamVjdDxVc2VyTW9kZWw+e1xuICAgIHJldHVybiB0aGlzLnVzZXJCcztcbiAgfVxuXG4gIGdldE1lbnVCcygpIDogQmVoYXZpb3JTdWJqZWN0PE1lbnVJdGVtW10+e1xuICAgIHJldHVybiB0aGlzLm1lbnVCcztcbiAgfVxuXG4gIGFzeW5jIHNldFVzZXIocmVzIDogVXNlck1vZGVsKXtcbiAgICBpZihyZXMpe1xuICAgICAgbGV0IHVzZXIgPSBuZXcgVXNlck1vZGVsKCk7XG4gICAgICB1c2VyLmZpcnN0TmFtZSA9IHJlcy5maXJzdE5hbWU7XG4gICAgICB1c2VyLmxhc3ROYW1lID0gcmVzLmxhc3ROYW1lO1xuICAgICAgdXNlci51c2VybmFtZSA9IHJlc1sndXNlcl9uYW1lJ107XG4gICAgICB1c2VyLm1pZGRsZU5hbWUgPSByZXMubWlkZGxlTmFtZTtcbiAgICAgIHVzZXIuaXNBY3RpdmUgPSByZXMuaXNBY3RpdmVcbiAgICAgIHVzZXIucm9sZXMgPSByZXMucm9sZXM7XG4gICAgICB1c2VyLmZ1bmN0aW9ucyA9IHJlcy5mdW5jdGlvbnM7XG4gICAgICB1c2VyLmRvYiA9IHJlcy5kb2I7XG4gICAgICB1c2VyLnVzZXJUeXBlID0gcmVzLnVzZXJUeXBlO1xuICAgICAgdXNlci5nZW5kZXIgPSByZXMuZ2VuZGVyO1xuICAgICAgdXNlci5lbWFpbElkPXJlcy5lbWFpbElkO1xuICAgICAgdXNlci5wYXNzd29yZEV4cGlyYXRpb25EYXRlID0gcmVzLnBhc3N3b3JkRXhwaXJhdGlvbkRhdGU7XG4gICAgICB1c2VyLmVtYWlsU3RhdHVzID0gcmVzLmVtYWlsU3RhdHVzO1xuICAgICAgdXNlci5pc0xvZ2dlZEluID0gcmVzLmlzTG9nZ2VkSW47XG4gICAgICB1c2VyLmNoYW5nZVB3ZCA9IHJlcy5jaGFuZ2VQd2Q7XG4gICAgICB1c2VyLmV4cGlyYXRpb24gPSByZXMuZXhwaXJhdGlvbjtcbiAgICAgIHVzZXIuZXhwaXJlc19pbiA9IHJlcy5leHBpcmVzX2luO1xuICAgICAgdXNlci5zc24gPSByZXMuc3NuO1xuICAgICAgdXNlci5jbGFpbWFudElkID0gcmVzLmNsYWltYW50SWQ7XG4gICAgICB1c2VyLmVtcGxveWVySWQgPSByZXMuZW1wbG95ZXJJZDtcbiAgICAgIHVzZXIuY29va2llTmFtZSA9IHJlcy5jb29raWVOYW1lO1xuICAgICAgdXNlci5jb29raWVWYWx1ZSA9IHJlcy5jb29raWVWYWx1ZTtcbiAgICAgIHVzZXIudXNlclVuaXQgPSByZXMudXNlclVuaXQ7XG4gICAgICB1c2VyLmRvbWFpbk5hbWUgPSByZXMuZG9tYWluTmFtZTtcbiAgICAgIHVzZXIuaXMyRkFSZXF1aXJlZCA9IHJlcy5pczJGQVJlcXVpcmVkO1xuICAgICAgdXNlci5kYXlzVGlsbFBhc3N3b3JkRXhwaXJlID0gcmVzLmRheXNUaWxsUGFzc3dvcmRFeHBpcmU7XG4gICAgICB1c2VyLmlzRW1haWxWZXJpZmljYXRpb25SZXF1aXJlZCA9IHJlcy5pc0VtYWlsVmVyaWZpY2F0aW9uUmVxdWlyZWQ7XG4gICAgICB1c2VyLmNlbGxwaG9uZU5vID0gcmVzLmNlbGxwaG9uZU5vO1xuICAgICAgdXNlci5jZWxscGhvbmVTdGF0dXMgPSByZXMuY2VsbHBob25lU3RhdHVzO1xuICAgICAgdXNlci5zdXBwb3J0ZWRNZmFUeXBlcyA9IHJlcy5zdXBwb3J0ZWRNZmFUeXBlcztcbiAgICAgIGlmKHJlcy5hY2Nlc3NfdG9rZW4gJiYgcmVzLnJlZnJlc2hfdG9rZW4pe1xuICAgICAgICB1c2VyLmFjY2Vzc190b2tlbiA9IHJlcy5hY2Nlc3NfdG9rZW47XG4gICAgICAgIHVzZXIucmVmcmVzaF90b2tlbiA9IHJlcy5yZWZyZXNoX3Rva2VuO1xuICAgICAgICBhd2FpdCB0aGlzLnN0b3JhZ2Uuc2V0KCdhY2Nlc3NfdG9rZW4nLCByZXMuYWNjZXNzX3Rva2VuKTtcbiAgICAgICAgYXdhaXQgdGhpcy5zdG9yYWdlLnNldCgncmVmcmVzaF90b2tlbicsIHJlcy5yZWZyZXNoX3Rva2VuKTtcbiAgICAgIH1lbHNle1xuICAgICAgICB1c2VyLmFjY2Vzc190b2tlbiA9IHRoaXMudXNlci5hY2Nlc3NfdG9rZW47XG4gICAgICAgIHVzZXIucmVmcmVzaF90b2tlbiA9IHRoaXMudXNlci5yZWZyZXNoX3Rva2VuO1xuICAgICAgICBhd2FpdCB0aGlzLnN0b3JhZ2Uuc2V0KCdhY2Nlc3NfdG9rZW4nLCB0aGlzLnVzZXIuYWNjZXNzX3Rva2VuKTtcbiAgICAgICAgYXdhaXQgdGhpcy5zdG9yYWdlLnNldCgncmVmcmVzaF90b2tlbicsIHRoaXMudXNlci5yZWZyZXNoX3Rva2VuKTtcbiAgICAgIH1cbiAgICAgIGF3YWl0IHRoaXMuc3RvcmFnZS5zZXQoJ3VzZXJuYW1lJywgYnRvYSh1c2VyLnVzZXJuYW1lKSk7XG4gICAgICBsZXQgc2hvd19kaXNjbG9zdXJlID0gYXdhaXQgdGhpcy5zdG9yYWdlLmdldCgnc2hvd19kaXNjbG9zdXJlJyk7XG4gICAgICBpZihzaG93X2Rpc2Nsb3N1cmUgPT0gbnVsbCB8fCBzaG93X2Rpc2Nsb3N1cmUgPT0gdW5kZWZpbmVkIHx8IHNob3dfZGlzY2xvc3VyZSAhPSAnZmFsc2UnKXtcbiAgICAgICAgYXdhaXQgdGhpcy5zdG9yYWdlLnNldCgnc2hvd19kaXNjbG9zdXJlJywgJ3RydWUnKTtcbiAgICAgIH1cbiAgICAgIHRoaXMudXNlciA9IHVzZXI7XG4gICAgICB0aGlzLnVzZXJCcy5uZXh0KHRoaXMudXNlcik7XG4gICAgICBpZih0aGlzLnV0aWwuaXNTdGF0ZSgnbXMnKSl7XG4gICAgICAgIGlmKCF1c2VyLmlzMkZBUmVxdWlyZWQpe1xuICAgICAgICAgIHRoaXMuY3JlYXRlQ29va2llKExpYkNvbnN0YW50cy5zc29Db29raWVOYW1lLCBgXCIke3VzZXIuY29va2llVmFsdWV9XCJgLCB1c2VyLmV4cGlyYXRpb24pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZ2V0RnVsbE5hbWUoKXtcbiAgICBjb25zdCBtaWQgPSB0aGlzLmdldFVzZXIoKS5taWRkbGVOYW1lO1xuICAgIGNvbnN0IGxhc3QgPSB0aGlzLmdldFVzZXIoKS5sYXN0TmFtZTtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyKCkuZmlyc3ROYW1lXG4gICAgICArIChtaWQgIT0gbnVsbCAmJiBtaWQgIT09ICdudWxsJyAmJiBtaWQgIT09ICcnID8gJyAnICsgbWlkIDogJycpXG4gICAgICArIChsYXN0ICE9IG51bGwgJiYgbGFzdCAhPT0gJ251bGwnICYmIGxhc3QgIT09ICcnID8gJyAnICsgbGFzdCA6ICcnKTtcbiAgfVxuXG4gIGdldElzVXNlclByb2ZpbGVDb21wbGV0ZSgpe1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0VXNlcigpLnVzZXJQcm9maWxlQ29tcGxldGU7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdXRpbCA6IFV0aWxTZXJ2aWNlLCBwcml2YXRlIHN0b3JhZ2U6IFN0b3JhZ2UsIHByaXZhdGUgY2xhaW1hbnRDb250ZXh0U2VydmljZSA6IENsYWltYW50Q29udGV4dFNlcnZpY2UpIHsgXG4gICAgXG4gIH1cblxuICBnZXRVc2VyUGVyc29uYWxEZXRhaWxzKCkgOiBPYnNlcnZhYmxlPFVzZXJEZXRhaWxzTW9kZWw+e1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0PFVzZXJEZXRhaWxzTW9kZWw+KCd1c2VyL2RldGFpbHMvJyArIHRoaXMudXNlci51c2VybmFtZSk7XG4gIH1cblxuICBnZW5lcmF0ZU90cCh1c2VySWQgOiBzdHJpbmcsIHR5cGUgOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0KGB1c2VyL3YyL290cC8ke3VzZXJJZH0/dHlwZT0ke3R5cGV9YCk7XG4gIH1cblxuICBsb2dpbihhdXRoIDogT3RwQXV0aE1vZGVsKXtcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAvL1wiQWNjZXB0XCIgOiBcImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZFwiXG4gICAgfSk7XG4gICAgdGhpcy5vcHRpb25zID0geyBoZWFkZXJzOiBoZWFkZXJzIH07XG5cbiAgICBsZXQgYXV0aERhdGEgOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGF1dGhEYXRhLnNldCgnZ3JhbnRfdHlwZScsICdwYXNzd29yZCcpO1xuICAgIGF1dGhEYXRhLnNldCgndXNlcm5hbWUnLCBhdXRoLnVzZXJJZCk7XG4gICAgYXV0aERhdGEuc2V0KCdwYXNzd29yZCcsIGF1dGgucGFzc3dvcmQpO1xuXG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0Rm9ybURhdGE8VXNlck1vZGVsPignb2F1dGgvdG9rZW4nLCBhdXRoRGF0YSx0aGlzLm9wdGlvbnMpO1xuICB9XG5cbiAgbG9naW5BbmRDaGVja0Zvck1GQShhdXRoIDogT3RwQXV0aE1vZGVsKXtcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAvL1wiQWNjZXB0XCIgOiBcImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZFwiXG4gICAgfSk7XG4gICAgdGhpcy5vcHRpb25zID0geyBoZWFkZXJzOiBoZWFkZXJzIH07XG5cbiAgICBsZXQgYXV0aERhdGEgOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGF1dGhEYXRhLnNldCgnZ3JhbnRfdHlwZScsICdtZmEnKTtcbiAgICBhdXRoRGF0YS5zZXQoJ3VzZXJuYW1lJywgYXV0aC51c2VySWQpO1xuICAgIGF1dGhEYXRhLnNldCgncGFzc3dvcmQnLCBhdXRoLnBhc3N3b3JkKTtcbiAgICBpZihhdXRoLm90cCl7XG4gICAgICBhdXRoRGF0YS5zZXQoJ21mYV9jb2RlJywgYXV0aC5vdHApO1xuICAgICAgYXV0aERhdGEuc2V0KCdpc190cnVzdGVkX2RldmljZScsIGF1dGguaXN0cnVzdGVkRGV2aWNlKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy51dGlsLnBvc3RGb3JtRGF0YTxVc2VyTW9kZWw+KCdvYXV0aC90b2tlbicsIGF1dGhEYXRhLHRoaXMub3B0aW9ucyk7XG4gIH1cblxuICBhc3luYyByZWZyZXNoVG9rZW4ocmVmcmVzaFRva2VuKXtcbiAgICBsZXQgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICBcIkFjY2VwdFwiIDogXCJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWRcIixcbiAgICAgICdBdXRob3JpemF0aW9uJzogYEJhc2ljIGAgKyBidG9hKGAke0xpYkNvbnN0YW50cy5vYXV0aENsaWVudFVzZXJ9OiR7TGliQ29uc3RhbnRzLm9hdXRoQ2xpZW50U2VjcmV0fWApXG4gICAgfSk7XG4gICAgdGhpcy5vcHRpb25zID0geyBoZWFkZXJzOiBoZWFkZXJzIH07XG5cbiAgICBsZXQgYXV0aERhdGEgOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGF1dGhEYXRhLnNldCgnZ3JhbnRfdHlwZScsICdyZWZyZXNoX3Rva2VuJyk7XG4gICAgYXV0aERhdGEuc2V0KCdjbGllbnRfaWQnLCBMaWJDb25zdGFudHMub2F1dGhDbGllbnRVc2VyKTtcbiAgICBhdXRoRGF0YS5zZXQoJ3JlZnJlc2hfdG9rZW4nLCByZWZyZXNoVG9rZW4pO1xuXG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0Rm9ybURhdGE8VXNlck1vZGVsPihgb2F1dGgvdG9rZW5gLCBhdXRoRGF0YSwgdGhpcy5vcHRpb25zKS50b1Byb21pc2UoKTtcbiAgfVxuXG4gIGFzeW5jIHJlZnJlc2hUb2tlbldpbmdzKHJlZnJlc2hUb2tlbil7XG4gICAgbGV0IGhlYWRlcnMgPSBuZXcgSHR0cEhlYWRlcnMoe1xuICAgICAgXCJBY2NlcHRcIiA6IFwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkXCIsXG4gICAgICAnQXV0aG9yaXphdGlvbic6IGBCYXNpYyBgICsgYnRvYShgJHtMaWJDb25zdGFudHMub2F1dGhXaW5nc0NsaWVudFVzZXJ9OiR7TGliQ29uc3RhbnRzLm9hdXRoV2luZ3NDbGllbnRTZWNyZXR9YClcbiAgICB9KTtcbiAgICB0aGlzLm9wdGlvbnMgPSB7IGhlYWRlcnM6IGhlYWRlcnMgfTtcblxuICAgIGxldCBhdXRoRGF0YSA6IEZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgYXV0aERhdGEuc2V0KCdncmFudF90eXBlJywgJ3JlZnJlc2hfdG9rZW4nKTtcbiAgICBhdXRoRGF0YS5zZXQoJ2NsaWVudF9pZCcsIExpYkNvbnN0YW50cy5vYXV0aFdpbmdzQ2xpZW50VXNlcik7XG4gICAgYXV0aERhdGEuc2V0KCdyZWZyZXNoX3Rva2VuJywgcmVmcmVzaFRva2VuKTtcblxuICAgIHJldHVybiB0aGlzLnV0aWwucG9zdEZvcm1EYXRhPFVzZXJNb2RlbD4oYG9hdXRoL3Rva2VuYCwgYXV0aERhdGEsIHRoaXMub3B0aW9ucykudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBjcmVhdGVUb2tlblBvc3RTc29WYWxpZGF0aW9uKCl7XG4gICAgY29uc3QgaGVhZGVycyA9IG5ldyBIdHRwSGVhZGVycygpLnNldCgnQ29udGVudC1UeXBlJywgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcpO1xuICAgIGNvbnN0IGJvZHkgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHtcbiAgICAgIGdyYW50X3R5cGU6ICdjdXN0b21fc3NvJ1xuICAgIH0pLnRvU3RyaW5nKCk7XG5cbiAgICByZXR1cm4gdGhpcy51dGlsLnBvc3RGb3JtRGF0YTxVc2VyTW9kZWw+KCdvYXV0aC90b2tlbicsIGJvZHksIHsgaGVhZGVycyx3aXRoQ3JlZGVudGlhbHM6IHRydWUgfSkudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBsb2FkVXNlckluZm8oKXtcbiAgICAgIGxldCBoZWFkZXJzID0gbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgXCJBY2NlcHRcIiA6IFwiYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkXCJcbiAgICAgIH0pO1xuICAgICAgdGhpcy5vcHRpb25zID0geyBoZWFkZXJzOiBoZWFkZXJzIH07XG4gICAgICBsZXQgYXV0aFRva2VuID0gYXdhaXQgdGhpcy5nZXRTdG9yZWRBY2Nlc3NUb3BlbigpO1xuICAgICAgcmV0dXJuIHRoaXMudXRpbC5nZXQ8VXNlck1vZGVsPihgb2F1dGgvY2hlY2tfdG9rZW4/dG9rZW49JHthdXRoVG9rZW59YCkudG9Qcm9taXNlKCk7XG4gIH1cblxuICBhc3luYyBnZXRTdG9yZWRBY2Nlc3NUb3Blbigpe1xuICAgIGxldCBhY2Nlc3NUb2tlbiA9IGF3YWl0IHRoaXMuc3RvcmFnZS5nZXQoJ2FjY2Vzc190b2tlbicpLnRoZW4ocmVzID0+IHJlcyk7XG4gICAgcmV0dXJuIGFjY2Vzc1Rva2VuO1xuICB9XG5cbiAgZ2VuZXJhdGVPdHBVbnJlZ2lzdGVyZWQobW9iaWxlTm8gOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0KCdhdXRoL290cC9uZXd1c2VyLycgKyBtb2JpbGVObyk7XG4gIH1cblxuICBzaWduVXAodXNlck1vZGVsIDogVXNlck1vZGVsKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLnBvc3QoJ3VzZXInLCB1c2VyTW9kZWwpO1xuICB9XG5cbiAgdXBkYXRlUGVyc29uYWxEZXRhaWxzKHVzckR0bHMgOiBVc2VyRGV0YWlsc01vZGVsKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLnBvc3QoJ3VzZXIvZGV0YWlscycsIHVzckR0bHMpO1xuICB9XG5cbiAgcmVzZXQoKXtcbiAgICB0aGlzLnVzZXIgPSBudWxsO1xuICAgIHRoaXMudXNlckJzLm5leHQobnVsbCk7XG4gICAgdGhpcy5tZW51QnMubmV4dChudWxsKTtcbiAgICB0aGlzLnN0b3JhZ2UucmVtb3ZlKCdhY2Nlc3NfdG9rZW4nKTtcbiAgICB0aGlzLnN0b3JhZ2UucmVtb3ZlKCdyZWZyZXNoX3Rva2VuJyk7XG4gICAgdGhpcy5zdG9yYWdlLnJlbW92ZSgnc2hvd19kaXNjbG9zdXJlJyk7XG4gICAgdGhpcy5zdG9yYWdlLnJlbW92ZSgndXNlcm5hbWUnKTtcbiAgICB0aGlzLmNsYWltYW50Q29udGV4dFNlcnZpY2UuY2xlYXJDb250ZXh0KCk7XG4gICAgdGhpcy5yZW1vdmVDb29raWVzKCk7XG4gIH1cblxuICByZW1vdmVDb29raWVzKCl7XG4gICAgdGhpcy5kZWxldGVDb29raWUoJ2F0Jyk7XG4gICAgdGhpcy5kZWxldGVDb29raWUoJ3J0Jyk7XG4gICAgdGhpcy5kZWxldGVDb29raWUoTGliQ29uc3RhbnRzLnNzb0Nvb2tpZU5hbWUpO1xuICB9XG5cbiAgZGVsZXRlQ29va2llKGNvb2tpZU5hbWUpe1xuICAgIGxldCBjb29raWUgPSBgJHtjb29raWVOYW1lfT07IE1heC1BZ2U9MDsgcGF0aD0vOyBkb21haW49JHtMaWJDb25zdGFudHMuc3NvRG9tYWlufWA7XG4gICAgZG9jdW1lbnQuY29va2llID0gY29va2llO1xuICB9XG5cbiAgY3JlYXRlQ29va2llKGNvb2tpZU5hbWUsIHZhbHVlLCBleHBpcmF0aW9uKXtcbiAgICBsZXQgY29va2llID0gYCR7Y29va2llTmFtZX09JHt2YWx1ZX07IGV4cGlyZXM9JHtleHBpcmF0aW9uICsgJy4wMDAnfTsgcGF0aD0vOyBkb21haW49JHtMaWJDb25zdGFudHMuc3NvRG9tYWlufWA7XG4gICAgZG9jdW1lbnQuY29va2llID0gY29va2llO1xuICB9XG5cbiAgbG9nb3V0KHJlYXNvbjonVUNMTyd8J1VDUE8nfCdTRVRJJz0nVUNMTycpe1xuXHRjb25zb2xlLmxvZyhcIlJFQVNPTlwiK3JlYXNvbilcbiAgICBpZih0aGlzLnVzZXIpe1xuICAgICAgdGhpcy51dGlsLmdldCgndXNlci9sb2dvdXQ/bG9nb3V0UmVhc29uPScrcmVhc29uKVxuICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgcmVzID0+IHtcbiAgICAgICAgICB0aGlzLnJlc2V0KCk7XG4gICAgICAgIH0sXG4gICAgICAgIGVyciA9PiB7XG4gICAgICAgICAgdGhpcy5yZXNldCgpO1xuICAgICAgICAgIHRoaXMudXRpbC5lcnJvckhhbmRsZXIoZXJyKTtcbiAgICAgICAgfVxuICAgICAgKVxuICAgIH1lbHNle1xuICAgICAgdGhpcy5yZXNldCgpO1xuICAgIH1cbiAgfVxuXG4gIGlzTG9nZ2VkSW4oKXtcbiAgICByZXR1cm4gdGhpcy51c2VyICYmIHRoaXMudXNlci5pc0xvZ2dlZEluO1xuICB9XG5cbiAgaXMyRkFSZXF1aXJlZCgpe1xuICAgIHJldHVybiB0aGlzLnVzZXIgJiYgdGhpcy51c2VyLmlzMkZBUmVxdWlyZWQ7XG4gIH1cblxuICB1cGRhdGVQcm9maWxlKHVzZXIgOiBVc2VyTW9kZWwpe1xuICAgIHJldHVybiB0aGlzLnV0aWwucG9zdCgndXNlci9wcm9maWxlJywgdXNlcik7XG4gIH1cblxuICB1cGRhdGVQYXNzd29yZChvbGRQYXNzd29yZCwgbmV3UGFzc3dvcmQsIGNvbmZpcm1QYXNzd29yZCl7XG4gICAgbGV0IHB3ZENoYW5nZU1vZGVsIDoge29sZFBhc3N3b3JkOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcsIGNvbmZpcm1QYXNzd29yZDogc3RyaW5nfSA9IHtvbGRQYXNzd29yZDogb2xkUGFzc3dvcmQsIHBhc3N3b3JkOiBuZXdQYXNzd29yZCwgY29uZmlybVBhc3N3b3JkOiBjb25maXJtUGFzc3dvcmR9O1xuICAgIHJldHVybiB0aGlzLnV0aWwucG9zdChgdXNlci9wYXNzd29yZC8ke3RoaXMuZ2V0VXNlcigpLnVzZXJuYW1lfWAsIHB3ZENoYW5nZU1vZGVsKTtcbiAgfVxuXG4gIGluaXRpYXRlRm9yZ290UGFzc3dvcmQodXNlcklkIDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldChgdXNlci9wYXNzd29yZC9yZXNldC8ke3VzZXJJZH1gKTtcbiAgfVxuXG4gIGluaXRpYXRlRm9yZ290UGFzc3dvcmRWMih1c2VySWQgOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0KGB1c2VyL3YyL3Bhc3N3b3JkL3Jlc2V0LyR7dXNlcklkfWApO1xuICB9XG5cbiAgaGFzUm9sZShyb2xlTmFtZSA6IHN0cmluZykgOiBib29sZWFue1xuICAgIHJldHVybiB0aGlzLnVzZXIgJiYgdGhpcy51c2VyLnJvbGVzICYmIHRoaXMudXNlci5yb2xlcy5pbmNsdWRlcyhyb2xlTmFtZSk7XG4gIH1cblxuICBoYXNGdW5jdGlvbihmdW5jdGlvbk5hbWUgOiBzdHJpbmcpIDogYm9vbGVhbntcbiAgICByZXR1cm4gdGhpcy51c2VyICYmIHRoaXMudXNlci5mdW5jdGlvbnMgJiYgdGhpcy51c2VyLmZ1bmN0aW9ucy5pbmNsdWRlcyhmdW5jdGlvbk5hbWUpO1xuICB9XG5cbiAgaGFzUm9sZXMoLi4ucm9sZXMgOiBzdHJpbmdbXSl7XG4gICAgbGV0IGlzUHJlc2VudCA9IGZhbHNlO1xuICAgIGZvcih2YXIgaSA9IDAgOyBpIDwgcm9sZXMubGVuZ3RoIDsgaSsrKXtcbiAgICAgIGlmKHRoaXMuaGFzUm9sZShyb2xlc1tpXS50b1N0cmluZygpKSl7XG4gICAgICAgIGlzUHJlc2VudCA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gaXNQcmVzZW50O1xuICB9XG5cbiAgaGFzRnVuY3Rpb25zKC4uLmZ1bmN0aW9ucyA6IHN0cmluZ1tdKXtcbiAgICBsZXQgaXNQcmVzZW50ID0gZmFsc2U7XG4gICAgZm9yKHZhciBpID0gMCA7IGkgPCBmdW5jdGlvbnMubGVuZ3RoIDsgaSsrKXtcbiAgICAgIGlmKHRoaXMuaGFzRnVuY3Rpb24oZnVuY3Rpb25zW2ldKSl7XG4gICAgICAgIGlzUHJlc2VudCA9IHRydWU7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gaXNQcmVzZW50O1xuICB9XG5cbiAgY2hlY2tSb2xlcyhyb2xlcyA6IHN0cmluZ1tdKXtcbiAgICBsZXQgaXNQcmVzZW50ID0gZmFsc2U7XG4gICAgZm9yKHZhciBpID0gMCA7IGkgPCByb2xlcy5sZW5ndGggOyBpKyspe1xuICAgICAgaWYodGhpcy5oYXNSb2xlKHJvbGVzW2ldLnRvU3RyaW5nKCkpKXtcbiAgICAgICAgaXNQcmVzZW50ID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBpc1ByZXNlbnQ7XG4gIH1cblxuICBjaGVja0Z1bmN0aW9ucyhmdW5jdGlvbnMgOiBzdHJpbmdbXSl7XG4gICAgbGV0IGlzUHJlc2VudCA9IGZhbHNlO1xuICAgIGZvcih2YXIgaSA9IDAgOyBpIDwgZnVuY3Rpb25zLmxlbmd0aCA7IGkrKyl7XG4gICAgICBpZih0aGlzLmhhc0Z1bmN0aW9uKGZ1bmN0aW9uc1tpXSkpe1xuICAgICAgICBpc1ByZXNlbnQgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGlzUHJlc2VudDtcbiAgfVxuXG4gIGlzQ3NyKCl7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VXNlcigpICYmIHRoaXMuZ2V0VXNlcigpLnVzZXJUeXBlID09PSAnTURFUydcbiAgfVxuXG4gIGlzVGF4QXVkaXRTdXBlcnZpc29yKCl7XG4gICAgcmV0dXJuIHRoaXMuZ2V0VXNlcigpICYmIHRoaXMuaGFzUm9sZSgndGF4YXVkaXRzdXBlcnZpc29yJykgJiZ0aGlzLmdldFVzZXIoKS51c2VyVHlwZSA9PT0gJ01ERVMnIFxuICB9XG5cbiAgaXNUYXhBdWRpdEF1ZGl0b3IoKXtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyKCkgJiYgdGhpcy5oYXNSb2xlKCd0YXhhdWRpdHNwZWNpYWxpc3QnKSAmJiB0aGlzLmdldFVzZXIoKS51c2VyVHlwZSA9PT0gJ01ERVMnXG4gIH1cblxuICBpc1RheEF1ZGl0RGlyZWN0b3IoKXtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyKCkgJiYgdGhpcy5oYXNSb2xlKCd0YXhBdWRpdERpcmVjdG9yJykgJiYgdGhpcy5nZXRVc2VyKCkudXNlclR5cGUgPT09ICdNREVTJ1xuICB9XG5cbiAgaXNFbXBsb3llcigpe1xuICAgIHJldHVybiB0aGlzLmdldFVzZXIoKSAmJiB0aGlzLmdldFVzZXIoKS51c2VyVHlwZSA9PT0gJ0VNUEwnXG4gIH1cblxuICBpc1RwYSgpe1xuICAgIHJldHVybiB0aGlzLmdldFVzZXIoKSAmJiB0aGlzLmdldFVzZXIoKS51c2VyVHlwZSA9PT0gJ1RQQSdcbiAgfVxuXG4gIGlzQ2xhaW1hbnQoKXtcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyKCkgJiYgdGhpcy5nZXRVc2VyKCkudXNlclR5cGUgPT09ICdDTE1UJ1xuICB9XG5cbiAgaGFzU3NuQXNzb2NpYXRlZCgpIDogYm9vbGVhbntcbiAgICByZXR1cm4gdGhpcy5nZXRVc2VyKCkgJiYgdGhpcy5nZXRVc2VyKCkudXNlclR5cGUgPT09ICdDTE1UJyAmJiB0aGlzLmdldFVzZXIoKS5zc24gIT09IHVuZGVmaW5lZCBcbiAgfVxuXG4gIGdldFVzZXJNZW51cygpe1xuICAgIHJldHVybiB0aGlzLnV0aWwuZ2V0PE1lbnVJdGVtW10+KGBtZW51L2ApO1xuICB9XG5cbiAgbWFya0ZhdihtZW51SWQgOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwucG9zdDxNZW51SXRlbVtdPihgbWVudS9mYXYvJHttZW51SWR9YCwgbnVsbCk7XG4gIH1cblxuICByZW1vdmVGYXYobWVudUlkIDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmRlbGV0ZTxNZW51SXRlbVtdPihgbWVudS9mYXYvJHttZW51SWR9YCk7XG4gIH1cblxuICBnZXRGYXZvdXJpdGVNZW51KCl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5nZXQ8TWVudUl0ZW1bXT4oYG1lbnUvZmF2YCk7XG4gIH1cblxuICBnZXRUcmVuZGluZ01lbnUoKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldDxNZW51SXRlbVtdPihgbWVudS90cmVuZGluZ2ApO1xuICB9XG5cbiAgdmVyaWZ5RW1haWwoY29kZSA6IHN0cmluZyl7XG4gICAgcmV0dXJuIHRoaXMudXRpbC5wb3N0KGB1c2VyL2VtYWlsLyR7Y29kZX1gLCBudWxsKTtcbiAgfVxuXG4gIGdldE5ld0NvZGUoKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldChgdXNlci9lbWFpbGApO1xuICB9XG5cbiAgdXBkYXRlRW1haWxBbmRHZXROZXdDb2RlKGVtYWlsIDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLnBhdGNoKGB1c2VyL2VtYWlsLyR7ZW1haWx9YCwgbnVsbCk7XG4gIH1cblxuICBnZXROZXdBdXRoQ29kZSh0eXBlIDogc3RyaW5nKXtcbiAgICByZXR1cm4gdGhpcy51dGlsLmdldChgdXNlci9vdHA/dHlwZT0ke3R5cGV9YCk7XG4gIH1cblxuICBhc3NvY2lhdGVTc25Ub1VzZXJJZChzc24gOiBzdHJpbmcpe1xuICAgIHJldHVybiB0aGlzLnV0aWwucG9zdChgY2xhaW1hbnQvYXNzb2NpYXRlLXNzbi8ke3Nzbn1gLCBudWxsKTtcbiAgfVxuXG4gIGdldFVzZXJJZEluVW5pdEJzKCl7XG4gICAgcmV0dXJuIHRoaXMudXNlcklkSW5Vbml0QnM7XG4gIH1cblxuICBsb2FkVXNlcklkc0Zyb21Vbml0T2ZMb2dnZWRJblVzZXIodW5pdElkIDogc3RyaW5nKXtcbiAgICBpZih0aGlzLnVzZXJJZEluVW5pdEJzLmdldFZhbHVlKCkgPT0gbnVsbClcbiAgICAgIHRoaXMudXRpbC5nZXQ8VXNlck1vZGVsW10+KGB1c2VyL2FsbC8ke3VuaXRJZH1gKVxuICAgICAgICAgIC5zdWJzY3JpYmUocmVzID0+IHRoaXMudXNlcklkSW5Vbml0QnMubmV4dChyZXMpKTtcbiAgfVxufVxuIl19
|
|
@@ -1723,9 +1723,10 @@ class LoginService {
|
|
|
1723
1723
|
let cookie = `${cookieName}=${value}; expires=${expiration + '.000'}; path=/; domain=${LibConstants.ssoDomain}`;
|
|
1724
1724
|
document.cookie = cookie;
|
|
1725
1725
|
}
|
|
1726
|
-
logout() {
|
|
1726
|
+
logout(reason = 'UCLO') {
|
|
1727
|
+
console.log("REASON" + reason);
|
|
1727
1728
|
if (this.user) {
|
|
1728
|
-
this.util.get('user/logout')
|
|
1729
|
+
this.util.get('user/logout?logoutReason=' + reason)
|
|
1729
1730
|
.subscribe(res => {
|
|
1730
1731
|
this.reset();
|
|
1731
1732
|
}, err => {
|
|
@@ -6083,19 +6084,10 @@ class HeaderComponent extends BasePage {
|
|
|
6083
6084
|
var encVal = btoa(tempVal);
|
|
6084
6085
|
var date = new Date();
|
|
6085
6086
|
date.setTime(date.getTime() + 60000);
|
|
6086
|
-
const domain =
|
|
6087
|
+
const domain = LibConstants.ssoDomain;
|
|
6087
6088
|
var expires = "expires=" + date.toUTCString();
|
|
6088
6089
|
document.cookie = "parApToM=" + encVal + ";path=/;expires=" + expires + ";domain=" + domain + ";SameSite=Lax;";
|
|
6089
|
-
|
|
6090
|
-
var isHttps = window.location.protocol === 'https:';
|
|
6091
|
-
if (isHttps) {
|
|
6092
|
-
cookie += "SameSite=None; Secure";
|
|
6093
|
-
}
|
|
6094
|
-
else {
|
|
6095
|
-
cookie += "SameSite=None";
|
|
6096
|
-
}
|
|
6097
|
-
document.cookie = cookie;
|
|
6098
|
-
window.open(`${LibConstants.taxUrlExternal}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&TAXAUDIT_PORTAL=true`, '_self');
|
|
6090
|
+
window.open(`${LibConstants.taxUrl}/faces/virtual/contextswitch.xhtml?a=${userModel.access_token}&v=2299&TAXAUDIT_PORTAL=true`, '_self');
|
|
6099
6091
|
}
|
|
6100
6092
|
}
|
|
6101
6093
|
openAuditDashboard() {
|
|
@@ -8799,7 +8791,7 @@ class IdleService {
|
|
|
8799
8791
|
this.counter.next(this.time - val);
|
|
8800
8792
|
});
|
|
8801
8793
|
this.counterEndSubscription = this.timer.subscribe(val => {
|
|
8802
|
-
this.logout();
|
|
8794
|
+
this.ls.logout('SETI');
|
|
8803
8795
|
});
|
|
8804
8796
|
});
|
|
8805
8797
|
// sets the ping interval to 15 seconds
|
|
@@ -8931,7 +8923,7 @@ class IdleDetectorComponent {
|
|
|
8931
8923
|
this.is.setupSessionTimeoutObserver();
|
|
8932
8924
|
}
|
|
8933
8925
|
logout() {
|
|
8934
|
-
this.ls.logout();
|
|
8926
|
+
this.ls.logout('UCPO');
|
|
8935
8927
|
this.r.navigateByUrl('login');
|
|
8936
8928
|
this.is.reset();
|
|
8937
8929
|
}
|
|
@@ -42814,6 +42806,14 @@ class HttpHeaderInterceptor {
|
|
|
42814
42806
|
.append('X-Custom-Param-Cid', this.claimantContextService.getClaimantId())
|
|
42815
42807
|
});
|
|
42816
42808
|
}
|
|
42809
|
+
console.log("REQUEST" + request.url.includes('/oauth/token'));
|
|
42810
|
+
if (request.url.includes('/oauth/token')) {
|
|
42811
|
+
if (window.location.pathname.includes('/ss/login') || window.location.href.includes('ss/login')) {
|
|
42812
|
+
request = request.clone({
|
|
42813
|
+
headers: request.headers.append('X-App-Source', 'security-webapp')
|
|
42814
|
+
});
|
|
42815
|
+
}
|
|
42816
|
+
}
|
|
42817
42817
|
return next.handle(request);
|
|
42818
42818
|
}
|
|
42819
42819
|
static { this.ɵfac = function HttpHeaderInterceptor_Factory(t) { return new (t || HttpHeaderInterceptor)(i0.ɵɵinject(LoginService), i0.ɵɵinject(UtilService), i0.ɵɵinject(LoggerService), i0.ɵɵinject(CaptchaService), i0.ɵɵinject(FingerprintService), i0.ɵɵinject(ClaimantContextService)); }; }
|