@bnsights/bbsf-utilities 1.0.49 → 1.0.50
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/README.md
CHANGED
|
@@ -1,34 +1,50 @@
|
|
|
1
1
|
# BnsightsUtilitiesLibrary
|
|
2
2
|
|
|
3
|
-
BBSF Utilities package is part of BBSF 3 packages. It has all the common services useded by [BBSF Admin Portal](https://www.npmjs.com/package/@bnsights/
|
|
3
|
+
BBSF Utilities package is part of BBSF 3 packages. It has all the common services useded by [BBSF Admin Portal](https://www.npmjs.com/package/@bnsights-test/test-admin-portal) or [BBSF Controls](https://www.npmjs.com/package/@bnsights/bbsf-controls)
|
|
4
4
|
|
|
5
5
|
For more info please visit [BBSF Controls documenation](https://bbsfadmin.bnsights.com/controls) or [BBSF documentation](https://bnsightsprojects.visualstudio.com/BBSF%203/_wiki/wikis/BBSF-3.wiki/65/BBSF-Documentation)
|
|
6
6
|
|
|
7
7
|
# Change Log
|
|
8
|
+
|
|
9
|
+
## 1.0.50 / 12-3-2024
|
|
10
|
+
|
|
11
|
+
===================
|
|
12
|
+
-Update query string 'state' in UAE Pass to contain current language
|
|
13
|
+
|
|
8
14
|
## 1.0.49 / 6-3-2024
|
|
15
|
+
|
|
9
16
|
===================
|
|
10
|
-
-Update AuthService To Delete Cookies
|
|
17
|
+
-Update AuthService To Delete Cookies
|
|
18
|
+
|
|
11
19
|
## 1.0.48 / 5-3-2024
|
|
20
|
+
|
|
12
21
|
===================
|
|
13
|
-
-Update AuthService To Handel Cookies
|
|
22
|
+
-Update AuthService To Handel Cookies
|
|
23
|
+
|
|
14
24
|
## 1.0.47 / 5-3-2024
|
|
25
|
+
|
|
15
26
|
===================
|
|
16
27
|
-Update AuthService To Fix Login Bug
|
|
28
|
+
|
|
17
29
|
## 1.0.46 / 8-2-2024
|
|
30
|
+
|
|
18
31
|
===================
|
|
19
32
|
-Update AuthService Access Token Handel
|
|
20
33
|
|
|
21
34
|
## 1.0.45 / 8-2-2024
|
|
35
|
+
|
|
22
36
|
===================
|
|
23
37
|
-Update AuthService Access Token Handel
|
|
24
38
|
|
|
25
39
|
## 1.0.44 / 4-1-2024
|
|
40
|
+
|
|
26
41
|
===================
|
|
27
|
-
-Update Request Handler For Upload File Async
|
|
42
|
+
-Update Request Handler For Upload File Async
|
|
28
43
|
|
|
29
44
|
## 1.0.43 / 11-12-2023
|
|
30
45
|
|
|
31
46
|
===================
|
|
47
|
+
|
|
32
48
|
- Upgraded Angular version (17) and upgraded related libraries.
|
|
33
49
|
|
|
34
50
|
## 1.0.41 / 3-12-2023
|
|
@@ -146,14 +146,11 @@ export class AuthService {
|
|
|
146
146
|
AuthService.timers.push(this.checkRefreshToken());
|
|
147
147
|
}
|
|
148
148
|
async updateLanguage() {
|
|
149
|
-
if (!localStorage.getItem('language') ||
|
|
150
|
-
localStorage.getItem('language') == this.user.profile.locale)
|
|
149
|
+
if (!localStorage.getItem('language') || localStorage.getItem('language') == this.user.profile.locale)
|
|
151
150
|
localStorage.setItem('language', this.user.profile.locale);
|
|
152
151
|
if (this.translateService.currentLang != localStorage.getItem('language')) {
|
|
153
152
|
this.translateService.resetLang(this.translateService.currentLang);
|
|
154
|
-
await this.translateService
|
|
155
|
-
.reloadLang(localStorage.getItem('language'))
|
|
156
|
-
.subscribe((res) => {
|
|
153
|
+
await this.translateService.reloadLang(localStorage.getItem('language')).subscribe((res) => {
|
|
157
154
|
console.log(res);
|
|
158
155
|
});
|
|
159
156
|
}
|
|
@@ -196,7 +193,7 @@ export class AuthService {
|
|
|
196
193
|
client_id: `${this.environmentService.getUAEPassClientID()}`,
|
|
197
194
|
redirect_uri: `${this.environmentService.getBaseUrl()}${this.environmentService.getUAEPassRedirectUrl()}`,
|
|
198
195
|
scope: 'urn:uae:digitalid:profile:general urn:uae:digitalid:profile:general:profileType urn:uae:digitalid:profile:general:unifiedId',
|
|
199
|
-
state:
|
|
196
|
+
state: this.translateService.currentLang,
|
|
200
197
|
acr_values: 'urn:safelayer:tws:policies:authentication:level:low'
|
|
201
198
|
};
|
|
202
199
|
const queryParamsString = Object.entries(queryParams)
|
|
@@ -227,4 +224,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.6", ngImpor
|
|
|
227
224
|
providedIn: 'root',
|
|
228
225
|
}]
|
|
229
226
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: i1.HttpClient }, { type: i2.EnvironmentService }, { type: i2.BBSFTranslateService }, { type: i3.Router }, { type: i4.CookieService }, { type: i5.UtilityService }] });
|
|
230
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvYXV0aGVudGljYXRpb24vYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7O0FBRTFFLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQztBQUtqQyxNQUFNLE9BQU8sV0FBVzthQUVmLFNBQUksR0FBZ0IsSUFBSSxBQUFwQixDQUFxQjthQUV6QixlQUFVLEdBQVEsSUFBSSxBQUFaLENBQWE7SUFJOUIsU0FBUzthQUNGLFdBQU0sR0FBRyxFQUFFLEFBQUwsQ0FBTTthQUNaLFlBQU8sR0FBRyxDQUFDLEFBQUosQ0FBSztJQUVuQixZQUFvQixRQUFrQixFQUFVLElBQWdCLEVBQVUsa0JBQXNDLEVBQVUsZ0JBQXNDLEVBQVUsTUFBYyxFQUFVLGFBQTRCLEVBQVUsY0FBOEI7UUFBbFAsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFzQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxD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QUU7U0FDeEQsQ0FBQTtRQUNELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7YUFDbEQsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7YUFDNUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWIsTUFBTSxTQUFTLEdBQUcsR0FBRyxjQUFjLElBQUksaUJBQWlCLEVBQUUsQ0FBQztRQUMzRCxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7UUFDakMsT0FBTztJQUNULENBQUM7OEdBN05VLFdBQVc7a0hBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBKd3RIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnQGF1dGgwL2FuZ3VsYXItand0JztcclxuaW1wb3J0IHsgQkJTRlRyYW5zbGF0ZVNlcnZpY2UsIEVudmlyb25tZW50U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL21vZGVscy9Vc2VyTW9kZWwnO1xyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXRpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy91dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbk1vZGVzIH0gZnJvbSAnLi4vZW51bXMvYXV0aGVudGljYXRpb24tbW9kZXMtZW51bXMnO1xyXG5pbXBvcnQgeyBzZXRUaW1lb3V0IH0gZnJvbSAndGltZXJzJztcclxuY29uc3QgVE9LRU5fS0VZID0gJ2FjY2Vzc190b2tlbic7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2Uge1xyXG4gIHB1YmxpYyByZWRpcmVjdFVybDogc3RyaW5nID0gJyc7XHJcbiAgc3RhdGljIHVzZXI6IFVzZXIgfCBudWxsID0gbnVsbDtcclxuICB1c2VyOiBVc2VyIHwgbnVsbDtcclxuICBzdGF0aWMgVXNlckNsYWltczogYW55ID0gbnVsbDtcclxuICBwcml2YXRlIGp3dEhlbHBlcjogSnd0SGVscGVyU2VydmljZSA9IG5ldyBKd3RIZWxwZXJTZXJ2aWNlKCk7XHJcbiAgcHJpdmF0ZSBpc0F1dGhlbnRpY2F0ZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0aGlzLmhhc1Rva2VuKCkpO1xyXG4gIGlzQXV0aGVudGljYXRlJCA9IHRoaXMuaXNBdXRoZW50aWNhdGVkU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAvL3JlZnJlc2hcclxuICBzdGF0aWMgdGltZXJzID0gW107XHJcbiAgc3RhdGljIHNlY29uZHMgPSAwO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGVudmlyb25tZW50U2VydmljZTogRW52aXJvbm1lbnRTZXJ2aWNlLCBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IEJCU0ZUcmFuc2xhdGVTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIGNvb2tpZVNlcnZpY2U6IENvb2tpZVNlcnZpY2UsIHByaXZhdGUgdXRpbGl0eVNlcnZpY2U6IFV0aWxpdHlTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLnVzZXIgPSB0aGlzLmdldFVzZXJNYW5hZ2VyKClcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFzVG9rZW4oKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuY29va2llU2VydmljZS5nZXQoVE9LRU5fS0VZKTtcclxuICAgIHJldHVybiB0b2tlbiAmJiAhdGhpcy5qd3RIZWxwZXIuaXNUb2tlbkV4cGlyZWQodG9rZW4pO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlck1hbmFnZXIoKSB7XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuY29va2llU2VydmljZS5nZXQoVE9LRU5fS0VZKTtcclxuICAgIGlmICh0b2tlbikge1xyXG4gICAgICBpZiAoIXRoaXMuand0SGVscGVyLmlzVG9rZW5FeHBpcmVkKHRva2VuKSlcclxuICAgICAgICB0aGlzLmhhbmRsZUFjY2Vzc1Rva2VuV2l0aG91dExhbmd1YWdlKHRva2VuKTtcclxuICAgICAgZWxzZVxyXG4gICAgICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGUoVE9LRU5fS0VZLCAnLycpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5jbGVhcigpO1xyXG4gICAgICBBdXRoU2VydmljZS50aW1lcnMubWFwKHQgPT4gY2xlYXJJbnRlcnZhbCh0KSk7XHJcbiAgICAgIEF1dGhTZXJ2aWNlLnRpbWVycyA9IFtdO1xyXG4gICAgICBBdXRoU2VydmljZS51c2VyID0gbnVsbDtcclxuICAgICAgdGhpcy51c2VyID0gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlcigpIHtcclxuICAgIHRoaXMudXNlciA9IEF1dGhTZXJ2aWNlLnVzZXI7XHJcbiAgfVxyXG4gIHN0b3JVc2VyKFVzZXI6IGFueSkge1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IHRoaXMudXNlciA9IHRoaXMudXNlcjtcclxuICB9XHJcblxyXG4gIGdldEN1cnJlbnRVc2VyKCkge1xyXG4gICAgcmV0dXJuIEF1dGhTZXJ2aWNlLnVzZXJcclxuICB9XHJcblxyXG4gIGlzQXV0aGVudGljYXRlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyICE9IG51bGwgJiYgIXRoaXMuand0SGVscGVyLmlzVG9rZW5FeHBpcmVkKEF1dGhTZXJ2aWNlLnVzZXIuYWNjZXNzX3Rva2VuKTtcclxuICB9XHJcbiAgaXNVc2VySW5Sb2xlKGFsbG93ZWRQZXJtaXNzaW9uKSB7XHJcbiAgICBsZXQgc2VsZWN0ZWRQZXJtaXNzaW9uU2V0SUQgPSBOdW1iZXIucGFyc2VJbnQoQXV0aFNlcnZpY2UudXNlci5wcm9maWxlWydzZWxlY3RlZHBlcm1pc3Npb25zZXRpZCddKTtcclxuICAgIHJldHVybiBhbGxvd2VkUGVybWlzc2lvbi5pbmNsdWRlcyhzZWxlY3RlZFBlcm1pc3Npb25TZXRJRCk7XHJcbiAgfVxyXG5cclxuICBhdXRob3JpemF0aW9uSGVhZGVyVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyXHJcbiAgICAgID8gYCR7QXV0aFNlcnZpY2UudXNlci50b2tlbl90eXBlfSAke0F1dGhTZXJ2aWNlLnVzZXIuYWNjZXNzX3Rva2VufWBcclxuICAgICAgOiAnJztcclxuICB9XHJcblxyXG4gIG5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyICE9IG51bGwgPyBBdXRoU2VydmljZS51c2VyLnByb2ZpbGUuZ2l2ZW5fbmFtZSA6ICcnO1xyXG4gIH1cclxuICBzZXRVcmwodXJsKSB7XHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVkaXJlY3RVcmwnLCB1cmwpO1xyXG4gIH1cclxuICBnZXRVcmwoKSB7XHJcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JlZGlyZWN0VXJsJykgPz8gXCIvXCI7XHJcbiAgfVxyXG5cclxuICBzaWduT3V0KCkge1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZShUT0tFTl9LRVksICcvJyk7XHJcbiAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTtcclxuICAgIEF1dGhTZXJ2aWNlLnRpbWVycy5tYXAodCA9PiBjbGVhckludGVydmFsKHQpKTtcclxuICAgIEF1dGhTZXJ2aWNlLnRpbWVycyA9IFtdO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IG51bGw7XHJcbiAgICB0aGlzLnVzZXIgPSBudWxsO1xyXG4gICAgdGhpcy5sb2dvdXQoKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgaWYgKHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJCU0ZBdXRoZW50aWNhdGlvbk1vZGUoKSA9PSBBdXRoZW50aWNhdGlvbk1vZGVzLlVBRVBhc3MpXHJcbiAgICAgICAgdGhpcy5sb2dvdXRGcm9tVUFFUGFzcygpXHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9BZG1pbi9hY2NvdW50L2xvZ2luJ10pXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGxvZ291dCgpIHtcclxuICAgIGNvbnN0IGh0dHBPcHRpb25zID0ge1xyXG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgIH0pLFxyXG4gICAgfTtcclxuICAgIGxldCBBcGlVcmwgPSAnL0FjY291bnQvJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEFwaVVybCgpICsgQXBpVXJsICsgJ0xvZ291dCcsIGh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG5cclxuICBjbGVhclVzZXJTZXNzaW9uQ2xhaW1zKCkge1xyXG4gICAgY29uc3QgaHR0cE9wdGlvbnMgPSB7XHJcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgfSksXHJcbiAgICB9O1xyXG4gICAgbGV0IEFwaVVybCA9ICcvYXBpL0hvbWUvJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJhc2VVcmwoKSArIEFwaVVybCArICdDbGVhckN1cnJlbnRVc2VyU2Vzc2lvbicsIGh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGhhbmRsZUFjY2Vzc1Rva2VuKHJlc3BvbnNlOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGUoVE9LRU5fS0VZLCAnLycpO1xyXG4gICAgY29uc3QgdG9rZW4gPSByZXNwb25zZTtcclxuICAgIEF1dGhTZXJ2aWNlLnVzZXIgPSBudWxsO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IG5ldyBVc2VyKCk7XHJcbiAgICBBdXRoU2VydmljZS51c2VyLnRva2VuX3R5cGUgPSBcIkJlYXJlclwiXHJcbiAgICBBdXRoU2VydmljZS51c2VyLmFjY2Vzc190b2tlbiA9IHRva2VuO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlci5wcm9maWxlID0gdGhpcy5qd3RIZWxwZXIuZGVjb2RlVG9rZW4odG9rZW4pO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlci5leHBpcmVzX2F0ID0gdGhpcy5qd3RIZWxwZXIuZ2V0VG9rZW5FeHBpcmF0aW9uRGF0ZSh0b2tlbik7XHJcbiAgICB0aGlzLnVzZXIgPSBBdXRoU2VydmljZS51c2VyO1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLnNldChUT0tFTl9LRVksIHRva2VuLCBBdXRoU2VydmljZS51c2VyLmV4cGlyZXNfYXQsIFwiL1wiLCBudWxsLCB0cnVlLCAnTGF4Jyk7XHJcbiAgICB0aGlzLmlzQXV0aGVudGljYXRlZFN1YmplY3QubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuc2V0VG9rZW5TZWNvbmRzKCk7XHJcbiAgICBBdXRoU2VydmljZS50aW1lcnMucHVzaCh0aGlzLmNoZWNrUmVmcmVzaFRva2VuKCkpO1xyXG4gICAgYXdhaXQgdGhpcy51cGRhdGVMYW5ndWFnZSgpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQWNjZXNzVG9rZW5XaXRob3V0TGFuZ3VhZ2UocmVzcG9uc2U6IGFueSkge1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZShUT0tFTl9LRVksICcvJyk7XHJcbiAgICBjb25zdCB0b2tlbiA9IHJlc3BvbnNlO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IG51bGw7XHJcbiAgICBBdXRoU2VydmljZS51c2VyID0gbmV3IFVzZXIoKTtcclxuICAgIEF1dGhTZXJ2aWNlLnVzZXIudG9rZW5fdHlwZSA9IFwiQmVhcmVyXCJcclxuICAgIEF1dGhTZXJ2aWNlLnVzZXIuYWNjZXNzX3Rva2VuID0gdG9rZW47XHJcbiAgICBBdXRoU2VydmljZS51c2VyLnByb2ZpbGUgPSB0aGlzLmp3dEhlbHBlci5kZWNvZGVUb2tlbih0b2tlbik7XHJcbiAgICBBdXRoU2VydmljZS51c2VyLmV4cGlyZXNfYXQgPSB0aGlzLmp3dEhlbHBlci5nZXRUb2tlbkV4cGlyYXRpb25EYXRlKHRva2VuKTtcclxuICAgIHRoaXMuc2V0VG9rZW5TZWNvbmRzKClcclxuICAgIHRoaXMudXNlciA9IEF1dGhTZXJ2aWNlLnVzZXJcclxuICAgIHRoaXMuY29va2llU2VydmljZS5zZXQoVE9LRU5fS0VZLCB0b2tlbiwgQXV0aFNlcnZpY2UudXNlci5leHBpcmVzX2F0LCBcIi9cIiwgbnVsbCwgdHJ1ZSwgJ0xheCcpO1xyXG4gICAgdGhpcy5pc0F1dGhlbnRpY2F0ZWRTdWJqZWN0Lm5leHQodHJ1ZSk7XHJcbiAgICBBdXRoU2VydmljZS50aW1lcnMucHVzaCh0aGlzLmNoZWNrUmVmcmVzaFRva2VuKCkpO1xyXG4gIH1cclxuICBhc3luYyB1cGRhdGVMYW5ndWFnZSgpIHtcclxuICAgIGlmIChcclxuICAgICAgIWxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpIHx8XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYW5ndWFnZScpID09IHRoaXMudXNlci5wcm9maWxlLmxvY2FsZVxyXG4gICAgKVxyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnbGFuZ3VhZ2UnLCB0aGlzLnVzZXIucHJvZmlsZS5sb2NhbGUpO1xyXG5cclxuICAgIGlmICh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmcgIT0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJykpIHtcclxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnJlc2V0TGFuZyh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmcpO1xyXG4gICAgICBhd2FpdCB0aGlzLnRyYW5zbGF0ZVNlcnZpY2VcclxuICAgICAgICAucmVsb2FkTGFuZyhsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZ3VhZ2UnKSlcclxuICAgICAgICAuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKHJlcyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja1JlZnJlc2hUb2tlbigpIHtcclxuICAgIGxldCBkYXRlID0gbmV3IERhdGUoKSBhcyBhbnk7XHJcbiAgICByZXR1cm4gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICBpZiAoTWF0aC5mbG9vcihBdXRoU2VydmljZS5zZWNvbmRzKSA8IDEyMCAmJiB0aGlzLmlzQXV0aGVudGljYXRlZCgpKSB7XHJcbiAgICAgICAgQXV0aFNlcnZpY2UudGltZXJzLm1hcCh0ID0+IGNsZWFySW50ZXJ2YWwodCkpO1xyXG4gICAgICAgIEF1dGhTZXJ2aWNlLnRpbWVycyA9IFtdO1xyXG4gICAgICAgIGNvbnN0IHRva2VuID0gdGhpcy5jb29raWVTZXJ2aWNlLmdldChUT0tFTl9LRVkpO1xyXG4gICAgICAgIGlmICh0b2tlbikge1xyXG4gICAgICAgICAgdGhpcy5yZWZyZXNoKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEF1dGhTZXJ2aWNlLnNlY29uZHMtLTtcclxuICAgIH0sIDEwMDApO1xyXG4gIH1cclxuICBzZXRUb2tlblNlY29uZHMoKSB7XHJcbiAgICBsZXQgZGF0ZSA9IG5ldyBEYXRlKCkgYXMgYW55O1xyXG4gICAgQXV0aFNlcnZpY2Uuc2Vjb25kcyA9IChBdXRoU2VydmljZS51c2VyLmV4cGlyZXNfYXQgLSBkYXRlKSAvIDEwMDBcclxuICB9XHJcbiAgcmVmcmVzaCgpIHtcclxuICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGUoVE9LRU5fS0VZLCAnLycpO1xyXG4gICAgY29uc3QgaHR0cE9wdGlvbnMgPSB7XHJcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgICAnQXV0aG9yaXphdGlvbic6IHRoaXMuYXV0aG9yaXphdGlvbkhlYWRlclZhbHVlKCksXHJcbiAgICAgIH0pLFxyXG4gICAgfTtcclxuICAgIGxldCBBcGlVcmwgPSAnL2FwaS9Ib21lLyc7XHJcbiAgICB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEFwaVVybCgpICsgQXBpVXJsICsgJ1JlZnJlc2hBY2Nlc3NUb2tlbicsIGh0dHBPcHRpb25zKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgIHRoaXMuaGFuZGxlQWNjZXNzVG9rZW5XaXRob3V0TGFuZ3VhZ2UocmVzLnZhbClcclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBsb2dpbldpdGhVQUVQYXNzKCkge1xyXG4gICAgY29uc3QgYXV0aEVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0VUFFUGFzc0Jhc2VVcmwoKX0ke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldFVBRVBhc3NBdXRob3JpemF0aW9uRW5kUG9pbnQoKX1gO1xyXG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB7XHJcbiAgICAgIHJlc3BvbnNlX3R5cGU6ICdjb2RlJyxcclxuICAgICAgY2xpZW50X2lkOiBgJHt0aGlzLmVudmlyb25tZW50U2VydmljZS5nZXRVQUVQYXNzQ2xpZW50SUQoKX1gLFxyXG4gICAgICByZWRpcmVjdF91cmk6IGAke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJhc2VVcmwoKX0ke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldFVBRVBhc3NSZWRpcmVjdFVybCgpfWAsXHJcbiAgICAgIHNjb3BlOiAndXJuOnVhZTpkaWdpdGFsaWQ6cHJvZmlsZTpnZW5lcmFsIHVybjp1YWU6ZGlnaXRhbGlkOnByb2ZpbGU6Z2VuZXJhbDpwcm9maWxlVHlwZSB1cm46dWFlOmRpZ2l0YWxpZDpwcm9maWxlOmdlbmVyYWw6dW5pZmllZElkJyxcclxuICAgICAgc3RhdGU6ICdwZDNQZ2V6UndrNTk2dTJ5ZlJ3cU9ncnUnLFxyXG4gICAgICBhY3JfdmFsdWVzOiAndXJuOnNhZmVsYXllcjp0d3M6cG9saWNpZXM6YXV0aGVudGljYXRpb246bGV2ZWw6bG93J1xyXG4gICAgfVxyXG4gICAgY29uc3QgcXVlcnlQYXJhbXNTdHJpbmcgPSBPYmplY3QuZW50cmllcyhxdWVyeVBhcmFtcylcclxuICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKX1gKVxyXG4gICAgICAuam9pbignJicpO1xyXG4gICAgY29uc3QgbG9naW5VcmwgPSBgJHthdXRoRW5kcG9pbnR9PyR7cXVlcnlQYXJhbXNTdHJpbmd9YDtcclxuICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gbG9naW5Vcmw7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICBsb2dvdXRGcm9tVUFFUGFzcygpIHtcclxuICAgIGNvbnN0IGxvZ291dEVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0VUFFUGFzc0Jhc2VVcmwoKX0ke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldFVBRVBhc3NMb2dvdXRFbmRQb2ludCgpfWBcclxuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0ge1xyXG4gICAgICByZWRpcmVjdF91cmk6IGAke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJhc2VVcmwoKX1gLFxyXG4gICAgfVxyXG4gICAgY29uc3QgcXVlcnlQYXJhbXNTdHJpbmcgPSBPYmplY3QuZW50cmllcyhxdWVyeVBhcmFtcylcclxuICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKX1gKVxyXG4gICAgICAuam9pbignJicpO1xyXG5cclxuICAgIGNvbnN0IGxvZ291dFVybCA9IGAke2xvZ291dEVuZHBvaW50fT8ke3F1ZXJ5UGFyYW1zU3RyaW5nfWA7XHJcbiAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGxvZ291dFVybDtcclxuICAgIHJldHVybjtcclxuICB9XHJcbn1cclxuIl19
|
|
227
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmJzZi11dGlsaXRpZXMvc3JjL2xpYi9zaGFyZWQvYXV0aGVudGljYXRpb24vYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdEQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRzNDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7O0FBRTFFLE1BQU0sU0FBUyxHQUFHLGNBQWMsQ0FBQztBQUtqQyxNQUFNLE9BQU8sV0FBVzthQUVmLFNBQUksR0FBZ0IsSUFBSSxBQUFwQixDQUFxQjthQUV6QixlQUFVLEdBQVEsSUFBSSxBQUFaLENBQWE7SUFJOUIsU0FBUzthQUNGLFdBQU0sR0FBRyxFQUFFLEFBQUwsQ0FBTTthQUNaLFlBQU8sR0FBRyxDQUFDLEFBQUosQ0FBSztJQUVuQixZQUFvQixRQUFrQixFQUFVLElBQWdCLEVBQVUsa0JBQXNDLEVBQVUsZ0JBQXNDLEVBQVUsTUFBYyxFQUFVLGFBQTRCLEVBQVUsY0FBOEI7UUFBbFAsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUFVLFNBQUksR0FBSixJQUFJLENBQVk7UUFBVSx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBQVUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFzQjtRQUFVLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxD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QUMsVUFBVSxFQUFFLEVBQUU7U0FDeEQsQ0FBQTtRQUNELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7YUFDbEQsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7YUFDNUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWIsTUFBTSxTQUFTLEdBQUcsR0FBRyxjQUFjLElBQUksaUJBQWlCLEVBQUUsQ0FBQztRQUMzRCxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7UUFDakMsT0FBTztJQUNULENBQUM7OEdBeE5VLFdBQVc7a0hBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBKd3RIZWxwZXJTZXJ2aWNlIH0gZnJvbSAnQGF1dGgwL2FuZ3VsYXItand0JztcclxuaW1wb3J0IHsgQkJTRlRyYW5zbGF0ZVNlcnZpY2UsIEVudmlyb25tZW50U2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzJztcclxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL21vZGVscy9Vc2VyTW9kZWwnO1xyXG5pbXBvcnQgeyBDb29raWVTZXJ2aWNlIH0gZnJvbSAnbmd4LWNvb2tpZS1zZXJ2aWNlJztcclxuaW1wb3J0IHsgVXRpbGl0eVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy91dGlsaXR5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvbk1vZGVzIH0gZnJvbSAnLi4vZW51bXMvYXV0aGVudGljYXRpb24tbW9kZXMtZW51bXMnO1xyXG5pbXBvcnQgeyBzZXRUaW1lb3V0IH0gZnJvbSAndGltZXJzJztcclxuY29uc3QgVE9LRU5fS0VZID0gJ2FjY2Vzc190b2tlbic7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2Uge1xyXG4gIHB1YmxpYyByZWRpcmVjdFVybDogc3RyaW5nID0gJyc7XHJcbiAgc3RhdGljIHVzZXI6IFVzZXIgfCBudWxsID0gbnVsbDtcclxuICB1c2VyOiBVc2VyIHwgbnVsbDtcclxuICBzdGF0aWMgVXNlckNsYWltczogYW55ID0gbnVsbDtcclxuICBwcml2YXRlIGp3dEhlbHBlcjogSnd0SGVscGVyU2VydmljZSA9IG5ldyBKd3RIZWxwZXJTZXJ2aWNlKCk7XHJcbiAgcHJpdmF0ZSBpc0F1dGhlbnRpY2F0ZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPih0aGlzLmhhc1Rva2VuKCkpO1xyXG4gIGlzQXV0aGVudGljYXRlJCA9IHRoaXMuaXNBdXRoZW50aWNhdGVkU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICAvL3JlZnJlc2hcclxuICBzdGF0aWMgdGltZXJzID0gW107XHJcbiAgc3RhdGljIHNlY29uZHMgPSAwO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGluamVjdG9yOiBJbmplY3RvciwgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGVudmlyb25tZW50U2VydmljZTogRW52aXJvbm1lbnRTZXJ2aWNlLCBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IEJCU0ZUcmFuc2xhdGVTZXJ2aWNlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwcml2YXRlIGNvb2tpZVNlcnZpY2U6IENvb2tpZVNlcnZpY2UsIHByaXZhdGUgdXRpbGl0eVNlcnZpY2U6IFV0aWxpdHlTZXJ2aWNlKSB7XHJcbiAgICB0aGlzLnVzZXIgPSB0aGlzLmdldFVzZXJNYW5hZ2VyKClcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFzVG9rZW4oKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuY29va2llU2VydmljZS5nZXQoVE9LRU5fS0VZKTtcclxuICAgIHJldHVybiB0b2tlbiAmJiAhdGhpcy5qd3RIZWxwZXIuaXNUb2tlbkV4cGlyZWQodG9rZW4pO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlck1hbmFnZXIoKSB7XHJcbiAgICBjb25zdCB0b2tlbiA9IHRoaXMuY29va2llU2VydmljZS5nZXQoVE9LRU5fS0VZKTtcclxuICAgIGlmICh0b2tlbikge1xyXG4gICAgICBpZiAoIXRoaXMuand0SGVscGVyLmlzVG9rZW5FeHBpcmVkKHRva2VuKSlcclxuICAgICAgICB0aGlzLmhhbmRsZUFjY2Vzc1Rva2VuV2l0aG91dExhbmd1YWdlKHRva2VuKTtcclxuICAgICAgZWxzZVxyXG4gICAgICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGUoVE9LRU5fS0VZLCAnLycpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIGxvY2FsU3RvcmFnZS5jbGVhcigpO1xyXG4gICAgICBBdXRoU2VydmljZS50aW1lcnMubWFwKHQgPT4gY2xlYXJJbnRlcnZhbCh0KSk7XHJcbiAgICAgIEF1dGhTZXJ2aWNlLnRpbWVycyA9IFtdO1xyXG4gICAgICBBdXRoU2VydmljZS51c2VyID0gbnVsbDtcclxuICAgICAgdGhpcy51c2VyID0gbnVsbDtcclxuICAgIH1cclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlcigpIHtcclxuICAgIHRoaXMudXNlciA9IEF1dGhTZXJ2aWNlLnVzZXI7XHJcbiAgfVxyXG4gIHN0b3JVc2VyKFVzZXI6IGFueSkge1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IHRoaXMudXNlciA9IHRoaXMudXNlcjtcclxuICB9XHJcblxyXG4gIGdldEN1cnJlbnRVc2VyKCkge1xyXG4gICAgcmV0dXJuIEF1dGhTZXJ2aWNlLnVzZXJcclxuICB9XHJcblxyXG4gIGlzQXV0aGVudGljYXRlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyICE9IG51bGwgJiYgIXRoaXMuand0SGVscGVyLmlzVG9rZW5FeHBpcmVkKEF1dGhTZXJ2aWNlLnVzZXIuYWNjZXNzX3Rva2VuKTtcclxuICB9XHJcbiAgaXNVc2VySW5Sb2xlKGFsbG93ZWRQZXJtaXNzaW9uKSB7XHJcbiAgICBsZXQgc2VsZWN0ZWRQZXJtaXNzaW9uU2V0SUQgPSBOdW1iZXIucGFyc2VJbnQoQXV0aFNlcnZpY2UudXNlci5wcm9maWxlWydzZWxlY3RlZHBlcm1pc3Npb25zZXRpZCddKTtcclxuICAgIHJldHVybiBhbGxvd2VkUGVybWlzc2lvbi5pbmNsdWRlcyhzZWxlY3RlZFBlcm1pc3Npb25TZXRJRCk7XHJcbiAgfVxyXG5cclxuICBhdXRob3JpemF0aW9uSGVhZGVyVmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyXHJcbiAgICAgID8gYCR7QXV0aFNlcnZpY2UudXNlci50b2tlbl90eXBlfSAke0F1dGhTZXJ2aWNlLnVzZXIuYWNjZXNzX3Rva2VufWBcclxuICAgICAgOiAnJztcclxuICB9XHJcblxyXG4gIG5hbWUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBBdXRoU2VydmljZS51c2VyICE9IG51bGwgPyBBdXRoU2VydmljZS51c2VyLnByb2ZpbGUuZ2l2ZW5fbmFtZSA6ICcnO1xyXG4gIH1cclxuICBzZXRVcmwodXJsKSB7XHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVkaXJlY3RVcmwnLCB1cmwpO1xyXG4gIH1cclxuICBnZXRVcmwoKSB7XHJcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JlZGlyZWN0VXJsJykgPz8gXCIvXCI7XHJcbiAgfVxyXG5cclxuICBzaWduT3V0KCkge1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZShUT0tFTl9LRVksICcvJyk7XHJcbiAgICBsb2NhbFN0b3JhZ2UuY2xlYXIoKTtcclxuICAgIEF1dGhTZXJ2aWNlLnRpbWVycy5tYXAodCA9PiBjbGVhckludGVydmFsKHQpKTtcclxuICAgIEF1dGhTZXJ2aWNlLnRpbWVycyA9IFtdO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IG51bGw7XHJcbiAgICB0aGlzLnVzZXIgPSBudWxsO1xyXG4gICAgdGhpcy5sb2dvdXQoKS5zdWJzY3JpYmUocmVzID0+IHtcclxuICAgICAgaWYgKHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJCU0ZBdXRoZW50aWNhdGlvbk1vZGUoKSA9PSBBdXRoZW50aWNhdGlvbk1vZGVzLlVBRVBhc3MpXHJcbiAgICAgICAgdGhpcy5sb2dvdXRGcm9tVUFFUGFzcygpXHJcbiAgICAgIGVsc2VcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9BZG1pbi9hY2NvdW50L2xvZ2luJ10pXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGxvZ291dCgpIHtcclxuICAgIGNvbnN0IGh0dHBPcHRpb25zID0ge1xyXG4gICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoe1xyXG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgIH0pLFxyXG4gICAgfTtcclxuICAgIGxldCBBcGlVcmwgPSAnL0FjY291bnQvJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEFwaVVybCgpICsgQXBpVXJsICsgJ0xvZ291dCcsIGh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG5cclxuICBjbGVhclVzZXJTZXNzaW9uQ2xhaW1zKCkge1xyXG4gICAgY29uc3QgaHR0cE9wdGlvbnMgPSB7XHJcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XHJcbiAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgfSksXHJcbiAgICB9O1xyXG4gICAgbGV0IEFwaVVybCA9ICcvYXBpL0hvbWUvJztcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJhc2VVcmwoKSArIEFwaVVybCArICdDbGVhckN1cnJlbnRVc2VyU2Vzc2lvbicsIGh0dHBPcHRpb25zKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGhhbmRsZUFjY2Vzc1Rva2VuKHJlc3BvbnNlOiBhbnkpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIHRoaXMuY29va2llU2VydmljZS5kZWxldGUoVE9LRU5fS0VZLCAnLycpO1xyXG4gICAgY29uc3QgdG9rZW4gPSByZXNwb25zZTtcclxuICAgIEF1dGhTZXJ2aWNlLnVzZXIgPSBudWxsO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IG5ldyBVc2VyKCk7XHJcbiAgICBBdXRoU2VydmljZS51c2VyLnRva2VuX3R5cGUgPSBcIkJlYXJlclwiXHJcbiAgICBBdXRoU2VydmljZS51c2VyLmFjY2Vzc190b2tlbiA9IHRva2VuO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlci5wcm9maWxlID0gdGhpcy5qd3RIZWxwZXIuZGVjb2RlVG9rZW4odG9rZW4pO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlci5leHBpcmVzX2F0ID0gdGhpcy5qd3RIZWxwZXIuZ2V0VG9rZW5FeHBpcmF0aW9uRGF0ZSh0b2tlbik7XHJcbiAgICB0aGlzLnVzZXIgPSBBdXRoU2VydmljZS51c2VyO1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLnNldChUT0tFTl9LRVksIHRva2VuLCBBdXRoU2VydmljZS51c2VyLmV4cGlyZXNfYXQsIFwiL1wiLCBudWxsLCB0cnVlLCAnTGF4Jyk7XHJcbiAgICB0aGlzLmlzQXV0aGVudGljYXRlZFN1YmplY3QubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuc2V0VG9rZW5TZWNvbmRzKCk7XHJcbiAgICBBdXRoU2VydmljZS50aW1lcnMucHVzaCh0aGlzLmNoZWNrUmVmcmVzaFRva2VuKCkpO1xyXG4gICAgYXdhaXQgdGhpcy51cGRhdGVMYW5ndWFnZSgpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlQWNjZXNzVG9rZW5XaXRob3V0TGFuZ3VhZ2UocmVzcG9uc2U6IGFueSkge1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZShUT0tFTl9LRVksICcvJyk7XHJcbiAgICBjb25zdCB0b2tlbiA9IHJlc3BvbnNlO1xyXG4gICAgQXV0aFNlcnZpY2UudXNlciA9IG51bGw7XHJcbiAgICBBdXRoU2VydmljZS51c2VyID0gbmV3IFVzZXIoKTtcclxuICAgIEF1dGhTZXJ2aWNlLnVzZXIudG9rZW5fdHlwZSA9IFwiQmVhcmVyXCJcclxuICAgIEF1dGhTZXJ2aWNlLnVzZXIuYWNjZXNzX3Rva2VuID0gdG9rZW47XHJcbiAgICBBdXRoU2VydmljZS51c2VyLnByb2ZpbGUgPSB0aGlzLmp3dEhlbHBlci5kZWNvZGVUb2tlbih0b2tlbik7XHJcbiAgICBBdXRoU2VydmljZS51c2VyLmV4cGlyZXNfYXQgPSB0aGlzLmp3dEhlbHBlci5nZXRUb2tlbkV4cGlyYXRpb25EYXRlKHRva2VuKTtcclxuICAgIHRoaXMuc2V0VG9rZW5TZWNvbmRzKClcclxuICAgIHRoaXMudXNlciA9IEF1dGhTZXJ2aWNlLnVzZXJcclxuICAgIHRoaXMuY29va2llU2VydmljZS5zZXQoVE9LRU5fS0VZLCB0b2tlbiwgQXV0aFNlcnZpY2UudXNlci5leHBpcmVzX2F0LCBcIi9cIiwgbnVsbCwgdHJ1ZSwgJ0xheCcpO1xyXG4gICAgdGhpcy5pc0F1dGhlbnRpY2F0ZWRTdWJqZWN0Lm5leHQodHJ1ZSk7XHJcbiAgICBBdXRoU2VydmljZS50aW1lcnMucHVzaCh0aGlzLmNoZWNrUmVmcmVzaFRva2VuKCkpO1xyXG4gIH1cclxuICBhc3luYyB1cGRhdGVMYW5ndWFnZSgpIHtcclxuICAgIGlmICghbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJykgfHwgbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJykgPT0gdGhpcy51c2VyLnByb2ZpbGUubG9jYWxlKVxyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnbGFuZ3VhZ2UnLCB0aGlzLnVzZXIucHJvZmlsZS5sb2NhbGUpO1xyXG5cclxuICAgIGlmICh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmcgIT0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xhbmd1YWdlJykpIHtcclxuICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLnJlc2V0TGFuZyh0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuY3VycmVudExhbmcpO1xyXG4gICAgICBhd2FpdCB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UucmVsb2FkTGFuZyhsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFuZ3VhZ2UnKSkuc3Vic2NyaWJlKChyZXMpID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZyhyZXMpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNoZWNrUmVmcmVzaFRva2VuKCkge1xyXG4gICAgbGV0IGRhdGUgPSBuZXcgRGF0ZSgpIGFzIGFueTtcclxuICAgIHJldHVybiBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgIGlmIChNYXRoLmZsb29yKEF1dGhTZXJ2aWNlLnNlY29uZHMpIDwgMTIwICYmIHRoaXMuaXNBdXRoZW50aWNhdGVkKCkpIHtcclxuICAgICAgICBBdXRoU2VydmljZS50aW1lcnMubWFwKHQgPT4gY2xlYXJJbnRlcnZhbCh0KSk7XHJcbiAgICAgICAgQXV0aFNlcnZpY2UudGltZXJzID0gW107XHJcbiAgICAgICAgY29uc3QgdG9rZW4gPSB0aGlzLmNvb2tpZVNlcnZpY2UuZ2V0KFRPS0VOX0tFWSk7XHJcbiAgICAgICAgaWYgKHRva2VuKSB7XHJcbiAgICAgICAgICB0aGlzLnJlZnJlc2goKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQXV0aFNlcnZpY2Uuc2Vjb25kcy0tO1xyXG4gICAgfSwgMTAwMCk7XHJcbiAgfVxyXG4gIHNldFRva2VuU2Vjb25kcygpIHtcclxuICAgIGxldCBkYXRlID0gbmV3IERhdGUoKSBhcyBhbnk7XHJcbiAgICBBdXRoU2VydmljZS5zZWNvbmRzID0gKEF1dGhTZXJ2aWNlLnVzZXIuZXhwaXJlc19hdCAtIGRhdGUpIC8gMTAwMFxyXG4gIH1cclxuICByZWZyZXNoKCkge1xyXG4gICAgdGhpcy5jb29raWVTZXJ2aWNlLmRlbGV0ZShUT0tFTl9LRVksICcvJyk7XHJcbiAgICBjb25zdCBodHRwT3B0aW9ucyA9IHtcclxuICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcclxuICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nLFxyXG4gICAgICAgICdBdXRob3JpemF0aW9uJzogdGhpcy5hdXRob3JpemF0aW9uSGVhZGVyVmFsdWUoKSxcclxuICAgICAgfSksXHJcbiAgICB9O1xyXG4gICAgbGV0IEFwaVVybCA9ICcvYXBpL0hvbWUvJztcclxuICAgIHRoaXMuaHR0cC5nZXQodGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QXBpVXJsKCkgKyBBcGlVcmwgKyAnUmVmcmVzaEFjY2Vzc1Rva2VuJywgaHR0cE9wdGlvbnMpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgdGhpcy5oYW5kbGVBY2Nlc3NUb2tlbldpdGhvdXRMYW5ndWFnZShyZXMudmFsKVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGxvZ2luV2l0aFVBRVBhc3MoKSB7XHJcbiAgICBjb25zdCBhdXRoRW5kcG9pbnQgPSBgJHt0aGlzLmVudmlyb25tZW50U2VydmljZS5nZXRVQUVQYXNzQmFzZVVybCgpfSR7dGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0VUFFUGFzc0F1dGhvcml6YXRpb25FbmRQb2ludCgpfWA7XHJcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHtcclxuICAgICAgcmVzcG9uc2VfdHlwZTogJ2NvZGUnLFxyXG4gICAgICBjbGllbnRfaWQ6IGAke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldFVBRVBhc3NDbGllbnRJRCgpfWAsXHJcbiAgICAgIHJlZGlyZWN0X3VyaTogYCR7dGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0QmFzZVVybCgpfSR7dGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0VUFFUGFzc1JlZGlyZWN0VXJsKCl9YCxcclxuICAgICAgc2NvcGU6ICd1cm46dWFlOmRpZ2l0YWxpZDpwcm9maWxlOmdlbmVyYWwgdXJuOnVhZTpkaWdpdGFsaWQ6cHJvZmlsZTpnZW5lcmFsOnByb2ZpbGVUeXBlIHVybjp1YWU6ZGlnaXRhbGlkOnByb2ZpbGU6Z2VuZXJhbDp1bmlmaWVkSWQnLFxyXG4gICAgICBzdGF0ZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmN1cnJlbnRMYW5nLFxyXG4gICAgICBhY3JfdmFsdWVzOiAndXJuOnNhZmVsYXllcjp0d3M6cG9saWNpZXM6YXV0aGVudGljYXRpb246bGV2ZWw6bG93J1xyXG4gICAgfVxyXG4gICAgY29uc3QgcXVlcnlQYXJhbXNTdHJpbmcgPSBPYmplY3QuZW50cmllcyhxdWVyeVBhcmFtcylcclxuICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKX1gKVxyXG4gICAgICAuam9pbignJicpO1xyXG4gICAgY29uc3QgbG9naW5VcmwgPSBgJHthdXRoRW5kcG9pbnR9PyR7cXVlcnlQYXJhbXNTdHJpbmd9YDtcclxuICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gbG9naW5Vcmw7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG5cclxuICBsb2dvdXRGcm9tVUFFUGFzcygpIHtcclxuICAgIGNvbnN0IGxvZ291dEVuZHBvaW50ID0gYCR7dGhpcy5lbnZpcm9ubWVudFNlcnZpY2UuZ2V0VUFFUGFzc0Jhc2VVcmwoKX0ke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldFVBRVBhc3NMb2dvdXRFbmRQb2ludCgpfWBcclxuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0ge1xyXG4gICAgICByZWRpcmVjdF91cmk6IGAke3RoaXMuZW52aXJvbm1lbnRTZXJ2aWNlLmdldEJhc2VVcmwoKX1gLFxyXG4gICAgfVxyXG4gICAgY29uc3QgcXVlcnlQYXJhbXNTdHJpbmcgPSBPYmplY3QuZW50cmllcyhxdWVyeVBhcmFtcylcclxuICAgICAgLm1hcCgoW2tleSwgdmFsdWVdKSA9PiBgJHtrZXl9PSR7ZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKX1gKVxyXG4gICAgICAuam9pbignJicpO1xyXG5cclxuICAgIGNvbnN0IGxvZ291dFVybCA9IGAke2xvZ291dEVuZHBvaW50fT8ke3F1ZXJ5UGFyYW1zU3RyaW5nfWA7XHJcbiAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGxvZ291dFVybDtcclxuICAgIHJldHVybjtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -4484,14 +4484,11 @@ class AuthService {
|
|
|
4484
4484
|
AuthService.timers.push(this.checkRefreshToken());
|
|
4485
4485
|
}
|
|
4486
4486
|
async updateLanguage() {
|
|
4487
|
-
if (!localStorage.getItem('language') ||
|
|
4488
|
-
localStorage.getItem('language') == this.user.profile.locale)
|
|
4487
|
+
if (!localStorage.getItem('language') || localStorage.getItem('language') == this.user.profile.locale)
|
|
4489
4488
|
localStorage.setItem('language', this.user.profile.locale);
|
|
4490
4489
|
if (this.translateService.currentLang != localStorage.getItem('language')) {
|
|
4491
4490
|
this.translateService.resetLang(this.translateService.currentLang);
|
|
4492
|
-
await this.translateService
|
|
4493
|
-
.reloadLang(localStorage.getItem('language'))
|
|
4494
|
-
.subscribe((res) => {
|
|
4491
|
+
await this.translateService.reloadLang(localStorage.getItem('language')).subscribe((res) => {
|
|
4495
4492
|
console.log(res);
|
|
4496
4493
|
});
|
|
4497
4494
|
}
|
|
@@ -4534,7 +4531,7 @@ class AuthService {
|
|
|
4534
4531
|
client_id: `${this.environmentService.getUAEPassClientID()}`,
|
|
4535
4532
|
redirect_uri: `${this.environmentService.getBaseUrl()}${this.environmentService.getUAEPassRedirectUrl()}`,
|
|
4536
4533
|
scope: 'urn:uae:digitalid:profile:general urn:uae:digitalid:profile:general:profileType urn:uae:digitalid:profile:general:unifiedId',
|
|
4537
|
-
state:
|
|
4534
|
+
state: this.translateService.currentLang,
|
|
4538
4535
|
acr_values: 'urn:safelayer:tws:policies:authentication:level:low'
|
|
4539
4536
|
};
|
|
4540
4537
|
const queryParamsString = Object.entries(queryParams)
|