valtech-components 2.0.903 → 2.0.905
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/molecules/content-reaction/content-reaction.component.mjs +4 -3
- package/esm2022/lib/services/auth/auth.service.mjs +27 -23
- package/esm2022/lib/services/auth/device.service.mjs +4 -4
- package/esm2022/lib/services/auth/handoff.service.mjs +3 -3
- package/esm2022/lib/services/auth/notification-action.service.mjs +3 -3
- package/esm2022/lib/services/auth/oauth.service.mjs +7 -7
- package/esm2022/lib/services/auth/session.service.mjs +2 -2
- package/esm2022/lib/services/auth/storage.service.mjs +7 -4
- package/esm2022/lib/services/auth/sync.service.mjs +10 -7
- package/esm2022/lib/services/feedback/feedback.service.mjs +17 -12
- package/esm2022/lib/version.mjs +2 -2
- package/fesm2022/valtech-components.mjs +72 -56
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/content-reaction/content-reaction.component.d.ts +1 -0
- package/lib/services/feedback/feedback.service.d.ts +2 -0
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
|
@@ -35,7 +35,7 @@ export class DeviceService {
|
|
|
35
35
|
this.http = http;
|
|
36
36
|
}
|
|
37
37
|
get baseUrl() {
|
|
38
|
-
return `${this.config
|
|
38
|
+
return `${this.config?.apiUrl}/v2/users/me/devices`;
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
41
|
* Lista todos los dispositivos registrados del usuario.
|
|
@@ -90,7 +90,7 @@ export class DeviceService {
|
|
|
90
90
|
* ```
|
|
91
91
|
*/
|
|
92
92
|
validateAction(token) {
|
|
93
|
-
return this.http.post(`${this.config
|
|
93
|
+
return this.http.post(`${this.config?.apiUrl}/v2/actions/validate`, { token });
|
|
94
94
|
}
|
|
95
95
|
/**
|
|
96
96
|
* Ejecuta una acción de dispositivo desde un token de email.
|
|
@@ -113,7 +113,7 @@ export class DeviceService {
|
|
|
113
113
|
*/
|
|
114
114
|
executeAction(token) {
|
|
115
115
|
// Usa el endpoint unificado de acciones
|
|
116
|
-
return this.http.post(`${this.config
|
|
116
|
+
return this.http.post(`${this.config?.apiUrl}/v2/actions/execute`, { token }).pipe(map(response => ({
|
|
117
117
|
operationId: response.operationId,
|
|
118
118
|
success: response.success,
|
|
119
119
|
message: response.message,
|
|
@@ -134,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
134
134
|
type: Inject,
|
|
135
135
|
args: [VALTECH_AUTH_CONFIG]
|
|
136
136
|
}] }, { type: i1.HttpClient }] });
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV2aWNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3NlcnZpY2VzL2F1dGgvZGV2aWNlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzdELE9BQU8sRUFBRSxHQUFHLEVBQWMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7OztBQVcvQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCRztBQUVILE1BQU0sT0FBTyxhQUFhO0lBQ3hCLFlBQ21ELE1BQWdDLEVBQ3pFLElBQWdCO1FBRHlCLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBQ3pFLFNBQUksR0FBSixJQUFJLENBQVk7SUFDdkIsQ0FBQztJQUVKLElBQVksT0FBTztRQUNqQixPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0lBQ3RELENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFzQixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUMxRCxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQ2xDLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTLENBQUMsUUFBZ0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FDbEIsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUM5QixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsV0FBVyxDQUFDLFFBQWdCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ25CLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxRQUFRLFFBQVEsRUFDbkMsRUFBRSxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLFFBQWdCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ25CLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxRQUFRLFVBQVUsRUFDckMsRUFBRSxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZLENBQUMsUUFBZ0I7UUFDM0IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBcUIsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BbUJHO0lBQ0gsY0FBYyxDQUFDLEtBQWE7UUFDMUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FDbkIsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLEVBQzVDLEVBQUUsS0FBSyxFQUFFLENBQ1YsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7Ozs7Ozs7Ozs7Ozs7O09Ba0JHO0lBQ0gsYUFBYSxDQUFDLEtBQWE7UUFDekIsd0NBQXdDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQ25CLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixFQUMzQyxFQUFFLEtBQUssRUFBRSxDQUNWLENBQUMsSUFBSSxDQUNKLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDZixXQUFXLEVBQUUsUUFBUSxDQUFDLFdBQVc7WUFDakMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxPQUFPO1lBQ3pCLE9BQU8sRUFBRSxRQUFRLENBQUMsT0FBTztZQUN6QixNQUFNLEVBQUcsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBWSxJQUFJLFFBQVE7WUFDekQsUUFBUSxFQUFHLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQVksSUFBSSxFQUFFO1lBQ3ZELGVBQWUsRUFBRSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsaUJBQWlCLENBQXVCO1NBQzFFLENBQUMsQ0FBQyxDQUNKLENBQUM7SUFDSixDQUFDOytHQXRIVSxhQUFhLGtCQUVGLG1CQUFtQjttSEFGOUIsYUFBYSxjQURBLE1BQU07OzRGQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7MEJBRzdCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCwgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgVkFMVEVDSF9BVVRIX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7XG4gIFZhbHRlY2hBdXRoQ29uZmlnLFxuICBEZXZpY2VJbmZvLFxuICBMaXN0RGV2aWNlc1Jlc3BvbnNlLFxuICBEZXZpY2VBY3Rpb25SZXN1bHQsXG4gIERldmljZUFjdGlvblJlcXVlc3QsXG4gIERldmljZUFjdGlvblJlc3BvbnNlLFxuICBWYWxpZGF0ZUFjdGlvblJlc3BvbnNlLFxufSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBwYXJhIGdlc3Rpw7NuIGRlIGRpc3Bvc2l0aXZvcyBkZWwgdXN1YXJpby5cbiAqIFBlcm1pdGUgbGlzdGFyLCBhcHJvYmFyLCBibG9xdWVhciB5IGVsaW1pbmFyIGRpc3Bvc2l0aXZvcyByZWdpc3RyYWRvcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgRGV2aWNlU2VydmljZSB9IGZyb20gJ3ZhbHRlY2gtY29tcG9uZW50cyc7XG4gKlxuICogQENvbXBvbmVudCh7Li4ufSlcbiAqIGV4cG9ydCBjbGFzcyBEZXZpY2VzUGFnZSB7XG4gKiAgIHByaXZhdGUgZGV2aWNlU2VydmljZSA9IGluamVjdChEZXZpY2VTZXJ2aWNlKTtcbiAqXG4gKiAgIGRldmljZXMgPSBzaWduYWw8RGV2aWNlSW5mb1tdPihbXSk7XG4gKlxuICogICBhc3luYyBuZ09uSW5pdCgpIHtcbiAqICAgICBjb25zdCBkZXZpY2VzID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5kZXZpY2VTZXJ2aWNlLmxpc3REZXZpY2VzKCkpO1xuICogICAgIHRoaXMuZGV2aWNlcy5zZXQoZGV2aWNlcyk7XG4gKiAgIH1cbiAqXG4gKiAgIGFzeW5jIGJsb2NrRGV2aWNlKGRldmljZUlkOiBzdHJpbmcpIHtcbiAqICAgICBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmRldmljZVNlcnZpY2UuYmxvY2tEZXZpY2UoZGV2aWNlSWQpKTtcbiAqICAgICAvLyBSZWNhcmdhciBsaXN0YVxuICogICB9XG4gKiB9XG4gKiBgYGBcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBEZXZpY2VTZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChWQUxURUNIX0FVVEhfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogVmFsdGVjaEF1dGhDb25maWcgfCBudWxsLFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxuICApIHt9XG5cbiAgcHJpdmF0ZSBnZXQgYmFzZVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS92Mi91c2Vycy9tZS9kZXZpY2VzYDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0YSB0b2RvcyBsb3MgZGlzcG9zaXRpdm9zIHJlZ2lzdHJhZG9zIGRlbCB1c3VhcmlvLlxuICAgKi9cbiAgbGlzdERldmljZXMoKTogT2JzZXJ2YWJsZTxEZXZpY2VJbmZvW10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxMaXN0RGV2aWNlc1Jlc3BvbnNlPih0aGlzLmJhc2VVcmwpLnBpcGUoXG4gICAgICBtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2UuZGV2aWNlcylcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIE9idGllbmUgaW5mb3JtYWNpw7NuIGRlIHVuIGRpc3Bvc2l0aXZvIGVzcGVjw61maWNvLlxuICAgKi9cbiAgZ2V0RGV2aWNlKGRldmljZUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERldmljZUluZm8+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDx7IG9wZXJhdGlvbklkOiBzdHJpbmc7IGRldmljZTogRGV2aWNlSW5mbyB9PihcbiAgICAgIGAke3RoaXMuYmFzZVVybH0vJHtkZXZpY2VJZH1gXG4gICAgKS5waXBlKG1hcChyZXNwb25zZSA9PiByZXNwb25zZS5kZXZpY2UpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCbG9xdWVhIHVuIGRpc3Bvc2l0aXZvLlxuICAgKiBSZXZvY2EgdG9kYXMgbGFzIHNlc2lvbmVzIGFjdGl2YXMgZGUgZXNlIGRpc3Bvc2l0aXZvLlxuICAgKi9cbiAgYmxvY2tEZXZpY2UoZGV2aWNlSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8RGV2aWNlQWN0aW9uUmVzdWx0PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PERldmljZUFjdGlvblJlc3VsdD4oXG4gICAgICBgJHt0aGlzLmJhc2VVcmx9LyR7ZGV2aWNlSWR9L2Jsb2NrYCxcbiAgICAgIHt9XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHJ1ZWJhIHVuIGRpc3Bvc2l0aXZvIHBlbmRpZW50ZS5cbiAgICogQ2FtYmlhIGVsIGVzdGFkbyBkZSBwZW5kaW5nX2FwcHJvdmFsIGEgYWN0aXZlLlxuICAgKi9cbiAgYXBwcm92ZURldmljZShkZXZpY2VJZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxEZXZpY2VBY3Rpb25SZXN1bHQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8RGV2aWNlQWN0aW9uUmVzdWx0PihcbiAgICAgIGAke3RoaXMuYmFzZVVybH0vJHtkZXZpY2VJZH0vYXBwcm92ZWAsXG4gICAgICB7fVxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogRWxpbWluYSB1biBkaXNwb3NpdGl2byByZWdpc3RyYWRvLlxuICAgKi9cbiAgZGVsZXRlRGV2aWNlKGRldmljZUlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPERldmljZUFjdGlvblJlc3VsdD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPERldmljZUFjdGlvblJlc3VsdD4oYCR7dGhpcy5iYXNlVXJsfS8ke2RldmljZUlkfWApO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYSB1biB0b2tlbiBkZSBhY2Npw7NuIFNJTiBlamVjdXRhcmxvLlxuICAgKiDDmnRpbCBwYXJhIG1vc3RyYXIgY29uZmlybWFjacOzbiBhbCB1c3VhcmlvIGFudGVzIGRlIGVqZWN1dGFyLlxuICAgKiBFc3RlIGVuZHBvaW50IE5PIHJlcXVpZXJlIGF1dGVudGljYWNpw7NuLlxuICAgKlxuICAgKiBAcGFyYW0gdG9rZW4gVG9rZW4gSldUIGRlIGFjY2nDs25cbiAgICogQHJldHVybnMgSW5mb3JtYWNpw7NuIGRlbCB0b2tlbiBzaSBlcyB2w6FsaWRvXG4gICAqXG4gICAqIEBleGFtcGxlXG4gICAqIGBgYHR5cGVzY3JpcHRcbiAgICogY29uc3QgdG9rZW4gPSB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWyd0b2tlbiddO1xuICAgKiBpZiAodG9rZW4pIHtcbiAgICogICBjb25zdCB2YWxpZGF0aW9uID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5kZXZpY2VTZXJ2aWNlLnZhbGlkYXRlQWN0aW9uKHRva2VuKSk7XG4gICAqICAgaWYgKHZhbGlkYXRpb24udmFsaWQpIHtcbiAgICogICAgIC8vIE1vc3RyYXIgY29uZmlybWFjacOzbiBhbCB1c3VhcmlvXG4gICAqICAgICBjb25zb2xlLmxvZyhgQWNjacOzbjogJHt2YWxpZGF0aW9uLmFjdGlvblR5cGV9YCk7XG4gICAqICAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKi9cbiAgdmFsaWRhdGVBY3Rpb24odG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8VmFsaWRhdGVBY3Rpb25SZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxWYWxpZGF0ZUFjdGlvblJlc3BvbnNlPihcbiAgICAgIGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L3YyL2FjdGlvbnMvdmFsaWRhdGVgLFxuICAgICAgeyB0b2tlbiB9XG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFamVjdXRhIHVuYSBhY2Npw7NuIGRlIGRpc3Bvc2l0aXZvIGRlc2RlIHVuIHRva2VuIGRlIGVtYWlsLlxuICAgKiBFc3RlIGVuZHBvaW50IE5PIHJlcXVpZXJlIGF1dGVudGljYWNpw7NuLlxuICAgKiBFbCB0b2tlbiB2aWVuZSBlbiBsYSBVUkwgZGVsIGVtYWlsIGRlIGFsZXJ0YSBkZSBudWV2byBpbmljaW8gZGUgc2VzacOzbi5cbiAgICpcbiAgICogQHBhcmFtIHRva2VuIFRva2VuIEpXVCBkZSBhY2Npw7NuICgyNGgsIHVuIHNvbG8gdXNvKVxuICAgKlxuICAgKiBAZXhhbXBsZVxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIC8vIEVuIGxhIHDDoWdpbmEgZGUgZGlzcG9zaXRpdm9zLCBhbCBkZXRlY3RhciA/dG9rZW49eHh4IGVuIGxhIFVSTDpcbiAgICogY29uc3QgdG9rZW4gPSB0aGlzLnJvdXRlLnNuYXBzaG90LnF1ZXJ5UGFyYW1zWyd0b2tlbiddO1xuICAgKiBpZiAodG9rZW4pIHtcbiAgICogICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmRldmljZVNlcnZpY2UuZXhlY3V0ZUFjdGlvbih0b2tlbikpO1xuICAgKiAgIGlmIChyZXN1bHQuc3VjY2Vzcykge1xuICAgKiAgICAgY29uc29sZS5sb2coYERpc3Bvc2l0aXZvIGJsb3F1ZWFkbywgJHtyZXN1bHQuc2Vzc2lvbnNSZXZva2VkfSBzZXNpb25lcyBjZXJyYWRhc2ApO1xuICAgKiAgIH1cbiAgICogfVxuICAgKiBgYGBcbiAgICovXG4gIGV4ZWN1dGVBY3Rpb24odG9rZW46IHN0cmluZyk6IE9ic2VydmFibGU8RGV2aWNlQWN0aW9uUmVzcG9uc2U+IHtcbiAgICAvLyBVc2EgZWwgZW5kcG9pbnQgdW5pZmljYWRvIGRlIGFjY2lvbmVzXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PHsgb3BlcmF0aW9uSWQ6IHN0cmluZzsgc3VjY2VzczogYm9vbGVhbjsgbWVzc2FnZTogc3RyaW5nOyBkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gfT4oXG4gICAgICBgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS92Mi9hY3Rpb25zL2V4ZWN1dGVgLFxuICAgICAgeyB0b2tlbiB9XG4gICAgKS5waXBlKFxuICAgICAgbWFwKHJlc3BvbnNlID0+ICh7XG4gICAgICAgIG9wZXJhdGlvbklkOiByZXNwb25zZS5vcGVyYXRpb25JZCxcbiAgICAgICAgc3VjY2VzczogcmVzcG9uc2Uuc3VjY2VzcyxcbiAgICAgICAgbWVzc2FnZTogcmVzcG9uc2UubWVzc2FnZSxcbiAgICAgICAgYWN0aW9uOiAocmVzcG9uc2UuZGF0YT8uWydhY3Rpb24nXSBhcyBzdHJpbmcpIHx8ICdyZWZ1c2UnLFxuICAgICAgICBkZXZpY2VJZDogKHJlc3BvbnNlLmRhdGE/LlsnZGV2aWNlSWQnXSBhcyBzdHJpbmcpIHx8ICcnLFxuICAgICAgICBzZXNzaW9uc1Jldm9rZWQ6IHJlc3BvbnNlLmRhdGE/Llsnc2Vzc2lvbnNSZXZva2VkJ10gYXMgbnVtYmVyIHwgdW5kZWZpbmVkLFxuICAgICAgfSkpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
@@ -107,7 +107,7 @@ export class HandoffService {
|
|
|
107
107
|
const tokenParam = options.tokenParam ?? HANDOFF_TOKEN_PARAM;
|
|
108
108
|
const routeParam = options.routeParam ?? HANDOFF_ROUTE_PARAM;
|
|
109
109
|
const defaultRoute = options.defaultRoute ?? '/';
|
|
110
|
-
const errorRoute = options.errorRoute ?? this.config
|
|
110
|
+
const errorRoute = options.errorRoute ?? this.config?.loginRoute ?? '/login';
|
|
111
111
|
const params = new URLSearchParams(window.location.search);
|
|
112
112
|
const token = params.get(tokenParam);
|
|
113
113
|
if (!token) {
|
|
@@ -137,7 +137,7 @@ export class HandoffService {
|
|
|
137
137
|
});
|
|
138
138
|
}
|
|
139
139
|
get baseUrl() {
|
|
140
|
-
return `${this.config
|
|
140
|
+
return `${this.config?.apiUrl}${this.config?.authPrefix}`;
|
|
141
141
|
}
|
|
142
142
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HandoffService, deps: [{ token: VALTECH_AUTH_CONFIG, optional: true }, { token: i1.HttpClient }, { token: i2.AuthService }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
143
143
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: HandoffService, providedIn: 'root' }); }
|
|
@@ -151,4 +151,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
151
151
|
type: Inject,
|
|
152
152
|
args: [VALTECH_AUTH_CONFIG]
|
|
153
153
|
}] }, { type: i1.HttpClient }, { type: i2.AuthService }, { type: i3.Router }] });
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZG9mZi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL2hhbmRvZmYuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7QUFHL0M7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLFNBQVMsQ0FBQztBQUU3Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLE9BQU8sQ0FBQztBQW1FM0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUFFSCxNQUFNLE9BQU8sY0FBYztJQUd6QixZQUNtRCxNQUFnQyxFQUN6RSxJQUFnQixFQUNoQixJQUFpQixFQUNqQixNQUFjO1FBSDJCLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBQ3pFLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBTmhCLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFPdEIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0gsYUFBYSxDQUFDLFVBQWdDLEVBQUU7UUFDOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBd0IsR0FBRyxJQUFJLENBQUMsT0FBTyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSCxlQUFlLENBQUMsS0FBYTtRQUMzQixP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QyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgVkFMVEVDSF9BVVRIX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7IFZhbHRlY2hBdXRoQ29uZmlnIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogTmFtZSBvZiB0aGUgcXVlcnkgcGFyYW0gdGhhdCBjYXJyaWVzIHRoZSBoYW5kb2ZmIHRva2VuLiBBcHBzIG1heSBvdmVycmlkZVxuICogdmlhIGBkZXRlY3RBbmRFeGNoYW5nZUhhbmRvZmYoeyB0b2tlblBhcmFtIH0pYCBidXQgdGhlIGRlZmF1bHQga2VlcHMgdGhlXG4gKiBjb252ZW50aW9uIGNvbnNpc3RlbnQgYWNyb3NzIHRoZSBmYWN0b3J5LlxuICovXG5leHBvcnQgY29uc3QgSEFORE9GRl9UT0tFTl9QQVJBTSA9ICdoYW5kb2ZmJztcblxuLyoqXG4gKiBOYW1lIG9mIHRoZSBxdWVyeSBwYXJhbSB0aGF0IGNhcnJpZXMgdGhlIHBvc3QtZXhjaGFuZ2Ugcm91dGUuXG4gKi9cbmV4cG9ydCBjb25zdCBIQU5ET0ZGX1JPVVRFX1BBUkFNID0gJ3JvdXRlJztcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgSGFuZG9mZlNlcnZpY2UuZGV0ZWN0QW5kRXhjaGFuZ2VIYW5kb2ZmYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXRlY3RBbmRFeGNoYW5nZU9wdGlvbnMge1xuICAvKiogT3ZlcnJpZGUgdGhlIHF1ZXJ5IHBhcmFtIG5hbWUuIERlZmF1bHQ6IGAnaGFuZG9mZidgLiAqL1xuICB0b2tlblBhcmFtPzogc3RyaW5nO1xuICAvKiogT3ZlcnJpZGUgdGhlIHJvdXRlIHBhcmFtIG5hbWUuIERlZmF1bHQ6IGAncm91dGUnYC4gKi9cbiAgcm91dGVQYXJhbT86IHN0cmluZztcbiAgLyoqIFdoZXJlIHRvIG5hdmlnYXRlIGlmIG5vIHJvdXRlIHBhcmFtIGlzIHByZXNlbnQuIERlZmF1bHQ6IGAnLydgLiAqL1xuICBkZWZhdWx0Um91dGU/OiBzdHJpbmc7XG4gIC8qKiBXaGVyZSB0byBuYXZpZ2F0ZSBvbiBleGNoYW5nZSBlcnJvci4gRGVmYXVsdDogYXBwJ3MgY29uZmlndXJlZCBgbG9naW5Sb3V0ZWAuICovXG4gIGVycm9yUm91dGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVxdWVzdCBib2R5IGZvciBgUE9TVCAvdjIvYXV0aC9oYW5kb2ZmYC5cbiAqXG4gKiBCb3RoIGZpZWxkcyBhcmUgb3B0aW9uYWwgYW5kIHN0b3JlZCBmb3IgYXVkaXQgb25seSDigJQgdGhlIGV4Y2hhbmdlIHN0ZXBcbiAqIGRvZXMgbm90IGVuZm9yY2UgdGhhdCB0aGUgcmVkZWVtaW5nIGFwcCBtYXRjaGVzIGB0YXJnZXRBcHBJZGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFuZG9mZkNyZWF0ZVJlcXVlc3Qge1xuICAvKiogVGFyZ2V0IGFwcCB0aGUgaGFuZG9mZiBpcyBpbnRlbmRlZCBmb3IgKGUuZy4gYFwibXl2YWx0ZWNoXCJgKS4gQXVkaXQtb25seS4gKi9cbiAgdGFyZ2V0QXBwSWQ/OiBzdHJpbmc7XG4gIC8qKiBSb3V0ZSB0aGUgdGFyZ2V0IGFwcCBzaG91bGQgbmF2aWdhdGUgdG8gYWZ0ZXIgZXhjaGFuZ2UuIEVjaG9lZCBiYWNrLiAqL1xuICByb3V0ZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBib2R5IGZyb20gYFBPU1QgL3YyL2F1dGgvaGFuZG9mZmAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFuZG9mZkNyZWF0ZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgLyoqIFJhdyB0b2tlbiB0byBlbWJlZCBpbiB0aGUgcmVkaXJlY3QgVVJMIGFzIGA/aGFuZG9mZj08dG9rZW4+YC4gMzBzIFRUTCwgc2luZ2xlLXVzZS4gKi9cbiAgdG9rZW46IHN0cmluZztcbiAgLyoqIFJGQzMzMzkgZXhwaXJhdGlvbiB0aW1lc3RhbXAuICovXG4gIGV4cGlyZXNBdDogc3RyaW5nO1xuICAvKiogRWNob2VkIGByb3V0ZWAgZnJvbSB0aGUgcmVxdWVzdCwgd2hlbiBwcm92aWRlZC4gKi9cbiAgcm91dGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBYnNvbHV0ZSBiYXNlIFVSTCBvZiB0aGUgdGFyZ2V0IGFwcCAoZS5nLiBgXCJodHRwczovL3NpZ2lmeS5jb21cImApLlxuICAgKlxuICAgKiBXaGVuIHByZXNlbnQsIGNhbGxlcnMgc2hvdWxkIHVzZSB0aGlzIGFzIHRoZSBkZXN0aW5hdGlvbiBmb3IgdGhlIHJlZGlyZWN0LlxuICAgKiBCYWNrZW5kIHJlc29sdmVzIGl0IGZyb20gdGhlIGBhcHAtY29uZmlnYCB0YWJsZSAoc2luZ2xlIHNvdXJjZSBvZiB0cnV0aCkuXG4gICAqXG4gICAqIE9wdGlvbmFsIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IOKAlCB3aGVuIG1pc3NpbmcsIGNhbGxlcnMgbWF5IGZhbGwgYmFja1xuICAgKiB0byBhIGNsaWVudC1zaWRlIGBhcHBVcmxzYCBtYXBwaW5nLlxuICAgKi9cbiAgdGFyZ2V0QmFzZVVybD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBib2R5IGZyb20gYFBPU1QgL3YyL2F1dGgvaGFuZG9mZi9leGNoYW5nZWAuXG4gKlxuICogU2FtZSBzaGFwZSBhcyBgU2lnbmluUmVzcG9uc2VgIOKAlCBpbnN0YWxsYWJsZSB2aWEgYEF1dGhTZXJ2aWNlLnNldEV4dGVybmFsQXV0aGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFuZG9mZkV4Y2hhbmdlUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBhY2Nlc3NUb2tlbjogc3RyaW5nO1xuICByZWZyZXNoVG9rZW46IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgZXhwaXJlc0luOiBudW1iZXI7XG4gIHRva2VuVHlwZTogc3RyaW5nO1xuICB1c2VySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBIYW5kb2ZmU2VydmljZSDigJQgY3Jvc3MtYXBwIHNlc3Npb24gdHJhbnNmZXIuXG4gKlxuICogSW1wbGVtZW50cyB0aGUgT0F1dGggQXV0aG9yaXphdGlvbiBDb2RlIHBhdHRlcm4sIGFwcGxpZWQgaW50ZXJuYWxseSBiZXR3ZWVuXG4gKiBhcHBzIHRoYXQgc2hhcmUgdGhlIHNhbWUgYmFja2VuZC5cbiAqXG4gKiAqKk9yaWdpbiBhcHAgKHVzZXIgaXMgYXV0aGVudGljYXRlZCk6KipcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCB7IHRva2VuLCByb3V0ZSB9ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gKiAgIGhhbmRvZmYuY3JlYXRlSGFuZG9mZih7IHRhcmdldEFwcElkOiAnbXl2YWx0ZWNoJywgcm91dGU6ICcvYXBwL2Rhc2hib2FyZCcgfSlcbiAqICk7XG4gKiB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGBodHRwczovL215dmFsdGVjaC5hcHAvP2hhbmRvZmY9JHt0b2tlbn0mcm91dGU9JHtlbmNvZGVVUklDb21wb25lbnQocm91dGUgPz8gJy8nKX1gO1xuICogYGBgXG4gKlxuICogKipUYXJnZXQgYXBwIChib290KToqKiBjYWxsIGBleGNoYW5nZUhhbmRvZmYodG9rZW4pYC4gT24gc3VjY2VzcywgdGhlIHNlc3Npb25cbiAqIGlzIGluc3RhbGxlZCAoYEF1dGhTZXJ2aWNlLnNldEV4dGVybmFsQXV0aGApIGFuZCB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkLlxuICogU2VlIGBkZXRlY3RBbmRFeGNoYW5nZUhhbmRvZmZgIGhlbHBlciBmb3IgdGhlIHR5cGljYWwgYm9vdHN0cmFwIHBhdHRlcm4uXG4gKlxuICogU2VjdXJpdHkgbm90ZXM6XG4gKiAtIFRva2VuIGlzIHNpbmdsZS11c2UgYW5kIHNob3J0LWxpdmVkICgzMHMpIOKAlCBlbmZvcmNlZCBzZXJ2ZXItc2lkZS5cbiAqIC0gVG9rZW4gaW4gVVJMIG11c3QgYmUgcmVtb3ZlZCBmcm9tIGhpc3RvcnkgYWZ0ZXIgZXhjaGFuZ2UgdG8gYXZvaWQgbG9nIGxlYWthZ2UuXG4gKiAtIFRoZSBleGNoYW5nZSBlbmRwb2ludCBpcyBwdWJsaWM7IGRvIE5PVCBhZGQgYXV0aCBoZWFkZXIuIFRoZVxuICogICBgSHR0cENsaWVudGAgcmVxdWVzdCBiZWxvdyBhdm9pZHMgdHJpZ2dlcmluZyB0aGUgYXV0aCBpbnRlcmNlcHRvciBzaW5jZSB0aGVcbiAqICAgdXNlciBpc24ndCBsb2dnZWQgaW4geWV0IG9uIHRoZSB0YXJnZXQgYXBwLlxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEhhbmRvZmZTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBkZXRlY3RlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVkFMVEVDSF9BVVRIX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IFZhbHRlY2hBdXRoQ29uZmlnIHwgbnVsbCxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXG4gICkge31cblxuICAvKipcbiAgICogQ3JlYXRlIGEgaGFuZG9mZiB0b2tlbi4gQ2FsbGVyIG11c3QgYmUgYXV0aGVudGljYXRlZC5cbiAgICpcbiAgICogQHBhcmFtIHJlcXVlc3QgT3B0aW9uYWwgbWV0YWRhdGE6IHRhcmdldCBhcHAgaWQgYW5kIGludGVuZGVkIHJvdXRlLlxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIGVtaXR0aW5nIGB7IHRva2VuLCBleHBpcmVzQXQsIHJvdXRlPyB9YC5cbiAgICovXG4gIGNyZWF0ZUhhbmRvZmYocmVxdWVzdDogSGFuZG9mZkNyZWF0ZVJlcXVlc3QgPSB7fSk6IE9ic2VydmFibGU8SGFuZG9mZkNyZWF0ZVJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEhhbmRvZmZDcmVhdGVSZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS9oYW5kb2ZmYCwgcmVxdWVzdCk7XG4gIH1cblxuICAvKipcbiAgICogRXhjaGFuZ2UgYSBoYW5kb2ZmIHRva2VuIGZvciBhIHNlc3Npb24gYW5kIGluc3RhbGwgaXQuXG4gICAqXG4gICAqIE9uIHN1Y2Nlc3MsIHRoZSByZXNwb25zZSBpcyBwaXBlZCB0aHJvdWdoIGBBdXRoU2VydmljZS5zZXRFeHRlcm5hbEF1dGhgXG4gICAqIHNvIHRoZSB1c2VyIGJlY29tZXMgYXV0aGVudGljYXRlZC4gU3Vic2VxdWVudCBuYXZpZ2F0aW9uIGNhbiBwcm9jZWVkLlxuICAgKlxuICAgKiBPbiBmYWlsdXJlLCB0aGUgb2JzZXJ2YWJsZSBlcnJvcnMuIFRoZSBjYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yXG4gICAqIHNob3dpbmcgYW4gZXJyb3IgYW5kIHJvdXRpbmcgdG8gYC9sb2dpbmAuXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiBSYXcgaGFuZG9mZiB0b2tlbiByZWFkIGZyb20gdGhlIFVSTC5cbiAgICovXG4gIGV4Y2hhbmdlSGFuZG9mZih0b2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxIYW5kb2ZmRXhjaGFuZ2VSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PEhhbmRvZmZFeGNoYW5nZVJlc3BvbnNlPihgJHt0aGlzLmJhc2VVcmx9L2hhbmRvZmYvZXhjaGFuZ2VgLCB7IHRva2VuIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKHJlc3BvbnNlID0+IHRoaXMuaW5zdGFsbFNlc3Npb24ocmVzcG9uc2UpKSxcbiAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xuICAgICAgICAgIC8vIFN1cmZhY2UgdGhlIGVycm9yIHVudG91Y2hlZCDigJQgdGhlIGNhbGxlciBkZWNpZGVzIGhvdyB0byByZWFjdFxuICAgICAgICAgIC8vICh0eXBpY2FsbHk6IHJlZGlyZWN0IHRvIC9sb2dpbiArIHRvYXN0KS4gRG9uJ3QgaW5zdGFsbCBhIGJhZCBzZXNzaW9uLlxuICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQm9vdHN0cmFwIGhlbHBlciDigJQgcmVhZHMgdGhlIGhhbmRvZmYgdG9rZW4gZnJvbSB0aGUgY3VycmVudCBVUkwsIGV4Y2hhbmdlc1xuICAgKiBpdCBmb3IgYSBzZXNzaW9uLCBhbmQgbmF2aWdhdGVzIHRvIHRoZSBpbnRlbmRlZCByb3V0ZSB3aXRoIHRoZSB0b2tlblxuICAgKiBzdHJpcHBlZCBmcm9tIGhpc3RvcnkuXG4gICAqXG4gICAqIElkZW1wb3RlbnQ6IHN1YnNlcXVlbnQgY2FsbHMgYXJlIG5vLW9wcy4gV2lyZSBmcm9tIGFuXG4gICAqIGBBUFBfSU5JVElBTElaRVJgL2Bwcm92aWRlQXBwSW5pdGlhbGl6ZXJgIGZhY3RvcnkgaW4gYG1haW4udHNgLlxuICAgKlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIC8vIG1haW4udHNcbiAgICogcHJvdmlkZUFwcEluaXRpYWxpemVyKCgpID0+IGluamVjdChIYW5kb2ZmU2VydmljZSkuZGV0ZWN0QW5kRXhjaGFuZ2VIYW5kb2ZmKCkpXG4gICAqIGBgYFxuICAgKlxuICAgKiBPbiBlcnJvciAoZXhwaXJlZC91c2VkL2ludmFsaWQgdG9rZW4pLCByZWRpcmVjdHMgdG8gYGVycm9yUm91dGVgIChkZWZhdWx0OlxuICAgKiB0aGUgYXBwJ3MgY29uZmlndXJlZCBgbG9naW5Sb3V0ZWApLiBUaGUgVVJMIGlzIGFsd2F5cyBjbGVhbmVkLCBldmVuIG9uXG4gICAqIGVycm9yLCBzbyB0aGUgdG9rZW4gY2Fubm90IGJlIHJldHJpZWQgYnkgcmVmcmVzaGluZyB0aGUgcGFnZS5cbiAgICpcbiAgICogQHJldHVybnMgYHRydWVgIGlmIGEgaGFuZG9mZiB3YXMgZGV0ZWN0ZWQgYW5kIHByb2Nlc3NlZCAoc3VjY2VzcyBvciBmYWlsKS5cbiAgICogICAgICAgICAgYGZhbHNlYCBpZiBubyB0b2tlbiB3YXMgcHJlc2VudCAoY29sZCBib290LCBub3JtYWwgZmxvdykuXG4gICAqL1xuICBhc3luYyBkZXRlY3RBbmRFeGNoYW5nZUhhbmRvZmYob3B0aW9uczogRGV0ZWN0QW5kRXhjaGFuZ2VPcHRpb25zID0ge30pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBpZiAodGhpcy5kZXRlY3RlZCB8fCB0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmRldGVjdGVkID0gdHJ1ZTtcblxuICAgIGNvbnN0IHRva2VuUGFyYW0gPSBvcHRpb25zLnRva2VuUGFyYW0gPz8gSEFORE9GRl9UT0tFTl9QQVJBTTtcbiAgICBjb25zdCByb3V0ZVBhcmFtID0gb3B0aW9ucy5yb3V0ZVBhcmFtID8/IEhBTkRPRkZfUk9VVEVfUEFSQU07XG4gICAgY29uc3QgZGVmYXVsdFJvdXRlID0gb3B0aW9ucy5kZWZhdWx0Um91dGUgPz8gJy8nO1xuICAgIGNvbnN0IGVycm9yUm91dGUgPSBvcHRpb25zLmVycm9yUm91dGUgPz8gdGhpcy5jb25maWcubG9naW5Sb3V0ZSA/PyAnL2xvZ2luJztcblxuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMod2luZG93LmxvY2F0aW9uLnNlYXJjaCk7XG4gICAgY29uc3QgdG9rZW4gPSBwYXJhbXMuZ2V0KHRva2VuUGFyYW0pO1xuICAgIGlmICghdG9rZW4pIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBjb25zdCB0YXJnZXRSb3V0ZSA9IHBhcmFtcy5nZXQocm91dGVQYXJhbSkgfHwgZGVmYXVsdFJvdXRlO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGZpcnN0VmFsdWVGcm9tKHRoaXMuZXhjaGFuZ2VIYW5kb2ZmKHRva2VuKSk7XG4gICAgICBhd2FpdCB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHRhcmdldFJvdXRlLCB7IHJlcGxhY2VVcmw6IHRydWUgfSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1tIYW5kb2ZmXSBFeGNoYW5nZSBmYWlsZWQsIHJlZGlyZWN0aW5nIHRvIGxvZ2luJywgZXJyKTtcbiAgICAgIGF3YWl0IHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoZXJyb3JSb3V0ZSwgeyByZXBsYWNlVXJsOiB0cnVlIH0pO1xuICAgIH1cblxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFBlcnNpc3QgdGhlIHNlc3Npb24gaW4gYEF1dGhTZXJ2aWNlYC4gTWlycm9ycyB0aGUgaW5zdGFsbCBmbG93IHVzZWQgYnlcbiAgICogdGhlIG5vcm1hbCBzaWduaW4gcGF0aCBzbyB0aW1lcnMsIEZpcmViYXNlLCBhbmQgdGFiLXN5bmMgYWxsIGtpY2sgaW4uXG4gICAqL1xuICBwcml2YXRlIGluc3RhbGxTZXNzaW9uKHJlc3BvbnNlOiBIYW5kb2ZmRXhjaGFuZ2VSZXNwb25zZSk6IHZvaWQge1xuICAgIHRoaXMuYXV0aC5zZXRFeHRlcm5hbEF1dGgoe1xuICAgICAgYWNjZXNzVG9rZW46IHJlc3BvbnNlLmFjY2Vzc1Rva2VuLFxuICAgICAgcmVmcmVzaFRva2VuOiByZXNwb25zZS5yZWZyZXNoVG9rZW4sXG4gICAgICBmaXJlYmFzZVRva2VuOiByZXNwb25zZS5maXJlYmFzZVRva2VuLFxuICAgICAgZXhwaXJlc0luOiByZXNwb25zZS5leHBpcmVzSW4sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldCBiYXNlVXJsKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuY29uZmlnLmFwaVVybH0ke3RoaXMuY29uZmlnLmF1dGhQcmVmaXh9YDtcbiAgfVxufVxuIl19
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFuZG9mZi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL2hhbmRvZmYuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7Ozs7QUFHL0M7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLFNBQVMsQ0FBQztBQUU3Qzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLE9BQU8sQ0FBQztBQW1FM0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUFFSCxNQUFNLE9BQU8sY0FBYztJQUd6QixZQUNtRCxNQUFnQyxFQUN6RSxJQUFnQixFQUNoQixJQUFpQixFQUNqQixNQUFjO1FBSDJCLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBQ3pFLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsU0FBSSxHQUFKLElBQUksQ0FBYTtRQUNqQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBTmhCLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFPdEIsQ0FBQztJQUVKOzs7OztPQUtHO0lBQ0gsYUFBYSxDQUFDLFVBQWdDLEVBQUU7UUFDOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBd0IsR0FBRyxJQUFJLENBQUMsT0FBTyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVEOzs7Ozs7Ozs7O09BVUc7SUFDSCxlQUFlLENBQUMsS0FBYTtRQUMzQixP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QyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgVkFMVEVDSF9BVVRIX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7IFZhbHRlY2hBdXRoQ29uZmlnIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogTmFtZSBvZiB0aGUgcXVlcnkgcGFyYW0gdGhhdCBjYXJyaWVzIHRoZSBoYW5kb2ZmIHRva2VuLiBBcHBzIG1heSBvdmVycmlkZVxuICogdmlhIGBkZXRlY3RBbmRFeGNoYW5nZUhhbmRvZmYoeyB0b2tlblBhcmFtIH0pYCBidXQgdGhlIGRlZmF1bHQga2VlcHMgdGhlXG4gKiBjb252ZW50aW9uIGNvbnNpc3RlbnQgYWNyb3NzIHRoZSBmYWN0b3J5LlxuICovXG5leHBvcnQgY29uc3QgSEFORE9GRl9UT0tFTl9QQVJBTSA9ICdoYW5kb2ZmJztcblxuLyoqXG4gKiBOYW1lIG9mIHRoZSBxdWVyeSBwYXJhbSB0aGF0IGNhcnJpZXMgdGhlIHBvc3QtZXhjaGFuZ2Ugcm91dGUuXG4gKi9cbmV4cG9ydCBjb25zdCBIQU5ET0ZGX1JPVVRFX1BBUkFNID0gJ3JvdXRlJztcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgSGFuZG9mZlNlcnZpY2UuZGV0ZWN0QW5kRXhjaGFuZ2VIYW5kb2ZmYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXRlY3RBbmRFeGNoYW5nZU9wdGlvbnMge1xuICAvKiogT3ZlcnJpZGUgdGhlIHF1ZXJ5IHBhcmFtIG5hbWUuIERlZmF1bHQ6IGAnaGFuZG9mZidgLiAqL1xuICB0b2tlblBhcmFtPzogc3RyaW5nO1xuICAvKiogT3ZlcnJpZGUgdGhlIHJvdXRlIHBhcmFtIG5hbWUuIERlZmF1bHQ6IGAncm91dGUnYC4gKi9cbiAgcm91dGVQYXJhbT86IHN0cmluZztcbiAgLyoqIFdoZXJlIHRvIG5hdmlnYXRlIGlmIG5vIHJvdXRlIHBhcmFtIGlzIHByZXNlbnQuIERlZmF1bHQ6IGAnLydgLiAqL1xuICBkZWZhdWx0Um91dGU/OiBzdHJpbmc7XG4gIC8qKiBXaGVyZSB0byBuYXZpZ2F0ZSBvbiBleGNoYW5nZSBlcnJvci4gRGVmYXVsdDogYXBwJ3MgY29uZmlndXJlZCBgbG9naW5Sb3V0ZWAuICovXG4gIGVycm9yUm91dGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVxdWVzdCBib2R5IGZvciBgUE9TVCAvdjIvYXV0aC9oYW5kb2ZmYC5cbiAqXG4gKiBCb3RoIGZpZWxkcyBhcmUgb3B0aW9uYWwgYW5kIHN0b3JlZCBmb3IgYXVkaXQgb25seSDigJQgdGhlIGV4Y2hhbmdlIHN0ZXBcbiAqIGRvZXMgbm90IGVuZm9yY2UgdGhhdCB0aGUgcmVkZWVtaW5nIGFwcCBtYXRjaGVzIGB0YXJnZXRBcHBJZGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFuZG9mZkNyZWF0ZVJlcXVlc3Qge1xuICAvKiogVGFyZ2V0IGFwcCB0aGUgaGFuZG9mZiBpcyBpbnRlbmRlZCBmb3IgKGUuZy4gYFwibXl2YWx0ZWNoXCJgKS4gQXVkaXQtb25seS4gKi9cbiAgdGFyZ2V0QXBwSWQ/OiBzdHJpbmc7XG4gIC8qKiBSb3V0ZSB0aGUgdGFyZ2V0IGFwcCBzaG91bGQgbmF2aWdhdGUgdG8gYWZ0ZXIgZXhjaGFuZ2UuIEVjaG9lZCBiYWNrLiAqL1xuICByb3V0ZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBib2R5IGZyb20gYFBPU1QgL3YyL2F1dGgvaGFuZG9mZmAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFuZG9mZkNyZWF0ZVJlc3BvbnNlIHtcbiAgb3BlcmF0aW9uSWQ6IHN0cmluZztcbiAgLyoqIFJhdyB0b2tlbiB0byBlbWJlZCBpbiB0aGUgcmVkaXJlY3QgVVJMIGFzIGA/aGFuZG9mZj08dG9rZW4+YC4gMzBzIFRUTCwgc2luZ2xlLXVzZS4gKi9cbiAgdG9rZW46IHN0cmluZztcbiAgLyoqIFJGQzMzMzkgZXhwaXJhdGlvbiB0aW1lc3RhbXAuICovXG4gIGV4cGlyZXNBdDogc3RyaW5nO1xuICAvKiogRWNob2VkIGByb3V0ZWAgZnJvbSB0aGUgcmVxdWVzdCwgd2hlbiBwcm92aWRlZC4gKi9cbiAgcm91dGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBYnNvbHV0ZSBiYXNlIFVSTCBvZiB0aGUgdGFyZ2V0IGFwcCAoZS5nLiBgXCJodHRwczovL3NpZ2lmeS5jb21cImApLlxuICAgKlxuICAgKiBXaGVuIHByZXNlbnQsIGNhbGxlcnMgc2hvdWxkIHVzZSB0aGlzIGFzIHRoZSBkZXN0aW5hdGlvbiBmb3IgdGhlIHJlZGlyZWN0LlxuICAgKiBCYWNrZW5kIHJlc29sdmVzIGl0IGZyb20gdGhlIGBhcHAtY29uZmlnYCB0YWJsZSAoc2luZ2xlIHNvdXJjZSBvZiB0cnV0aCkuXG4gICAqXG4gICAqIE9wdGlvbmFsIGZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IOKAlCB3aGVuIG1pc3NpbmcsIGNhbGxlcnMgbWF5IGZhbGwgYmFja1xuICAgKiB0byBhIGNsaWVudC1zaWRlIGBhcHBVcmxzYCBtYXBwaW5nLlxuICAgKi9cbiAgdGFyZ2V0QmFzZVVybD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZXNwb25zZSBib2R5IGZyb20gYFBPU1QgL3YyL2F1dGgvaGFuZG9mZi9leGNoYW5nZWAuXG4gKlxuICogU2FtZSBzaGFwZSBhcyBgU2lnbmluUmVzcG9uc2VgIOKAlCBpbnN0YWxsYWJsZSB2aWEgYEF1dGhTZXJ2aWNlLnNldEV4dGVybmFsQXV0aGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGFuZG9mZkV4Y2hhbmdlUmVzcG9uc2Uge1xuICBvcGVyYXRpb25JZDogc3RyaW5nO1xuICBhY2Nlc3NUb2tlbjogc3RyaW5nO1xuICByZWZyZXNoVG9rZW46IHN0cmluZztcbiAgZmlyZWJhc2VUb2tlbj86IHN0cmluZztcbiAgZXhwaXJlc0luOiBudW1iZXI7XG4gIHRva2VuVHlwZTogc3RyaW5nO1xuICB1c2VySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBIYW5kb2ZmU2VydmljZSDigJQgY3Jvc3MtYXBwIHNlc3Npb24gdHJhbnNmZXIuXG4gKlxuICogSW1wbGVtZW50cyB0aGUgT0F1dGggQXV0aG9yaXphdGlvbiBDb2RlIHBhdHRlcm4sIGFwcGxpZWQgaW50ZXJuYWxseSBiZXR3ZWVuXG4gKiBhcHBzIHRoYXQgc2hhcmUgdGhlIHNhbWUgYmFja2VuZC5cbiAqXG4gKiAqKk9yaWdpbiBhcHAgKHVzZXIgaXMgYXV0aGVudGljYXRlZCk6KipcbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCB7IHRva2VuLCByb3V0ZSB9ID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gKiAgIGhhbmRvZmYuY3JlYXRlSGFuZG9mZih7IHRhcmdldEFwcElkOiAnbXl2YWx0ZWNoJywgcm91dGU6ICcvYXBwL2Rhc2hib2FyZCcgfSlcbiAqICk7XG4gKiB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGBodHRwczovL215dmFsdGVjaC5hcHAvP2hhbmRvZmY9JHt0b2tlbn0mcm91dGU9JHtlbmNvZGVVUklDb21wb25lbnQocm91dGUgPz8gJy8nKX1gO1xuICogYGBgXG4gKlxuICogKipUYXJnZXQgYXBwIChib290KToqKiBjYWxsIGBleGNoYW5nZUhhbmRvZmYodG9rZW4pYC4gT24gc3VjY2VzcywgdGhlIHNlc3Npb25cbiAqIGlzIGluc3RhbGxlZCAoYEF1dGhTZXJ2aWNlLnNldEV4dGVybmFsQXV0aGApIGFuZCB0aGUgdXNlciBpcyBhdXRoZW50aWNhdGVkLlxuICogU2VlIGBkZXRlY3RBbmRFeGNoYW5nZUhhbmRvZmZgIGhlbHBlciBmb3IgdGhlIHR5cGljYWwgYm9vdHN0cmFwIHBhdHRlcm4uXG4gKlxuICogU2VjdXJpdHkgbm90ZXM6XG4gKiAtIFRva2VuIGlzIHNpbmdsZS11c2UgYW5kIHNob3J0LWxpdmVkICgzMHMpIOKAlCBlbmZvcmNlZCBzZXJ2ZXItc2lkZS5cbiAqIC0gVG9rZW4gaW4gVVJMIG11c3QgYmUgcmVtb3ZlZCBmcm9tIGhpc3RvcnkgYWZ0ZXIgZXhjaGFuZ2UgdG8gYXZvaWQgbG9nIGxlYWthZ2UuXG4gKiAtIFRoZSBleGNoYW5nZSBlbmRwb2ludCBpcyBwdWJsaWM7IGRvIE5PVCBhZGQgYXV0aCBoZWFkZXIuIFRoZVxuICogICBgSHR0cENsaWVudGAgcmVxdWVzdCBiZWxvdyBhdm9pZHMgdHJpZ2dlcmluZyB0aGUgYXV0aCBpbnRlcmNlcHRvciBzaW5jZSB0aGVcbiAqICAgdXNlciBpc24ndCBsb2dnZWQgaW4geWV0IG9uIHRoZSB0YXJnZXQgYXBwLlxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEhhbmRvZmZTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBkZXRlY3RlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVkFMVEVDSF9BVVRIX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IFZhbHRlY2hBdXRoQ29uZmlnIHwgbnVsbCxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBhdXRoOiBBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXG4gICkge31cblxuICAvKipcbiAgICogQ3JlYXRlIGEgaGFuZG9mZiB0b2tlbi4gQ2FsbGVyIG11c3QgYmUgYXV0aGVudGljYXRlZC5cbiAgICpcbiAgICogQHBhcmFtIHJlcXVlc3QgT3B0aW9uYWwgbWV0YWRhdGE6IHRhcmdldCBhcHAgaWQgYW5kIGludGVuZGVkIHJvdXRlLlxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIGVtaXR0aW5nIGB7IHRva2VuLCBleHBpcmVzQXQsIHJvdXRlPyB9YC5cbiAgICovXG4gIGNyZWF0ZUhhbmRvZmYocmVxdWVzdDogSGFuZG9mZkNyZWF0ZVJlcXVlc3QgPSB7fSk6IE9ic2VydmFibGU8SGFuZG9mZkNyZWF0ZVJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEhhbmRvZmZDcmVhdGVSZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS9oYW5kb2ZmYCwgcmVxdWVzdCk7XG4gIH1cblxuICAvKipcbiAgICogRXhjaGFuZ2UgYSBoYW5kb2ZmIHRva2VuIGZvciBhIHNlc3Npb24gYW5kIGluc3RhbGwgaXQuXG4gICAqXG4gICAqIE9uIHN1Y2Nlc3MsIHRoZSByZXNwb25zZSBpcyBwaXBlZCB0aHJvdWdoIGBBdXRoU2VydmljZS5zZXRFeHRlcm5hbEF1dGhgXG4gICAqIHNvIHRoZSB1c2VyIGJlY29tZXMgYXV0aGVudGljYXRlZC4gU3Vic2VxdWVudCBuYXZpZ2F0aW9uIGNhbiBwcm9jZWVkLlxuICAgKlxuICAgKiBPbiBmYWlsdXJlLCB0aGUgb2JzZXJ2YWJsZSBlcnJvcnMuIFRoZSBjYWxsZXIgaXMgcmVzcG9uc2libGUgZm9yXG4gICAqIHNob3dpbmcgYW4gZXJyb3IgYW5kIHJvdXRpbmcgdG8gYC9sb2dpbmAuXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiBSYXcgaGFuZG9mZiB0b2tlbiByZWFkIGZyb20gdGhlIFVSTC5cbiAgICovXG4gIGV4Y2hhbmdlSGFuZG9mZih0b2tlbjogc3RyaW5nKTogT2JzZXJ2YWJsZTxIYW5kb2ZmRXhjaGFuZ2VSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PEhhbmRvZmZFeGNoYW5nZVJlc3BvbnNlPihgJHt0aGlzLmJhc2VVcmx9L2hhbmRvZmYvZXhjaGFuZ2VgLCB7IHRva2VuIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKHJlc3BvbnNlID0+IHRoaXMuaW5zdGFsbFNlc3Npb24ocmVzcG9uc2UpKSxcbiAgICAgICAgY2F0Y2hFcnJvcihlcnIgPT4ge1xuICAgICAgICAgIC8vIFN1cmZhY2UgdGhlIGVycm9yIHVudG91Y2hlZCDigJQgdGhlIGNhbGxlciBkZWNpZGVzIGhvdyB0byByZWFjdFxuICAgICAgICAgIC8vICh0eXBpY2FsbHk6IHJlZGlyZWN0IHRvIC9sb2dpbiArIHRvYXN0KS4gRG9uJ3QgaW5zdGFsbCBhIGJhZCBzZXNzaW9uLlxuICAgICAgICAgIHRocm93IGVycjtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQm9vdHN0cmFwIGhlbHBlciDigJQgcmVhZHMgdGhlIGhhbmRvZmYgdG9rZW4gZnJvbSB0aGUgY3VycmVudCBVUkwsIGV4Y2hhbmdlc1xuICAgKiBpdCBmb3IgYSBzZXNzaW9uLCBhbmQgbmF2aWdhdGVzIHRvIHRoZSBpbnRlbmRlZCByb3V0ZSB3aXRoIHRoZSB0b2tlblxuICAgKiBzdHJpcHBlZCBmcm9tIGhpc3RvcnkuXG4gICAqXG4gICAqIElkZW1wb3RlbnQ6IHN1YnNlcXVlbnQgY2FsbHMgYXJlIG5vLW9wcy4gV2lyZSBmcm9tIGFuXG4gICAqIGBBUFBfSU5JVElBTElaRVJgL2Bwcm92aWRlQXBwSW5pdGlhbGl6ZXJgIGZhY3RvcnkgaW4gYG1haW4udHNgLlxuICAgKlxuICAgKiBgYGB0eXBlc2NyaXB0XG4gICAqIC8vIG1haW4udHNcbiAgICogcHJvdmlkZUFwcEluaXRpYWxpemVyKCgpID0+IGluamVjdChIYW5kb2ZmU2VydmljZSkuZGV0ZWN0QW5kRXhjaGFuZ2VIYW5kb2ZmKCkpXG4gICAqIGBgYFxuICAgKlxuICAgKiBPbiBlcnJvciAoZXhwaXJlZC91c2VkL2ludmFsaWQgdG9rZW4pLCByZWRpcmVjdHMgdG8gYGVycm9yUm91dGVgIChkZWZhdWx0OlxuICAgKiB0aGUgYXBwJ3MgY29uZmlndXJlZCBgbG9naW5Sb3V0ZWApLiBUaGUgVVJMIGlzIGFsd2F5cyBjbGVhbmVkLCBldmVuIG9uXG4gICAqIGVycm9yLCBzbyB0aGUgdG9rZW4gY2Fubm90IGJlIHJldHJpZWQgYnkgcmVmcmVzaGluZyB0aGUgcGFnZS5cbiAgICpcbiAgICogQHJldHVybnMgYHRydWVgIGlmIGEgaGFuZG9mZiB3YXMgZGV0ZWN0ZWQgYW5kIHByb2Nlc3NlZCAoc3VjY2VzcyBvciBmYWlsKS5cbiAgICogICAgICAgICAgYGZhbHNlYCBpZiBubyB0b2tlbiB3YXMgcHJlc2VudCAoY29sZCBib290LCBub3JtYWwgZmxvdykuXG4gICAqL1xuICBhc3luYyBkZXRlY3RBbmRFeGNoYW5nZUhhbmRvZmYob3B0aW9uczogRGV0ZWN0QW5kRXhjaGFuZ2VPcHRpb25zID0ge30pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBpZiAodGhpcy5kZXRlY3RlZCB8fCB0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLmRldGVjdGVkID0gdHJ1ZTtcblxuICAgIGNvbnN0IHRva2VuUGFyYW0gPSBvcHRpb25zLnRva2VuUGFyYW0gPz8gSEFORE9GRl9UT0tFTl9QQVJBTTtcbiAgICBjb25zdCByb3V0ZVBhcmFtID0gb3B0aW9ucy5yb3V0ZVBhcmFtID8/IEhBTkRPRkZfUk9VVEVfUEFSQU07XG4gICAgY29uc3QgZGVmYXVsdFJvdXRlID0gb3B0aW9ucy5kZWZhdWx0Um91dGUgPz8gJy8nO1xuICAgIGNvbnN0IGVycm9yUm91dGUgPSBvcHRpb25zLmVycm9yUm91dGUgPz8gdGhpcy5jb25maWc/LmxvZ2luUm91dGUgPz8gJy9sb2dpbic7XG5cbiAgICBjb25zdCBwYXJhbXMgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpO1xuICAgIGNvbnN0IHRva2VuID0gcGFyYW1zLmdldCh0b2tlblBhcmFtKTtcbiAgICBpZiAoIXRva2VuKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgY29uc3QgdGFyZ2V0Um91dGUgPSBwYXJhbXMuZ2V0KHJvdXRlUGFyYW0pIHx8IGRlZmF1bHRSb3V0ZTtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLmV4Y2hhbmdlSGFuZG9mZih0b2tlbikpO1xuICAgICAgYXdhaXQgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCh0YXJnZXRSb3V0ZSwgeyByZXBsYWNlVXJsOiB0cnVlIH0pO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc29sZS53YXJuKCdbSGFuZG9mZl0gRXhjaGFuZ2UgZmFpbGVkLCByZWRpcmVjdGluZyB0byBsb2dpbicsIGVycik7XG4gICAgICBhd2FpdCB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGVycm9yUm91dGUsIHsgcmVwbGFjZVVybDogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJzaXN0IHRoZSBzZXNzaW9uIGluIGBBdXRoU2VydmljZWAuIE1pcnJvcnMgdGhlIGluc3RhbGwgZmxvdyB1c2VkIGJ5XG4gICAqIHRoZSBub3JtYWwgc2lnbmluIHBhdGggc28gdGltZXJzLCBGaXJlYmFzZSwgYW5kIHRhYi1zeW5jIGFsbCBraWNrIGluLlxuICAgKi9cbiAgcHJpdmF0ZSBpbnN0YWxsU2Vzc2lvbihyZXNwb25zZTogSGFuZG9mZkV4Y2hhbmdlUmVzcG9uc2UpOiB2b2lkIHtcbiAgICB0aGlzLmF1dGguc2V0RXh0ZXJuYWxBdXRoKHtcbiAgICAgIGFjY2Vzc1Rva2VuOiByZXNwb25zZS5hY2Nlc3NUb2tlbixcbiAgICAgIHJlZnJlc2hUb2tlbjogcmVzcG9uc2UucmVmcmVzaFRva2VuLFxuICAgICAgZmlyZWJhc2VUb2tlbjogcmVzcG9uc2UuZmlyZWJhc2VUb2tlbixcbiAgICAgIGV4cGlyZXNJbjogcmVzcG9uc2UuZXhwaXJlc0luLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgYmFzZVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfSR7dGhpcy5jb25maWc/LmF1dGhQcmVmaXh9YDtcbiAgfVxufVxuIl19
|
|
@@ -48,7 +48,7 @@ export class NotificationActionService {
|
|
|
48
48
|
if (!route) {
|
|
49
49
|
return 'no-action-route';
|
|
50
50
|
}
|
|
51
|
-
const currentApp = this.config
|
|
51
|
+
const currentApp = this.config?.appId;
|
|
52
52
|
const targetApp = notif.appId;
|
|
53
53
|
// 2) Cross-app: handoff + full redirect
|
|
54
54
|
//
|
|
@@ -58,7 +58,7 @@ export class NotificationActionService {
|
|
|
58
58
|
if (targetApp && currentApp && targetApp !== currentApp) {
|
|
59
59
|
try {
|
|
60
60
|
const resp = await firstValueFrom(this.handoff.createHandoff({ targetAppId: targetApp, route }));
|
|
61
|
-
const baseUrl = resp.targetBaseUrl ?? this.config
|
|
61
|
+
const baseUrl = resp.targetBaseUrl ?? this.config?.appUrls?.[targetApp];
|
|
62
62
|
if (!baseUrl) {
|
|
63
63
|
console.warn(`[NotificationAction] No baseUrl for app '${targetApp}' — backend did not return targetBaseUrl and no appUrls fallback configured`);
|
|
64
64
|
return 'cross-app-unconfigured';
|
|
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
116
116
|
type: Inject,
|
|
117
117
|
args: [VALTECH_AUTH_CONFIG]
|
|
118
118
|
}] }, { type: i1.AuthService }, { type: i2.OrgSwitchService }, { type: i3.HandoffService }, { type: i4.NotificationsService }, { type: i5.Router }] });
|
|
119
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWFjdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL25vdGlmaWNhdGlvbi1hY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7O0dBWUc7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd0QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7QUFnQi9DLE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsWUFDbUQsTUFBZ0MsRUFDekUsSUFBaUIsRUFDakIsU0FBMkIsRUFDM0IsT0FBdUIsRUFDdkIsYUFBbUMsRUFDbkMsTUFBYztRQUwyQixXQUFNLEdBQU4sTUFBTSxDQUEwQjtRQUN6RSxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQ3JCLENBQUM7SUFFSjs7Ozs7O09BTUc7SUFDSCxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQTJCO1FBQ3BDLCtEQUErRDtRQUMvRCxJQUFJLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDbEQsT0FBTyxDQUFDLElBQUksQ0FBQyx3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LEVBQUUsS0FBYTtRQUNuRSxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QixHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsR0FBRyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3hCLENBQUM7K0dBL0ZVLHlCQUF5QixrQkFFZCxtQkFBbUI7bUhBRjlCLHlCQUF5QixjQURaLE1BQU07OzRGQUNuQix5QkFBeUI7a0JBRHJDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFHN0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIE5vdGlmaWNhdGlvbkFjdGlvblNlcnZpY2Ug4oCUIG9ycXVlc3RhIGVsIFwiY2xpY2sgZW4gbm90aWZpY2FjacOzblwiIGNyb3NzLWFwcCBjcm9zcy1vcmcuXG4gKlxuICogRmx1am86XG4gKiAgIDEuIG1hcmtBc1JlYWQgKGJlc3QtZWZmb3J0LCBubyBibG9xdWVhKVxuICogICAyLiBTaSBhcHBJZCBkZXN0aW5vICE9PSBhcHBJZCBhY3R1YWwg4oaSIGhhbmRvZmYgdG9rZW4gKyByZWRpcmVjdCBhIGFwcCBkZXN0aW5vXG4gKiAgIDMuIFNpIG9yZ0lkIGRlc3Rpbm8gIT09IGFjdGl2ZU9yZyDihpIgc3dpdGNoVG8ob3JnSWQpIChzaW4gcmVsb2FkLCBuYXZlZ2EgZGVzcHXDqXMpXG4gKiAgIDQuIHJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGFjdGlvblJvdXRlKVxuICpcbiAqIFJlcXVpZXJlOlxuICogICAtIFZhbHRlY2hBdXRoQ29uZmlnLmFwcElkICAoaWRlbnRpZmljYSBsYSBhcHAgYWN0dWFsKVxuICogICAtIFZhbHRlY2hBdXRoQ29uZmlnLmFwcFVybHMgKG1hcGEgYmFzZVVybCBwYXJhIGhhbmRvZmYgY3Jvc3MtYXBwKVxuICovXG5cbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgVkFMVEVDSF9BVVRIX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7IEhhbmRvZmZTZXJ2aWNlIH0gZnJvbSAnLi9oYW5kb2ZmLnNlcnZpY2UnO1xuaW1wb3J0IHsgT3JnU3dpdGNoU2VydmljZSB9IGZyb20gJy4vb3JnLXN3aXRjaC5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbHRlY2hBdXRoQ29uZmlnIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25Eb2N1bWVudCwgTm90aWZpY2F0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi9maXJlYmFzZS9ub3RpZmljYXRpb25zLnNlcnZpY2UnO1xuXG4vKiogUmVzdWx0YWRvIGRlc2NyaXB0aXZvIGRlbCBvcGVuKCkg4oCUIMO6dGlsIHBhcmEgdGVzdHMgeSB0ZWxlbWV0csOtYS4gKi9cbmV4cG9ydCB0eXBlIE5vdGlmaWNhdGlvbk9wZW5SZXN1bHQgPVxuICB8ICduYXZpZ2F0ZWQnXG4gIHwgJ25hdmlnYXRlZC1hZnRlci1zd2l0Y2gtb3JnJ1xuICB8ICdyZWRpcmVjdGVkLWNyb3NzLWFwcCdcbiAgfCAnbm8tYWN0aW9uLXJvdXRlJ1xuICB8ICdjcm9zcy1hcHAtdW5jb25maWd1cmVkJ1xuICB8ICdoYW5kb2ZmLWZhaWxlZCc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uQWN0aW9uU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVkFMVEVDSF9BVVRIX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IFZhbHRlY2hBdXRoQ29uZmlnIHwgbnVsbCxcbiAgICBwcml2YXRlIGF1dGg6IEF1dGhTZXJ2aWNlLFxuICAgIHByaXZhdGUgb3JnU3dpdGNoOiBPcmdTd2l0Y2hTZXJ2aWNlLFxuICAgIHByaXZhdGUgaGFuZG9mZjogSGFuZG9mZlNlcnZpY2UsXG4gICAgcHJpdmF0ZSBub3RpZmljYXRpb25zOiBOb3RpZmljYXRpb25zU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXG4gICkge31cblxuICAvKipcbiAgICogQWJyZSBsYSBub3RpZmljYWNpw7NuOiBtYXJjYSBjb21vIGxlw61kYSwgc3dpdGNoLW9yZyBzaSB0b2NhLCBuYXZlZ2FjacOzbiBsb2NhbCBvXG4gICAqIHJlZGlyZWN0IGNyb3NzLWFwcCB2w61hIGhhbmRvZmYuXG4gICAqXG4gICAqIE5vIGxhbnphIGVycm9yZXMgaGFjaWEgbGEgVUkg4oCUIGRldnVlbHZlIHVuIHJlc3VsdGFkbyBkZXNjcmlwdGl2by4gRXJyb3Jlc1xuICAgKiB0w6ljbmljb3MgcXVlZGFuIGVuIGNvbnNvbGUud2Fybi5cbiAgICovXG4gIGFzeW5jIG9wZW4obm90aWY6IE5vdGlmaWNhdGlvbkRvY3VtZW50KTogUHJvbWlzZTxOb3RpZmljYXRpb25PcGVuUmVzdWx0PiB7XG4gICAgLy8gMSkgTWFyayBhcyByZWFkIChiZXN0LWVmZm9ydCwgbm8gYmxvcXVlYSBlbCBmbHVqbyBwcmluY2lwYWwpXG4gICAgaWYgKG5vdGlmLmlkICYmICFub3RpZi5pc1JlYWQpIHtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy5tYXJrQXNSZWFkKG5vdGlmLmlkKS5jYXRjaChlcnIgPT4ge1xuICAgICAgICBjb25zb2xlLndhcm4oJ1tOb3RpZmljYXRpb25BY3Rpb25dIG1hcmtBc1JlYWQgZmFpbGVkJywgZXJyKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHJvdXRlID0gbm90aWYuYWN0aW9uUm91dGU7XG4gICAgaWYgKCFyb3V0ZSkge1xuICAgICAgcmV0dXJuICduby1hY3Rpb24tcm91dGUnO1xuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnRBcHAgPSB0aGlzLmNvbmZpZy5hcHBJZDtcbiAgICBjb25zdCB0YXJnZXRBcHAgPSBub3RpZi5hcHBJZDtcblxuICAgIC8vIDIpIENyb3NzLWFwcDogaGFuZG9mZiArIGZ1bGwgcmVkaXJlY3RcbiAgICAvL1xuICAgIC8vIGJhc2VVcmwgcmVzb2x1dGlvbiBwcmlvcml0eTpcbiAgICAvLyAgICgxKSByZXNwb25zZS50YXJnZXRCYXNlVXJsICDigJQgYmFja2VuZCBsb29rdXAgZW4gYXBwLWNvbmZpZyAocHJlZmVycmVkLCBzaW5nbGUgc291cmNlIG9mIHRydXRoKVxuICAgIC8vICAgKDIpIGNvbmZpZy5hcHBVcmxzW3RhcmdldEFwcF0g4oCUIGZhbGxiYWNrIGZyb250ZW5kIG1pZW50cmFzIGJhY2tlbmQgYWdyZWdhIGVsIGNhbXBvXG4gICAgaWYgKHRhcmdldEFwcCAmJiBjdXJyZW50QXBwICYmIHRhcmdldEFwcCAhPT0gY3VycmVudEFwcCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzcCA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICAgIHRoaXMuaGFuZG9mZi5jcmVhdGVIYW5kb2ZmKHsgdGFyZ2V0QXBwSWQ6IHRhcmdldEFwcCwgcm91dGUgfSlcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgYmFzZVVybCA9IHJlc3AudGFyZ2V0QmFzZVVybCA/PyB0aGlzLmNvbmZpZy5hcHBVcmxzPy5bdGFyZ2V0QXBwXTtcbiAgICAgICAgaWYgKCFiYXNlVXJsKSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgYFtOb3RpZmljYXRpb25BY3Rpb25dIE5vIGJhc2VVcmwgZm9yIGFwcCAnJHt0YXJnZXRBcHB9JyDigJQgYmFja2VuZCBkaWQgbm90IHJldHVybiB0YXJnZXRCYXNlVXJsIGFuZCBubyBhcHBVcmxzIGZhbGxiYWNrIGNvbmZpZ3VyZWRgXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gJ2Nyb3NzLWFwcC11bmNvbmZpZ3VyZWQnO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IHVybCA9IHRoaXMuYnVpbGRIYW5kb2ZmVXJsKGJhc2VVcmwsIHJlc3AudG9rZW4sIHJvdXRlKTtcbiAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSB1cmw7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuICdyZWRpcmVjdGVkLWNyb3NzLWFwcCc7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgY29uc3QgbXNnID0gZXJyIGluc3RhbmNlb2YgSHR0cEVycm9yUmVzcG9uc2UgPyBlcnIubWVzc2FnZSA6IFN0cmluZyhlcnIpO1xuICAgICAgICBjb25zb2xlLndhcm4oJ1tOb3RpZmljYXRpb25BY3Rpb25dIGNyZWF0ZUhhbmRvZmYgZmFpbGVkOicsIG1zZyk7XG4gICAgICAgIHJldHVybiAnaGFuZG9mZi1mYWlsZWQnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDMpIFNhbWUgYXBwIOKAlCBzd2l0Y2gtb3JnIHNpIHRvY2EgKHNpbiByZWxvYWQg4oCUIGxhIG5hdmVnYWNpw7NuIHBvc3RlcmlvciBtb250YSBwYWdlIGZyZXNoKVxuICAgIGxldCBzd2l0Y2hlZCA9IGZhbHNlO1xuICAgIGlmIChub3RpZi5vcmdJZCkge1xuICAgICAgY29uc3QgYWN0aXZlID0gdGhpcy5hY3RpdmVPcmcoKTtcbiAgICAgIGlmIChhY3RpdmUgJiYgYWN0aXZlICE9PSBub3RpZi5vcmdJZCkge1xuICAgICAgICBhd2FpdCB0aGlzLm9yZ1N3aXRjaC5zd2l0Y2hUbyhub3RpZi5vcmdJZCk7XG4gICAgICAgIHN3aXRjaGVkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyA0KSBOYXZpZ2F0ZSBsb2NhbFxuICAgIGF3YWl0IHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwocm91dGUpO1xuICAgIHJldHVybiBzd2l0Y2hlZCA/ICduYXZpZ2F0ZWQtYWZ0ZXItc3dpdGNoLW9yZycgOiAnbmF2aWdhdGVkJztcbiAgfVxuXG4gIHByaXZhdGUgYWN0aXZlT3JnKCk6IHN0cmluZyB7XG4gICAgY29uc3QgdXNlciA9IHRoaXMuYXV0aC51c2VyKCk7XG4gICAgcmV0dXJuIChcbiAgICAgICh1c2VyIGFzIHsgYWN0aXZlT3JnSWQ/OiBzdHJpbmc7IGFjdGl2ZU9yZz86IHN0cmluZyB9IHwgbnVsbCk/LmFjdGl2ZU9yZ0lkID8/XG4gICAgICAodXNlciBhcyB7IGFjdGl2ZU9yZ0lkPzogc3RyaW5nOyBhY3RpdmVPcmc/OiBzdHJpbmcgfSB8IG51bGwpPy5hY3RpdmVPcmcgPz9cbiAgICAgICcnXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25zdHJ1eWUgVVJMIGFic29sdXRhIHBhcmEgaGFuZG9mZiBjcm9zcy1hcHAgcHJlc2VydmFuZG8gcGF0aG5hbWUgeSBvdHJvc1xuICAgKiBwYXJhbXMgZXhpc3RlbnRlcyBkZSBsYSBiYXNlVXJsLlxuICAgKi9cbiAgcHJpdmF0ZSBidWlsZEhhbmRvZmZVcmwoYmFzZVVybDogc3RyaW5nLCB0b2tlbjogc3RyaW5nLCByb3V0ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB1cmwgPSBuZXcgVVJMKGJhc2VVcmwpO1xuICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KCdoYW5kb2ZmJywgdG9rZW4pO1xuICAgIHVybC5zZWFyY2hQYXJhbXMuc2V0KCdyb3V0ZScsIHJvdXRlKTtcbiAgICByZXR1cm4gdXJsLnRvU3RyaW5nKCk7XG4gIH1cbn1cbiJdfQ==
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLWFjdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL25vdGlmaWNhdGlvbi1hY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7O0dBWUc7QUFFSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd0QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7Ozs7QUFnQi9DLE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsWUFDbUQsTUFBZ0MsRUFDekUsSUFBaUIsRUFDakIsU0FBMkIsRUFDM0IsT0FBdUIsRUFDdkIsYUFBbUMsRUFDbkMsTUFBYztRQUwyQixXQUFNLEdBQU4sTUFBTSxDQUEwQjtRQUN6RSxTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2pCLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLGtCQUFhLEdBQWIsYUFBYSxDQUFzQjtRQUNuQyxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQ3JCLENBQUM7SUFFSjs7Ozs7O09BTUc7SUFDSCxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQTJCO1FBQ3BDLCtEQUErRDtRQUMvRCxJQUFJLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDbEQsT0FBTyxDQUFDLElBQUksQ0FBQyx3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LEVBQUUsS0FBYTtRQUNuRSxNQUFNLEdBQUcsR0FBRyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QixHQUFHLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdkMsR0FBRyxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLE9BQU8sR0FBRyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3hCLENBQUM7K0dBL0ZVLHlCQUF5QixrQkFFZCxtQkFBbUI7bUhBRjlCLHlCQUF5QixjQURaLE1BQU07OzRGQUNuQix5QkFBeUI7a0JBRHJDLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFHN0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIE5vdGlmaWNhdGlvbkFjdGlvblNlcnZpY2Ug4oCUIG9ycXVlc3RhIGVsIFwiY2xpY2sgZW4gbm90aWZpY2FjacOzblwiIGNyb3NzLWFwcCBjcm9zcy1vcmcuXG4gKlxuICogRmx1am86XG4gKiAgIDEuIG1hcmtBc1JlYWQgKGJlc3QtZWZmb3J0LCBubyBibG9xdWVhKVxuICogICAyLiBTaSBhcHBJZCBkZXN0aW5vICE9PSBhcHBJZCBhY3R1YWwg4oaSIGhhbmRvZmYgdG9rZW4gKyByZWRpcmVjdCBhIGFwcCBkZXN0aW5vXG4gKiAgIDMuIFNpIG9yZ0lkIGRlc3Rpbm8gIT09IGFjdGl2ZU9yZyDihpIgc3dpdGNoVG8ob3JnSWQpIChzaW4gcmVsb2FkLCBuYXZlZ2EgZGVzcHXDqXMpXG4gKiAgIDQuIHJvdXRlci5uYXZpZ2F0ZUJ5VXJsKGFjdGlvblJvdXRlKVxuICpcbiAqIFJlcXVpZXJlOlxuICogICAtIFZhbHRlY2hBdXRoQ29uZmlnLmFwcElkICAoaWRlbnRpZmljYSBsYSBhcHAgYWN0dWFsKVxuICogICAtIFZhbHRlY2hBdXRoQ29uZmlnLmFwcFVybHMgKG1hcGEgYmFzZVVybCBwYXJhIGhhbmRvZmYgY3Jvc3MtYXBwKVxuICovXG5cbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgVkFMVEVDSF9BVVRIX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7IEhhbmRvZmZTZXJ2aWNlIH0gZnJvbSAnLi9oYW5kb2ZmLnNlcnZpY2UnO1xuaW1wb3J0IHsgT3JnU3dpdGNoU2VydmljZSB9IGZyb20gJy4vb3JnLXN3aXRjaC5zZXJ2aWNlJztcbmltcG9ydCB7IFZhbHRlY2hBdXRoQ29uZmlnIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25Eb2N1bWVudCwgTm90aWZpY2F0aW9uc1NlcnZpY2UgfSBmcm9tICcuLi9maXJlYmFzZS9ub3RpZmljYXRpb25zLnNlcnZpY2UnO1xuXG4vKiogUmVzdWx0YWRvIGRlc2NyaXB0aXZvIGRlbCBvcGVuKCkg4oCUIMO6dGlsIHBhcmEgdGVzdHMgeSB0ZWxlbWV0csOtYS4gKi9cbmV4cG9ydCB0eXBlIE5vdGlmaWNhdGlvbk9wZW5SZXN1bHQgPVxuICB8ICduYXZpZ2F0ZWQnXG4gIHwgJ25hdmlnYXRlZC1hZnRlci1zd2l0Y2gtb3JnJ1xuICB8ICdyZWRpcmVjdGVkLWNyb3NzLWFwcCdcbiAgfCAnbm8tYWN0aW9uLXJvdXRlJ1xuICB8ICdjcm9zcy1hcHAtdW5jb25maWd1cmVkJ1xuICB8ICdoYW5kb2ZmLWZhaWxlZCc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uQWN0aW9uU2VydmljZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVkFMVEVDSF9BVVRIX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IFZhbHRlY2hBdXRoQ29uZmlnIHwgbnVsbCxcbiAgICBwcml2YXRlIGF1dGg6IEF1dGhTZXJ2aWNlLFxuICAgIHByaXZhdGUgb3JnU3dpdGNoOiBPcmdTd2l0Y2hTZXJ2aWNlLFxuICAgIHByaXZhdGUgaGFuZG9mZjogSGFuZG9mZlNlcnZpY2UsXG4gICAgcHJpdmF0ZSBub3RpZmljYXRpb25zOiBOb3RpZmljYXRpb25zU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXG4gICkge31cblxuICAvKipcbiAgICogQWJyZSBsYSBub3RpZmljYWNpw7NuOiBtYXJjYSBjb21vIGxlw61kYSwgc3dpdGNoLW9yZyBzaSB0b2NhLCBuYXZlZ2FjacOzbiBsb2NhbCBvXG4gICAqIHJlZGlyZWN0IGNyb3NzLWFwcCB2w61hIGhhbmRvZmYuXG4gICAqXG4gICAqIE5vIGxhbnphIGVycm9yZXMgaGFjaWEgbGEgVUkg4oCUIGRldnVlbHZlIHVuIHJlc3VsdGFkbyBkZXNjcmlwdGl2by4gRXJyb3Jlc1xuICAgKiB0w6ljbmljb3MgcXVlZGFuIGVuIGNvbnNvbGUud2Fybi5cbiAgICovXG4gIGFzeW5jIG9wZW4obm90aWY6IE5vdGlmaWNhdGlvbkRvY3VtZW50KTogUHJvbWlzZTxOb3RpZmljYXRpb25PcGVuUmVzdWx0PiB7XG4gICAgLy8gMSkgTWFyayBhcyByZWFkIChiZXN0LWVmZm9ydCwgbm8gYmxvcXVlYSBlbCBmbHVqbyBwcmluY2lwYWwpXG4gICAgaWYgKG5vdGlmLmlkICYmICFub3RpZi5pc1JlYWQpIHtcbiAgICAgIHRoaXMubm90aWZpY2F0aW9ucy5tYXJrQXNSZWFkKG5vdGlmLmlkKS5jYXRjaChlcnIgPT4ge1xuICAgICAgICBjb25zb2xlLndhcm4oJ1tOb3RpZmljYXRpb25BY3Rpb25dIG1hcmtBc1JlYWQgZmFpbGVkJywgZXJyKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHJvdXRlID0gbm90aWYuYWN0aW9uUm91dGU7XG4gICAgaWYgKCFyb3V0ZSkge1xuICAgICAgcmV0dXJuICduby1hY3Rpb24tcm91dGUnO1xuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnRBcHAgPSB0aGlzLmNvbmZpZz8uYXBwSWQ7XG4gICAgY29uc3QgdGFyZ2V0QXBwID0gbm90aWYuYXBwSWQ7XG5cbiAgICAvLyAyKSBDcm9zcy1hcHA6IGhhbmRvZmYgKyBmdWxsIHJlZGlyZWN0XG4gICAgLy9cbiAgICAvLyBiYXNlVXJsIHJlc29sdXRpb24gcHJpb3JpdHk6XG4gICAgLy8gICAoMSkgcmVzcG9uc2UudGFyZ2V0QmFzZVVybCAg4oCUIGJhY2tlbmQgbG9va3VwIGVuIGFwcC1jb25maWcgKHByZWZlcnJlZCwgc2luZ2xlIHNvdXJjZSBvZiB0cnV0aClcbiAgICAvLyAgICgyKSBjb25maWcuYXBwVXJsc1t0YXJnZXRBcHBdIOKAlCBmYWxsYmFjayBmcm9udGVuZCBtaWVudHJhcyBiYWNrZW5kIGFncmVnYSBlbCBjYW1wb1xuICAgIGlmICh0YXJnZXRBcHAgJiYgY3VycmVudEFwcCAmJiB0YXJnZXRBcHAgIT09IGN1cnJlbnRBcHApIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlc3AgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgICAgICB0aGlzLmhhbmRvZmYuY3JlYXRlSGFuZG9mZih7IHRhcmdldEFwcElkOiB0YXJnZXRBcHAsIHJvdXRlIH0pXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGJhc2VVcmwgPSByZXNwLnRhcmdldEJhc2VVcmwgPz8gdGhpcy5jb25maWc/LmFwcFVybHM/Llt0YXJnZXRBcHBdO1xuICAgICAgICBpZiAoIWJhc2VVcmwpIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICAgICBgW05vdGlmaWNhdGlvbkFjdGlvbl0gTm8gYmFzZVVybCBmb3IgYXBwICcke3RhcmdldEFwcH0nIOKAlCBiYWNrZW5kIGRpZCBub3QgcmV0dXJuIHRhcmdldEJhc2VVcmwgYW5kIG5vIGFwcFVybHMgZmFsbGJhY2sgY29uZmlndXJlZGBcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiAnY3Jvc3MtYXBwLXVuY29uZmlndXJlZCc7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdXJsID0gdGhpcy5idWlsZEhhbmRvZmZVcmwoYmFzZVVybCwgcmVzcC50b2tlbiwgcm91dGUpO1xuICAgICAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHVybDtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJ3JlZGlyZWN0ZWQtY3Jvc3MtYXBwJztcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zdCBtc2cgPSBlcnIgaW5zdGFuY2VvZiBIdHRwRXJyb3JSZXNwb25zZSA/IGVyci5tZXNzYWdlIDogU3RyaW5nKGVycik7XG4gICAgICAgIGNvbnNvbGUud2FybignW05vdGlmaWNhdGlvbkFjdGlvbl0gY3JlYXRlSGFuZG9mZiBmYWlsZWQ6JywgbXNnKTtcbiAgICAgICAgcmV0dXJuICdoYW5kb2ZmLWZhaWxlZCc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gMykgU2FtZSBhcHAg4oCUIHN3aXRjaC1vcmcgc2kgdG9jYSAoc2luIHJlbG9hZCDigJQgbGEgbmF2ZWdhY2nDs24gcG9zdGVyaW9yIG1vbnRhIHBhZ2UgZnJlc2gpXG4gICAgbGV0IHN3aXRjaGVkID0gZmFsc2U7XG4gICAgaWYgKG5vdGlmLm9yZ0lkKSB7XG4gICAgICBjb25zdCBhY3RpdmUgPSB0aGlzLmFjdGl2ZU9yZygpO1xuICAgICAgaWYgKGFjdGl2ZSAmJiBhY3RpdmUgIT09IG5vdGlmLm9yZ0lkKSB7XG4gICAgICAgIGF3YWl0IHRoaXMub3JnU3dpdGNoLnN3aXRjaFRvKG5vdGlmLm9yZ0lkKTtcbiAgICAgICAgc3dpdGNoZWQgPSB0cnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIDQpIE5hdmlnYXRlIGxvY2FsXG4gICAgYXdhaXQgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybChyb3V0ZSk7XG4gICAgcmV0dXJuIHN3aXRjaGVkID8gJ25hdmlnYXRlZC1hZnRlci1zd2l0Y2gtb3JnJyA6ICduYXZpZ2F0ZWQnO1xuICB9XG5cbiAgcHJpdmF0ZSBhY3RpdmVPcmcoKTogc3RyaW5nIHtcbiAgICBjb25zdCB1c2VyID0gdGhpcy5hdXRoLnVzZXIoKTtcbiAgICByZXR1cm4gKFxuICAgICAgKHVzZXIgYXMgeyBhY3RpdmVPcmdJZD86IHN0cmluZzsgYWN0aXZlT3JnPzogc3RyaW5nIH0gfCBudWxsKT8uYWN0aXZlT3JnSWQgPz9cbiAgICAgICh1c2VyIGFzIHsgYWN0aXZlT3JnSWQ/OiBzdHJpbmc7IGFjdGl2ZU9yZz86IHN0cmluZyB9IHwgbnVsbCk/LmFjdGl2ZU9yZyA/P1xuICAgICAgJydcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnN0cnV5ZSBVUkwgYWJzb2x1dGEgcGFyYSBoYW5kb2ZmIGNyb3NzLWFwcCBwcmVzZXJ2YW5kbyBwYXRobmFtZSB5IG90cm9zXG4gICAqIHBhcmFtcyBleGlzdGVudGVzIGRlIGxhIGJhc2VVcmwuXG4gICAqL1xuICBwcml2YXRlIGJ1aWxkSGFuZG9mZlVybChiYXNlVXJsOiBzdHJpbmcsIHRva2VuOiBzdHJpbmcsIHJvdXRlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHVybCA9IG5ldyBVUkwoYmFzZVVybCk7XG4gICAgdXJsLnNlYXJjaFBhcmFtcy5zZXQoJ2hhbmRvZmYnLCB0b2tlbik7XG4gICAgdXJsLnNlYXJjaFBhcmFtcy5zZXQoJ3JvdXRlJywgcm91dGUpO1xuICAgIHJldHVybiB1cmwudG9TdHJpbmcoKTtcbiAgfVxufVxuIl19
|
|
@@ -58,7 +58,7 @@ export class OAuthService {
|
|
|
58
58
|
return new Observable(observer => {
|
|
59
59
|
// Construir URL de inicio
|
|
60
60
|
const redirectUri = `${window.location.origin}/auth/oauth/callback`;
|
|
61
|
-
const startUrl = `${this.config
|
|
61
|
+
const startUrl = `${this.config?.apiUrl}/v2/auth/oauth/${provider}/start?redirect_uri=${encodeURIComponent(redirectUri)}`;
|
|
62
62
|
// Abrir popup centrado
|
|
63
63
|
const width = 500;
|
|
64
64
|
const height = 600;
|
|
@@ -163,7 +163,7 @@ export class OAuthService {
|
|
|
163
163
|
startLinkFlow(provider) {
|
|
164
164
|
return new Observable(observer => {
|
|
165
165
|
const redirectUri = `${window.location.origin}/auth/oauth/callback`;
|
|
166
|
-
const startUrl = `${this.config
|
|
166
|
+
const startUrl = `${this.config?.apiUrl}/v2/auth/oauth/link/${provider}/start?redirect_uri=${encodeURIComponent(redirectUri)}`;
|
|
167
167
|
const width = 500;
|
|
168
168
|
const height = 600;
|
|
169
169
|
const left = window.screenX + (window.outerWidth - width) / 2;
|
|
@@ -214,7 +214,7 @@ export class OAuthService {
|
|
|
214
214
|
*/
|
|
215
215
|
getLinkedProviders() {
|
|
216
216
|
return this.http
|
|
217
|
-
.get(`${this.config
|
|
217
|
+
.get(`${this.config?.apiUrl}/v2/auth/oauth/providers`)
|
|
218
218
|
.pipe(catchError(error => throwError(() => ({
|
|
219
219
|
code: error.error?.code || 'FETCH_ERROR',
|
|
220
220
|
message: error.error?.message || 'Error al obtener proveedores vinculados',
|
|
@@ -225,7 +225,7 @@ export class OAuthService {
|
|
|
225
225
|
*/
|
|
226
226
|
unlinkProvider(provider) {
|
|
227
227
|
return this.http
|
|
228
|
-
.post(`${this.config
|
|
228
|
+
.post(`${this.config?.apiUrl}/v2/auth/oauth/unlink`, { provider })
|
|
229
229
|
.pipe(catchError(error => throwError(() => ({
|
|
230
230
|
code: error.error?.code || 'UNLINK_ERROR',
|
|
231
231
|
message: error.error?.message || 'Error al desvincular proveedor',
|
|
@@ -236,7 +236,7 @@ export class OAuthService {
|
|
|
236
236
|
*/
|
|
237
237
|
setPassword(password) {
|
|
238
238
|
return this.http
|
|
239
|
-
.post(`${this.config
|
|
239
|
+
.post(`${this.config?.apiUrl}/v2/auth/oauth/set-password`, { password })
|
|
240
240
|
.pipe(catchError(error => throwError(() => ({
|
|
241
241
|
code: error.error?.code || 'SET_PASSWORD_ERROR',
|
|
242
242
|
message: error.error?.message || 'Error al establecer contraseña',
|
|
@@ -247,7 +247,7 @@ export class OAuthService {
|
|
|
247
247
|
*/
|
|
248
248
|
hasPassword() {
|
|
249
249
|
return this.http
|
|
250
|
-
.get(`${this.config
|
|
250
|
+
.get(`${this.config?.apiUrl}/v2/auth/oauth/has-password`)
|
|
251
251
|
.pipe(catchError(error => throwError(() => ({
|
|
252
252
|
code: error.error?.code || 'CHECK_PASSWORD_ERROR',
|
|
253
253
|
message: error.error?.message || 'Error al verificar contraseña',
|
|
@@ -321,4 +321,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
321
321
|
type: Inject,
|
|
322
322
|
args: [VALTECH_AUTH_CONFIG]
|
|
323
323
|
}] }, { type: i1.HttpClient }, { type: i0.NgZone }] });
|
|
324
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2F1dGguc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvYXV0aC9vYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFVLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFXLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFXL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFFNUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlDRztBQUVILE1BQU0sT0FBTyxZQUFZO0lBS3ZCLFlBQ21ELE1BQWdDLEVBQ3pFLElBQWdCLEVBQ2hCLE1BQWM7UUFGMkIsV0FBTSxHQUFOLE1BQU0sQ0FBMEI7UUFDekUsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBUGhCLFVBQUssR0FBa0IsSUFBSSxDQUFDO1FBQzVCLG1CQUFjLEdBQTJDLElBQUksQ0FBQztRQUM5RCx3QkFBbUIsR0FBMEMsSUFBSSxDQUFDO0lBTXZFLENBQUM7SUFFSjs7Ozs7O09BTUc7SUFDSCxTQUFTLENBQUMsUUFBdUI7UUFDL0IsT0FBTyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMvQiwwQkFBMEI7WUFDMUIsTUFBTSxXQUFXLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sc0JBQXNCLENBQUM7WUFDcEUsTUFBTSxRQUFRLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLFFBQVEsdUJBQXVCLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFFekgsdUJBQXVCO1lBQ3ZC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QyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7K0dBclVVLFlBQVksa0JBTUQsbUJBQW1CO21IQU45QixZQUFZLGNBREMsTUFBTTs7NEZBQ25CLFlBQVk7a0JBRHhCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFPN0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIE5nWm9uZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFZBTFRFQ0hfQVVUSF9DT05GSUcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQge1xuICBWYWx0ZWNoQXV0aENvbmZpZyxcbiAgT0F1dGhQcm92aWRlcixcbiAgT0F1dGhSZXN1bHQsXG4gIE9BdXRoRXJyb3IsXG4gIE9BdXRoQ2FsbGJhY2tEYXRhLFxuICBMaW5rZWRQcm92aWRlcixcbiAgSGFzUGFzc3dvcmRSZXNwb25zZSxcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBkZSBPQXV0aCBwYXJhIGxvZ2luIHNvY2lhbC5cbiAqXG4gKiBJbXBsZW1lbnRhIGZsdWpvIE9BdXRoIHNlcnZlci1zaWRlIGNvbiBwb3B1cDpcbiAqIDEuIEZyb250ZW5kIGFicmUgcG9wdXAgaGFjaWEgYmFja2VuZFxuICogMi4gQmFja2VuZCByZWRpcmlnZSBhIHByb3ZpZGVyIChHb29nbGUsIEFwcGxlLCBNaWNyb3NvZnQpXG4gKiAzLiBVc3VhcmlvIGF1dG9yaXphXG4gKiA0LiBCYWNrZW5kIGludGVyY2FtYmlhIGNvZGUsIGdlbmVyYSBKV1QsIHJlZGlyaWdlIGNvbiB0b2tlbnNcbiAqIDUuIFBvcHVwIGVudsOtYSB0b2tlbnMgYSB2ZW50YW5hIHBhZHJlIHZpYSBwb3N0TWVzc2FnZVxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBPQXV0aFNlcnZpY2UsIEF1dGhTZXJ2aWNlIH0gZnJvbSAndmFsdGVjaC1jb21wb25lbnRzJztcbiAqXG4gKiBAQ29tcG9uZW50KHsuLi59KVxuICogZXhwb3J0IGNsYXNzIExvZ2luQ29tcG9uZW50IHtcbiAqICAgcHJpdmF0ZSBvYXV0aCA9IGluamVjdChPQXV0aFNlcnZpY2UpO1xuICogICBwcml2YXRlIGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICpcbiAqICAgYXN5bmMgbG9naW5XaXRoR29vZ2xlKCkge1xuICogICAgIHRoaXMub2F1dGguc3RhcnRGbG93KCdnb29nbGUnKS5zdWJzY3JpYmUoe1xuICogICAgICAgbmV4dDogKHJlc3VsdCkgPT4ge1xuICogICAgICAgICAvLyBUb2tlbnMgcmVjaWJpZG9zLCBndWFyZGFyIGVuIGF1dGggc3RhdGVcbiAqICAgICAgICAgdGhpcy5hdXRoLmhhbmRsZU9BdXRoU3VjY2VzcyhyZXN1bHQpO1xuICogICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy8nXSk7XG4gKiAgICAgICB9LFxuICogICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICogICAgICAgICBjb25zb2xlLmVycm9yKCdPQXV0aCBmYWlsZWQ6JywgZXJyb3IpO1xuICogICAgICAgfVxuICogICAgIH0pO1xuICogICB9XG4gKiB9XG4gKiBgYGBcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBPQXV0aFNlcnZpY2Uge1xuICBwcml2YXRlIHBvcHVwOiBXaW5kb3cgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBtZXNzYWdlSGFuZGxlcjogKChldmVudDogTWVzc2FnZUV2ZW50KSA9PiB2b2lkKSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGNoZWNrQ2xvc2VkSW50ZXJ2YWw6IFJldHVyblR5cGU8dHlwZW9mIHNldEludGVydmFsPiB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVkFMVEVDSF9BVVRIX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IFZhbHRlY2hBdXRoQ29uZmlnIHwgbnVsbCxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIEluaWNpYSBmbHVqbyBPQXV0aCBlbiBwb3B1cC5cbiAgICogUmV0b3JuYSBPYnNlcnZhYmxlIHF1ZSBlbWl0ZSBjdWFuZG8gZWwgdXN1YXJpbyBjb21wbGV0YSBlbCBmbHVqby5cbiAgICpcbiAgICogQHBhcmFtIHByb3ZpZGVyIC0gUHJvdmVlZG9yIE9BdXRoICgnZ29vZ2xlJywgJ2FwcGxlJywgJ21pY3Jvc29mdCcpXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGUgcXVlIGVtaXRlIE9BdXRoUmVzdWx0IG8gZXJyb3JcbiAgICovXG4gIHN0YXJ0Rmxvdyhwcm92aWRlcjogT0F1dGhQcm92aWRlcik6IE9ic2VydmFibGU8T0F1dGhSZXN1bHQ+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgICAgLy8gQ29uc3RydWlyIFVSTCBkZSBpbmljaW9cbiAgICAgIGNvbnN0IHJlZGlyZWN0VXJpID0gYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vYXV0aC9vYXV0aC9jYWxsYmFja2A7XG4gICAgICBjb25zdCBzdGFydFVybCA9IGAke3RoaXMuY29uZmlnLmFwaVVybH0vdjIvYXV0aC9vYXV0aC8ke3Byb3ZpZGVyfS9zdGFydD9yZWRpcmVjdF91cmk9JHtlbmNvZGVVUklDb21wb25lbnQocmVkaXJlY3RVcmkpfWA7XG5cbiAgICAgIC8vIEFicmlyIHBvcHVwIGNlbnRyYWRvXG4gICAgICBjb25zdCB3aWR0aCA9IDUwMDtcbiAgICAgIGNvbnN0IGhlaWdodCA9IDYwMDtcbiAgICAgIGNvbnN0IGxlZnQgPSB3aW5kb3cuc2NyZWVuWCArICh3aW5kb3cub3V0ZXJXaWR0aCAtIHdpZHRoKSAvIDI7XG4gICAgICBjb25zdCB0b3AgPSB3aW5kb3cuc2NyZWVuWSArICh3aW5kb3cub3V0ZXJIZWlnaHQgLSBoZWlnaHQpIC8gMjtcbiAgICAgIGNvbnN0IGZlYXR1cmVzID0gYHdpZHRoPSR7d2lkdGh9LGhlaWdodD0ke2hlaWdodH0sbGVmdD0ke2xlZnR9LHRvcD0ke3RvcH0scG9wdXA9eWVzYDtcblxuICAgICAgdGhpcy5wb3B1cCA9IHdpbmRvdy5vcGVuKHN0YXJ0VXJsLCAnb2F1dGgnLCBmZWF0dXJlcyk7XG5cbiAgICAgIGlmICghdGhpcy5wb3B1cCkge1xuICAgICAgICBvYnNlcnZlci5lcnJvcih7XG4gICAgICAgICAgY29kZTogJ1BPUFVQX0JMT0NLRUQnLFxuICAgICAgICAgIG1lc3NhZ2U6XG4gICAgICAgICAgICAnRWwgbmF2ZWdhZG9yIGJsb3F1ZcOzIGxhIHZlbnRhbmEgZW1lcmdlbnRlLiBQb3IgZmF2b3IsIHBlcm1pdGUgcG9wdXBzIHBhcmEgZXN0ZSBzaXRpby4nLFxuICAgICAgICB9IGFzIE9BdXRoRXJyb3IpO1xuICAgICAgICByZXR1cm4gKCkgPT4ge307XG4gICAgICB9XG5cbiAgICAgIC8vIEVzY3VjaGFyIG1lbnNhamVzIGRlbCBwb3B1cFxuICAgICAgdGhpcy5tZXNzYWdlSGFuZGxlciA9IChldmVudDogTWVzc2FnZUV2ZW50KSA9PiB7XG4gICAgICAgIC8vIFZhbGlkYXIgb3JpZ2VuXG4gICAgICAgIGlmIChldmVudC5vcmlnaW4gIT09IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4pIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBWYWxpZGFyIHRpcG8gZGUgbWVuc2FqZVxuICAgICAgICBjb25zdCBkYXRhID0gZXZlbnQuZGF0YSBhcyBPQXV0aENhbGxiYWNrRGF0YTtcbiAgICAgICAgaWYgKGRhdGE/LnR5cGUgIT09ICdvYXV0aC1jYWxsYmFjaycpIHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBMaW1waWFyXG4gICAgICAgIHRoaXMuY2xlYW51cCgpO1xuXG4gICAgICAgIC8vIEVtaXRpciByZXN1bHRhZG8gZGVudHJvIGRlIE5nWm9uZSBwYXJhIHRyaWdnZXIgY2hhbmdlIGRldGVjdGlvblxuICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgIGlmIChkYXRhLmVycm9yKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihkYXRhLmVycm9yKTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGRhdGEudG9rZW5zKSB7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KGRhdGEudG9rZW5zKTtcbiAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHtcbiAgICAgICAgICAgICAgY29kZTogJ0lOVkFMSURfUkVTUE9OU0UnLFxuICAgICAgICAgICAgICBtZXNzYWdlOiAnUmVzcHVlc3RhIGludsOhbGlkYSBkZWwgc2Vydmlkb3IgZGUgYXV0ZW50aWNhY2nDs24nLFxuICAgICAgICAgICAgfSBhcyBPQXV0aEVycm9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCB0aGlzLm1lc3NhZ2VIYW5kbGVyKTtcblxuICAgICAgLy8gUG9sbGluZyBkZSBsb2NhbFN0b3JhZ2UgKENPT1Agd29ya2Fyb3VuZCAtIG5vIHBvZGVtb3MgZGV0ZWN0YXIgcG9wdXAuY2xvc2VkKVxuICAgICAgLy8gVGFtYmnDqW4gdmVyaWZpY2Egc2kgZWwgcG9wdXAgc2UgY2VycsOzIG1hbnVhbG1lbnRlXG4gICAgICB0aGlzLmNoZWNrQ2xvc2VkSW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgIC8vIFByaW1lcm8gdmVyaWZpY2FyIGxvY2FsU3RvcmFnZSAoZnVuY2lvbmEgYXVucXVlIENPT1AgYmxvcXVlZSB0b2RvKVxuICAgICAgICBjb25zdCBzdG9yZWREYXRhID0gdGhpcy5jaGVja0xvY2FsU3RvcmFnZUZhbGxiYWNrKCk7XG4gICAgICAgIGlmIChzdG9yZWREYXRhKSB7XG4gICAgICAgICAgdGhpcy5jbGVhbnVwKCk7XG4gICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIGlmIChzdG9yZWREYXRhLmVycm9yKSB7XG4gICAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHN0b3JlZERhdGEuZXJyb3IpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChzdG9yZWREYXRhLnRva2Vucykge1xuICAgICAgICAgICAgICBjb25zb2xlLmxvZygnW09BdXRoU2VydmljZV0gUmV0cmlldmVkIHRva2VucyBmcm9tIGxvY2FsU3RvcmFnZSBmYWxsYmFjaycsIHtcbiAgICAgICAgICAgICAgICBrZXlzOiBPYmplY3Qua2V5cyhzdG9yZWREYXRhLnRva2VucyksXG4gICAgICAgICAgICAgICAgaGFzRmlyZWJhc2VUb2tlbjogISFzdG9yZWREYXRhLnRva2Vucy5maXJlYmFzZVRva2VuLFxuICAgICAgICAgICAgICAgIGZpcmViYXNlVG9rZW5MZW5ndGg6IHN0b3JlZERhdGEudG9rZW5zLmZpcmViYXNlVG9rZW4/Lmxlbmd0aCA/PyAwLFxuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChzdG9yZWREYXRhLnRva2Vucyk7XG4gICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICBvYnNlcnZlci5lcnJvcih7XG4gICAgICAgICAgICAgICAgY29kZTogJ0lOVkFMSURfUkVTUE9OU0UnLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdSZXNwdWVzdGEgaW52w6FsaWRhIGRlbCBzZXJ2aWRvciBkZSBhdXRlbnRpY2FjacOzbicsXG4gICAgICAgICAgICAgIH0gYXMgT0F1dGhFcnJvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW50ZW50YXIgdmVyaWZpY2FyIHNpIHBvcHVwIHNlIGNlcnLDsyAocHVlZGUgZmFsbGFyIHBvciBDT09QKVxuICAgICAgICB0cnkge1xuICAgICAgICAgIGlmICh0aGlzLnBvcHVwPy5jbG9zZWQpIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYW51cCgpO1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3Ioe1xuICAgICAgICAgICAgICAgIGNvZGU6ICdQT1BVUF9DTE9TRUQnLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdTZSBjZXJyw7MgbGEgdmVudGFuYSBkZSBhdXRlbnRpY2FjacOzbicsXG4gICAgICAgICAgICAgIH0gYXMgT0F1dGhFcnJvcik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgIC8vIENPT1AgYmxvcXVlYSBhY2Nlc28gYSBwb3B1cC5jbG9zZWQgLSBpZ25vcmFyIHkgc2VndWlyIGNvbiBwb2xsaW5nXG4gICAgICAgIH1cbiAgICAgIH0sIDMwMCk7XG5cbiAgICAgIC8vIENsZWFudXAgY3VhbmRvIGVsIG9ic2VydmFibGUgc2UgZGVzdHJ1eWVcbiAgICAgIHJldHVybiAoKSA9PiB0aGlzLmNsZWFudXAoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbmljaWEgZmx1am8gZGUgbGlua2luZyBwYXJhIHZpbmN1bGFyIHVuIHByb3ZlZWRvciBhZGljaW9uYWwuXG4gICAqIFJlcXVpZXJlIHF1ZSBlbCB1c3VhcmlvIGVzdMOpIGF1dGVudGljYWRvLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvdmlkZXIgLSBQcm92ZWVkb3IgT0F1dGggYSB2aW5jdWxhclxuICAgKiBAcmV0dXJucyBPYnNlcnZhYmxlIHF1ZSBlbWl0ZSBjdWFuZG8gc2UgY29tcGxldGEgZWwgbGlua2luZ1xuICAgKi9cbiAgc3RhcnRMaW5rRmxvdyhwcm92aWRlcjogT0F1dGhQcm92aWRlcik6IE9ic2VydmFibGU8T0F1dGhSZXN1bHQ+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgICAgY29uc3QgcmVkaXJlY3RVcmkgPSBgJHt3aW5kb3cubG9jYXRpb24ub3JpZ2lufS9hdXRoL29hdXRoL2NhbGxiYWNrYDtcbiAgICAgIGNvbnN0IHN0YXJ0VXJsID0gYCR7dGhpcy5jb25maWcuYXBpVXJsfS92Mi9hdXRoL29hdXRoL2xpbmsvJHtwcm92aWRlcn0vc3RhcnQ/cmVkaXJlY3RfdXJpPSR7ZW5jb2RlVVJJQ29tcG9uZW50KHJlZGlyZWN0VXJpKX1gO1xuXG4gICAgICBjb25zdCB3aWR0aCA9IDUwMDtcbiAgICAgIGNvbnN0IGhlaWdodCA9IDYwMDtcbiAgICAgIGNvbnN0IGxlZnQgPSB3aW5kb3cuc2NyZWVuWCArICh3aW5kb3cub3V0ZXJXaWR0aCAtIHdpZHRoKSAvIDI7XG4gICAgICBjb25zdCB0b3AgPSB3aW5kb3cuc2NyZWVuWSArICh3aW5kb3cub3V0ZXJIZWlnaHQgLSBoZWlnaHQpIC8gMjtcbiAgICAgIGNvbnN0IGZlYXR1cmVzID0gYHdpZHRoPSR7d2lkdGh9LGhlaWdodD0ke2hlaWdodH0sbGVmdD0ke2xlZnR9LHRvcD0ke3RvcH0scG9wdXA9eWVzYDtcblxuICAgICAgdGhpcy5wb3B1cCA9IHdpbmRvdy5vcGVuKHN0YXJ0VXJsLCAnb2F1dGgtbGluaycsIGZlYXR1cmVzKTtcblxuICAgICAgaWYgKCF0aGlzLnBvcHVwKSB7XG4gICAgICAgIG9ic2VydmVyLmVycm9yKHtcbiAgICAgICAgICBjb2RlOiAnUE9QVVBfQkxPQ0tFRCcsXG4gICAgICAgICAgbWVzc2FnZTogJ0VsIG5hdmVnYWRvciBibG9xdWXDsyBsYSB2ZW50YW5hIGVtZXJnZW50ZScsXG4gICAgICAgIH0gYXMgT0F1dGhFcnJvcik7XG4gICAgICAgIHJldHVybiAoKSA9PiB7fTsgLy8gY2xlYW51cCBmdW5jdGlvblxuICAgICAgfVxuXG4gICAgICB0aGlzLm1lc3NhZ2VIYW5kbGVyID0gKGV2ZW50OiBNZXNzYWdlRXZlbnQpID0+IHtcbiAgICAgICAgaWYgKGV2ZW50Lm9yaWdpbiAhPT0gd2luZG93LmxvY2F0aW9uLm9yaWdpbikgcmV0dXJuO1xuXG4gICAgICAgIGNvbnN0IGRhdGEgPSBldmVudC5kYXRhIGFzIE9BdXRoQ2FsbGJhY2tEYXRhO1xuICAgICAgICBpZiAoZGF0YT8udHlwZSAhPT0gJ29hdXRoLWNhbGxiYWNrJykgcmV0dXJuO1xuXG4gICAgICAgIHRoaXMuY2xlYW51cCgpO1xuXG4gICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgaWYgKGRhdGEuZXJyb3IpIHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKGRhdGEuZXJyb3IpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvYnNlcnZlci5uZXh0KGRhdGEudG9rZW5zIHx8ICh7fSBhcyBPQXV0aFJlc3VsdCkpO1xuICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ21lc3NhZ2UnLCB0aGlzLm1lc3NhZ2VIYW5kbGVyKTtcblxuICAgICAgdGhpcy5jaGVja0Nsb3NlZEludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5wb3B1cD8uY2xvc2VkKSB7XG4gICAgICAgICAgdGhpcy5jbGVhbnVwKCk7XG4gICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHtcbiAgICAgICAgICAgICAgY29kZTogJ1BPUFVQX0NMT1NFRCcsXG4gICAgICAgICAgICAgIG1lc3NhZ2U6ICdTZSBjZXJyw7MgbGEgdmVudGFuYSBkZSBhdXRlbnRpY2FjacOzbicsXG4gICAgICAgICAgICB9IGFzIE9BdXRoRXJyb3IpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LCA1MDApO1xuXG4gICAgICByZXR1cm4gKCkgPT4gdGhpcy5jbGVhbnVwKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogT2J0aWVuZSBsb3MgcHJvdmVlZG9yZXMgT0F1dGggdmluY3VsYWRvcyBhbCB1c3VhcmlvLlxuICAgKi9cbiAgZ2V0TGlua2VkUHJvdmlkZXJzKCk6IE9ic2VydmFibGU8TGlua2VkUHJvdmlkZXJbXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5nZXQ8eyBwcm92aWRlcnM6IExpbmtlZFByb3ZpZGVyW10gfT4oYCR7dGhpcy5jb25maWcuYXBpVXJsfS92Mi9hdXRoL29hdXRoL3Byb3ZpZGVyc2ApXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PlxuICAgICAgICAgIHRocm93RXJyb3IoXG4gICAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgICAoe1xuICAgICAgICAgICAgICAgIGNvZGU6IGVycm9yLmVycm9yPy5jb2RlIHx8ICdGRVRDSF9FUlJPUicsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogZXJyb3IuZXJyb3I/Lm1lc3NhZ2UgfHwgJ0Vycm9yIGFsIG9idGVuZXIgcHJvdmVlZG9yZXMgdmluY3VsYWRvcycsXG4gICAgICAgICAgICAgIH0pIGFzIE9BdXRoRXJyb3JcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICkgYXMgdW5rbm93biBhcyBPYnNlcnZhYmxlPExpbmtlZFByb3ZpZGVyW10+O1xuICB9XG5cbiAgLyoqXG4gICAqIERlc3ZpbmN1bGEgdW4gcHJvdmVlZG9yIE9BdXRoLlxuICAgKi9cbiAgdW5saW5rUHJvdmlkZXIocHJvdmlkZXI6IE9BdXRoUHJvdmlkZXIpOiBPYnNlcnZhYmxlPHsgc3VjY2VzczogYm9vbGVhbiB9PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLnBvc3Q8eyBzdWNjZXNzOiBib29sZWFuIH0+KGAke3RoaXMuY29uZmlnLmFwaVVybH0vdjIvYXV0aC9vYXV0aC91bmxpbmtgLCB7IHByb3ZpZGVyIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PlxuICAgICAgICAgIHRocm93RXJyb3IoXG4gICAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgICAoe1xuICAgICAgICAgICAgICAgIGNvZGU6IGVycm9yLmVycm9yPy5jb2RlIHx8ICdVTkxJTktfRVJST1InLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLmVycm9yPy5tZXNzYWdlIHx8ICdFcnJvciBhbCBkZXN2aW5jdWxhciBwcm92ZWVkb3InLFxuICAgICAgICAgICAgICB9KSBhcyBPQXV0aEVycm9yXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEVzdGFibGVjZSBjb250cmFzZcOxYSBwYXJhIHVzdWFyaW9zIHF1ZSBzb2xvIHRpZW5lbiBPQXV0aC5cbiAgICovXG4gIHNldFBhc3N3b3JkKHBhc3N3b3JkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPHsgc3VjY2VzczogYm9vbGVhbiB9PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLnBvc3Q8eyBzdWNjZXNzOiBib29sZWFuIH0+KGAke3RoaXMuY29uZmlnLmFwaVVybH0vdjIvYXV0aC9vYXV0aC9zZXQtcGFzc3dvcmRgLCB7IHBhc3N3b3JkIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PlxuICAgICAgICAgIHRocm93RXJyb3IoXG4gICAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgICAoe1xuICAgICAgICAgICAgICAgIGNvZGU6IGVycm9yLmVycm9yPy5jb2RlIHx8ICdTRVRfUEFTU1dPUkRfRVJST1InLFxuICAgICAgICAgICAgICAgIG1lc3NhZ2U6IGVycm9yLmVycm9yPy5tZXNzYWdlIHx8ICdFcnJvciBhbCBlc3RhYmxlY2VyIGNvbnRyYXNlw7FhJyxcbiAgICAgICAgICAgICAgfSkgYXMgT0F1dGhFcnJvclxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWZXJpZmljYSBzaSBlbCB1c3VhcmlvIHRpZW5lIGNvbnRyYXNlw7FhIGVzdGFibGVjaWRhLlxuICAgKi9cbiAgaGFzUGFzc3dvcmQoKTogT2JzZXJ2YWJsZTxIYXNQYXNzd29yZFJlc3BvbnNlPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDxIYXNQYXNzd29yZFJlc3BvbnNlPihgJHt0aGlzLmNvbmZpZy5hcGlVcmx9L3YyL2F1dGgvb2F1dGgvaGFzLXBhc3N3b3JkYClcbiAgICAgIC5waXBlKFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+XG4gICAgICAgICAgdGhyb3dFcnJvcihcbiAgICAgICAgICAgICgpID0+XG4gICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgY29kZTogZXJyb3IuZXJyb3I/LmNvZGUgfHwgJ0NIRUNLX1BBU1NXT1JEX0VSUk9SJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBlcnJvci5lcnJvcj8ubWVzc2FnZSB8fCAnRXJyb3IgYWwgdmVyaWZpY2FyIGNvbnRyYXNlw7FhJyxcbiAgICAgICAgICAgICAgfSkgYXMgT0F1dGhFcnJvclxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXZpc2EgbG9jYWxTdG9yYWdlIHBvciBkYXRvcyBkZSBjYWxsYmFjayBPQXV0aCAoZmFsbGJhY2sgcGFyYSBDT09QKS5cbiAgICogU29sbyBhY2VwdGEgZGF0b3MgcmVjaWVudGVzICjDumx0aW1vcyAzMCBzZWd1bmRvcykuXG4gICAqL1xuICBwcml2YXRlIGNoZWNrTG9jYWxTdG9yYWdlRmFsbGJhY2soKTogT0F1dGhDYWxsYmFja0RhdGEgfCBudWxsIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgdGltZXN0YW1wID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ29hdXRoX2NhbGxiYWNrX3RpbWVzdGFtcCcpO1xuICAgICAgY29uc3QgZGF0YVN0ciA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdvYXV0aF9jYWxsYmFja19kYXRhJyk7XG5cbiAgICAgIGlmICghdGltZXN0YW1wIHx8ICFkYXRhU3RyKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICAvLyBTb2xvIGFjZXB0YXIgZGF0b3MgZGUgbG9zIMO6bHRpbW9zIDMwIHNlZ3VuZG9zXG4gICAgICBjb25zdCBhZ2UgPSBEYXRlLm5vdygpIC0gcGFyc2VJbnQodGltZXN0YW1wLCAxMCk7XG4gICAgICBpZiAoYWdlID4gMzAwMDApIHtcbiAgICAgICAgY29uc29sZS5sb2coJ1tPQXV0aFNlcnZpY2VdIGxvY2FsU3RvcmFnZSBkYXRhIHRvbyBvbGQsIGlnbm9yaW5nJyk7XG4gICAgICAgIHRoaXMuY2xlYXJMb2NhbFN0b3JhZ2VGYWxsYmFjaygpO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoZGF0YVN0cikgYXMgT0F1dGhDYWxsYmFja0RhdGE7XG4gICAgICB0aGlzLmNsZWFyTG9jYWxTdG9yYWdlRmFsbGJhY2soKTtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW09BdXRoU2VydmljZV0gRXJyb3IgcmVhZGluZyBsb2NhbFN0b3JhZ2UgZmFsbGJhY2s6JywgZSk7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTGltcGlhIGRhdG9zIGRlIGZhbGxiYWNrIGRlIGxvY2FsU3RvcmFnZS5cbiAgICovXG4gIHByaXZhdGUgY2xlYXJMb2NhbFN0b3JhZ2VGYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ29hdXRoX2NhbGxiYWNrX2RhdGEnKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdvYXV0aF9jYWxsYmFja190aW1lc3RhbXAnKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElnbm9yYXIgZXJyb3JlcyBkZSBsaW1waWV6YVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMaW1waWEgcmVjdXJzb3MgZGVsIHBvcHVwLlxuICAgKi9cbiAgcHJpdmF0ZSBjbGVhbnVwKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1lc3NhZ2VIYW5kbGVyKSB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMubWVzc2FnZUhhbmRsZXIpO1xuICAgICAgdGhpcy5tZXNzYWdlSGFuZGxlciA9IG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2hlY2tDbG9zZWRJbnRlcnZhbCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmNoZWNrQ2xvc2VkSW50ZXJ2YWwpO1xuICAgICAgdGhpcy5jaGVja0Nsb3NlZEludGVydmFsID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wb3B1cCAmJiAhdGhpcy5wb3B1cC5jbG9zZWQpIHtcbiAgICAgIHRoaXMucG9wdXAuY2xvc2UoKTtcbiAgICB9XG4gICAgdGhpcy5wb3B1cCA9IG51bGw7XG4gIH1cbn1cbiJdfQ==
|
|
324
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2F1dGguc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2VydmljZXMvYXV0aC9vYXV0aC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFVLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsVUFBVSxFQUFXLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFXL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFFNUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlDRztBQUVILE1BQU0sT0FBTyxZQUFZO0lBS3ZCLFlBQ21ELE1BQWdDLEVBQ3pFLElBQWdCLEVBQ2hCLE1BQWM7UUFGMkIsV0FBTSxHQUFOLE1BQU0sQ0FBMEI7UUFDekUsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBUGhCLFVBQUssR0FBa0IsSUFBSSxDQUFDO1FBQzVCLG1CQUFjLEdBQTJDLElBQUksQ0FBQztRQUM5RCx3QkFBbUIsR0FBMEMsSUFBSSxDQUFDO0lBTXZFLENBQUM7SUFFSjs7Ozs7O09BTUc7SUFDSCxTQUFTLENBQUMsUUFBdUI7UUFDL0IsT0FBTyxJQUFJLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUMvQiwwQkFBMEI7WUFDMUIsTUFBTSxXQUFXLEdBQUcsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sc0JBQXNCLENBQUM7WUFDcEUsTUFBTSxRQUFRLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLFFBQVEsdUJBQXVCLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7WUFFMUgsdUJBQXVCO1lBQ3ZC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QyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckIsQ0FBQztRQUNELElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBQ3BCLENBQUM7K0dBclVVLFlBQVksa0JBTUQsbUJBQW1CO21IQU45QixZQUFZLGNBREMsTUFBTTs7NEZBQ25CLFlBQVk7a0JBRHhCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFPN0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIE5nWm9uZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFZBTFRFQ0hfQVVUSF9DT05GSUcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQge1xuICBWYWx0ZWNoQXV0aENvbmZpZyxcbiAgT0F1dGhQcm92aWRlcixcbiAgT0F1dGhSZXN1bHQsXG4gIE9BdXRoRXJyb3IsXG4gIE9BdXRoQ2FsbGJhY2tEYXRhLFxuICBMaW5rZWRQcm92aWRlcixcbiAgSGFzUGFzc3dvcmRSZXNwb25zZSxcbn0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuLyoqXG4gKiBTZXJ2aWNpbyBkZSBPQXV0aCBwYXJhIGxvZ2luIHNvY2lhbC5cbiAqXG4gKiBJbXBsZW1lbnRhIGZsdWpvIE9BdXRoIHNlcnZlci1zaWRlIGNvbiBwb3B1cDpcbiAqIDEuIEZyb250ZW5kIGFicmUgcG9wdXAgaGFjaWEgYmFja2VuZFxuICogMi4gQmFja2VuZCByZWRpcmlnZSBhIHByb3ZpZGVyIChHb29nbGUsIEFwcGxlLCBNaWNyb3NvZnQpXG4gKiAzLiBVc3VhcmlvIGF1dG9yaXphXG4gKiA0LiBCYWNrZW5kIGludGVyY2FtYmlhIGNvZGUsIGdlbmVyYSBKV1QsIHJlZGlyaWdlIGNvbiB0b2tlbnNcbiAqIDUuIFBvcHVwIGVudsOtYSB0b2tlbnMgYSB2ZW50YW5hIHBhZHJlIHZpYSBwb3N0TWVzc2FnZVxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBPQXV0aFNlcnZpY2UsIEF1dGhTZXJ2aWNlIH0gZnJvbSAndmFsdGVjaC1jb21wb25lbnRzJztcbiAqXG4gKiBAQ29tcG9uZW50KHsuLi59KVxuICogZXhwb3J0IGNsYXNzIExvZ2luQ29tcG9uZW50IHtcbiAqICAgcHJpdmF0ZSBvYXV0aCA9IGluamVjdChPQXV0aFNlcnZpY2UpO1xuICogICBwcml2YXRlIGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICpcbiAqICAgYXN5bmMgbG9naW5XaXRoR29vZ2xlKCkge1xuICogICAgIHRoaXMub2F1dGguc3RhcnRGbG93KCdnb29nbGUnKS5zdWJzY3JpYmUoe1xuICogICAgICAgbmV4dDogKHJlc3VsdCkgPT4ge1xuICogICAgICAgICAvLyBUb2tlbnMgcmVjaWJpZG9zLCBndWFyZGFyIGVuIGF1dGggc3RhdGVcbiAqICAgICAgICAgdGhpcy5hdXRoLmhhbmRsZU9BdXRoU3VjY2VzcyhyZXN1bHQpO1xuICogICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy8nXSk7XG4gKiAgICAgICB9LFxuICogICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xuICogICAgICAgICBjb25zb2xlLmVycm9yKCdPQXV0aCBmYWlsZWQ6JywgZXJyb3IpO1xuICogICAgICAgfVxuICogICAgIH0pO1xuICogICB9XG4gKiB9XG4gKiBgYGBcbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBPQXV0aFNlcnZpY2Uge1xuICBwcml2YXRlIHBvcHVwOiBXaW5kb3cgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBtZXNzYWdlSGFuZGxlcjogKChldmVudDogTWVzc2FnZUV2ZW50KSA9PiB2b2lkKSB8IG51bGwgPSBudWxsO1xuICBwcml2YXRlIGNoZWNrQ2xvc2VkSW50ZXJ2YWw6IFJldHVyblR5cGU8dHlwZW9mIHNldEludGVydmFsPiB8IG51bGwgPSBudWxsO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVkFMVEVDSF9BVVRIX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IFZhbHRlY2hBdXRoQ29uZmlnIHwgbnVsbCxcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIEluaWNpYSBmbHVqbyBPQXV0aCBlbiBwb3B1cC5cbiAgICogUmV0b3JuYSBPYnNlcnZhYmxlIHF1ZSBlbWl0ZSBjdWFuZG8gZWwgdXN1YXJpbyBjb21wbGV0YSBlbCBmbHVqby5cbiAgICpcbiAgICogQHBhcmFtIHByb3ZpZGVyIC0gUHJvdmVlZG9yIE9BdXRoICgnZ29vZ2xlJywgJ2FwcGxlJywgJ21pY3Jvc29mdCcpXG4gICAqIEByZXR1cm5zIE9ic2VydmFibGUgcXVlIGVtaXRlIE9BdXRoUmVzdWx0IG8gZXJyb3JcbiAgICovXG4gIHN0YXJ0Rmxvdyhwcm92aWRlcjogT0F1dGhQcm92aWRlcik6IE9ic2VydmFibGU8T0F1dGhSZXN1bHQ+IHtcbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuICAgICAgLy8gQ29uc3RydWlyIFVSTCBkZSBpbmljaW9cbiAgICAgIGNvbnN0IHJlZGlyZWN0VXJpID0gYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vYXV0aC9vYXV0aC9jYWxsYmFja2A7XG4gICAgICBjb25zdCBzdGFydFVybCA9IGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L3YyL2F1dGgvb2F1dGgvJHtwcm92aWRlcn0vc3RhcnQ/cmVkaXJlY3RfdXJpPSR7ZW5jb2RlVVJJQ29tcG9uZW50KHJlZGlyZWN0VXJpKX1gO1xuXG4gICAgICAvLyBBYnJpciBwb3B1cCBjZW50cmFkb1xuICAgICAgY29uc3Qgd2lkdGggPSA1MDA7XG4gICAgICBjb25zdCBoZWlnaHQgPSA2MDA7XG4gICAgICBjb25zdCBsZWZ0ID0gd2luZG93LnNjcmVlblggKyAod2luZG93Lm91dGVyV2lkdGggLSB3aWR0aCkgLyAyO1xuICAgICAgY29uc3QgdG9wID0gd2luZG93LnNjcmVlblkgKyAod2luZG93Lm91dGVySGVpZ2h0IC0gaGVpZ2h0KSAvIDI7XG4gICAgICBjb25zdCBmZWF0dXJlcyA9IGB3aWR0aD0ke3dpZHRofSxoZWlnaHQ9JHtoZWlnaHR9LGxlZnQ9JHtsZWZ0fSx0b3A9JHt0b3B9LHBvcHVwPXllc2A7XG5cbiAgICAgIHRoaXMucG9wdXAgPSB3aW5kb3cub3BlbihzdGFydFVybCwgJ29hdXRoJywgZmVhdHVyZXMpO1xuXG4gICAgICBpZiAoIXRoaXMucG9wdXApIHtcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3Ioe1xuICAgICAgICAgIGNvZGU6ICdQT1BVUF9CTE9DS0VEJyxcbiAgICAgICAgICBtZXNzYWdlOlxuICAgICAgICAgICAgJ0VsIG5hdmVnYWRvciBibG9xdWXDsyBsYSB2ZW50YW5hIGVtZXJnZW50ZS4gUG9yIGZhdm9yLCBwZXJtaXRlIHBvcHVwcyBwYXJhIGVzdGUgc2l0aW8uJyxcbiAgICAgICAgfSBhcyBPQXV0aEVycm9yKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHt9O1xuICAgICAgfVxuXG4gICAgICAvLyBFc2N1Y2hhciBtZW5zYWplcyBkZWwgcG9wdXBcbiAgICAgIHRoaXMubWVzc2FnZUhhbmRsZXIgPSAoZXZlbnQ6IE1lc3NhZ2VFdmVudCkgPT4ge1xuICAgICAgICAvLyBWYWxpZGFyIG9yaWdlblxuICAgICAgICBpZiAoZXZlbnQub3JpZ2luICE9PSB3aW5kb3cubG9jYXRpb24ub3JpZ2luKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gVmFsaWRhciB0aXBvIGRlIG1lbnNhamVcbiAgICAgICAgY29uc3QgZGF0YSA9IGV2ZW50LmRhdGEgYXMgT0F1dGhDYWxsYmFja0RhdGE7XG4gICAgICAgIGlmIChkYXRhPy50eXBlICE9PSAnb2F1dGgtY2FsbGJhY2snKSB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gTGltcGlhclxuICAgICAgICB0aGlzLmNsZWFudXAoKTtcblxuICAgICAgICAvLyBFbWl0aXIgcmVzdWx0YWRvIGRlbnRybyBkZSBOZ1pvbmUgcGFyYSB0cmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb25cbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICBpZiAoZGF0YS5lcnJvcikge1xuICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZGF0YS5lcnJvcik7XG4gICAgICAgICAgfSBlbHNlIGlmIChkYXRhLnRva2Vucykge1xuICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChkYXRhLnRva2Vucyk7XG4gICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcih7XG4gICAgICAgICAgICAgIGNvZGU6ICdJTlZBTElEX1JFU1BPTlNFJyxcbiAgICAgICAgICAgICAgbWVzc2FnZTogJ1Jlc3B1ZXN0YSBpbnbDoWxpZGEgZGVsIHNlcnZpZG9yIGRlIGF1dGVudGljYWNpw7NuJyxcbiAgICAgICAgICAgIH0gYXMgT0F1dGhFcnJvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH07XG5cbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgdGhpcy5tZXNzYWdlSGFuZGxlcik7XG5cbiAgICAgIC8vIFBvbGxpbmcgZGUgbG9jYWxTdG9yYWdlIChDT09QIHdvcmthcm91bmQgLSBubyBwb2RlbW9zIGRldGVjdGFyIHBvcHVwLmNsb3NlZClcbiAgICAgIC8vIFRhbWJpw6luIHZlcmlmaWNhIHNpIGVsIHBvcHVwIHNlIGNlcnLDsyBtYW51YWxtZW50ZVxuICAgICAgdGhpcy5jaGVja0Nsb3NlZEludGVydmFsID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICAvLyBQcmltZXJvIHZlcmlmaWNhciBsb2NhbFN0b3JhZ2UgKGZ1bmNpb25hIGF1bnF1ZSBDT09QIGJsb3F1ZWUgdG9kbylcbiAgICAgICAgY29uc3Qgc3RvcmVkRGF0YSA9IHRoaXMuY2hlY2tMb2NhbFN0b3JhZ2VGYWxsYmFjaygpO1xuICAgICAgICBpZiAoc3RvcmVkRGF0YSkge1xuICAgICAgICAgIHRoaXMuY2xlYW51cCgpO1xuICAgICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICBpZiAoc3RvcmVkRGF0YS5lcnJvcikge1xuICAgICAgICAgICAgICBvYnNlcnZlci5lcnJvcihzdG9yZWREYXRhLmVycm9yKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoc3RvcmVkRGF0YS50b2tlbnMpIHtcbiAgICAgICAgICAgICAgY29uc29sZS5sb2coJ1tPQXV0aFNlcnZpY2VdIFJldHJpZXZlZCB0b2tlbnMgZnJvbSBsb2NhbFN0b3JhZ2UgZmFsbGJhY2snLCB7XG4gICAgICAgICAgICAgICAga2V5czogT2JqZWN0LmtleXMoc3RvcmVkRGF0YS50b2tlbnMpLFxuICAgICAgICAgICAgICAgIGhhc0ZpcmViYXNlVG9rZW46ICEhc3RvcmVkRGF0YS50b2tlbnMuZmlyZWJhc2VUb2tlbixcbiAgICAgICAgICAgICAgICBmaXJlYmFzZVRva2VuTGVuZ3RoOiBzdG9yZWREYXRhLnRva2Vucy5maXJlYmFzZVRva2VuPy5sZW5ndGggPz8gMCxcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgIG9ic2VydmVyLm5leHQoc3RvcmVkRGF0YS50b2tlbnMpO1xuICAgICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3Ioe1xuICAgICAgICAgICAgICAgIGNvZGU6ICdJTlZBTElEX1JFU1BPTlNFJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiAnUmVzcHVlc3RhIGludsOhbGlkYSBkZWwgc2Vydmlkb3IgZGUgYXV0ZW50aWNhY2nDs24nLFxuICAgICAgICAgICAgICB9IGFzIE9BdXRoRXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEludGVudGFyIHZlcmlmaWNhciBzaSBwb3B1cCBzZSBjZXJyw7MgKHB1ZWRlIGZhbGxhciBwb3IgQ09PUClcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAodGhpcy5wb3B1cD8uY2xvc2VkKSB7XG4gICAgICAgICAgICB0aGlzLmNsZWFudXAoKTtcbiAgICAgICAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICAgIG9ic2VydmVyLmVycm9yKHtcbiAgICAgICAgICAgICAgICBjb2RlOiAnUE9QVVBfQ0xPU0VEJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiAnU2UgY2VycsOzIGxhIHZlbnRhbmEgZGUgYXV0ZW50aWNhY2nDs24nLFxuICAgICAgICAgICAgICB9IGFzIE9BdXRoRXJyb3IpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAvLyBDT09QIGJsb3F1ZWEgYWNjZXNvIGEgcG9wdXAuY2xvc2VkIC0gaWdub3JhciB5IHNlZ3VpciBjb24gcG9sbGluZ1xuICAgICAgICB9XG4gICAgICB9LCAzMDApO1xuXG4gICAgICAvLyBDbGVhbnVwIGN1YW5kbyBlbCBvYnNlcnZhYmxlIHNlIGRlc3RydXllXG4gICAgICByZXR1cm4gKCkgPT4gdGhpcy5jbGVhbnVwKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogSW5pY2lhIGZsdWpvIGRlIGxpbmtpbmcgcGFyYSB2aW5jdWxhciB1biBwcm92ZWVkb3IgYWRpY2lvbmFsLlxuICAgKiBSZXF1aWVyZSBxdWUgZWwgdXN1YXJpbyBlc3TDqSBhdXRlbnRpY2Fkby5cbiAgICpcbiAgICogQHBhcmFtIHByb3ZpZGVyIC0gUHJvdmVlZG9yIE9BdXRoIGEgdmluY3VsYXJcbiAgICogQHJldHVybnMgT2JzZXJ2YWJsZSBxdWUgZW1pdGUgY3VhbmRvIHNlIGNvbXBsZXRhIGVsIGxpbmtpbmdcbiAgICovXG4gIHN0YXJ0TGlua0Zsb3cocHJvdmlkZXI6IE9BdXRoUHJvdmlkZXIpOiBPYnNlcnZhYmxlPE9BdXRoUmVzdWx0PiB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlKG9ic2VydmVyID0+IHtcbiAgICAgIGNvbnN0IHJlZGlyZWN0VXJpID0gYCR7d2luZG93LmxvY2F0aW9uLm9yaWdpbn0vYXV0aC9vYXV0aC9jYWxsYmFja2A7XG4gICAgICBjb25zdCBzdGFydFVybCA9IGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L3YyL2F1dGgvb2F1dGgvbGluay8ke3Byb3ZpZGVyfS9zdGFydD9yZWRpcmVjdF91cmk9JHtlbmNvZGVVUklDb21wb25lbnQocmVkaXJlY3RVcmkpfWA7XG5cbiAgICAgIGNvbnN0IHdpZHRoID0gNTAwO1xuICAgICAgY29uc3QgaGVpZ2h0ID0gNjAwO1xuICAgICAgY29uc3QgbGVmdCA9IHdpbmRvdy5zY3JlZW5YICsgKHdpbmRvdy5vdXRlcldpZHRoIC0gd2lkdGgpIC8gMjtcbiAgICAgIGNvbnN0IHRvcCA9IHdpbmRvdy5zY3JlZW5ZICsgKHdpbmRvdy5vdXRlckhlaWdodCAtIGhlaWdodCkgLyAyO1xuICAgICAgY29uc3QgZmVhdHVyZXMgPSBgd2lkdGg9JHt3aWR0aH0saGVpZ2h0PSR7aGVpZ2h0fSxsZWZ0PSR7bGVmdH0sdG9wPSR7dG9wfSxwb3B1cD15ZXNgO1xuXG4gICAgICB0aGlzLnBvcHVwID0gd2luZG93Lm9wZW4oc3RhcnRVcmwsICdvYXV0aC1saW5rJywgZmVhdHVyZXMpO1xuXG4gICAgICBpZiAoIXRoaXMucG9wdXApIHtcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3Ioe1xuICAgICAgICAgIGNvZGU6ICdQT1BVUF9CTE9DS0VEJyxcbiAgICAgICAgICBtZXNzYWdlOiAnRWwgbmF2ZWdhZG9yIGJsb3F1ZcOzIGxhIHZlbnRhbmEgZW1lcmdlbnRlJyxcbiAgICAgICAgfSBhcyBPQXV0aEVycm9yKTtcbiAgICAgICAgcmV0dXJuICgpID0+IHt9OyAvLyBjbGVhbnVwIGZ1bmN0aW9uXG4gICAgICB9XG5cbiAgICAgIHRoaXMubWVzc2FnZUhhbmRsZXIgPSAoZXZlbnQ6IE1lc3NhZ2VFdmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQub3JpZ2luICE9PSB3aW5kb3cubG9jYXRpb24ub3JpZ2luKSByZXR1cm47XG5cbiAgICAgICAgY29uc3QgZGF0YSA9IGV2ZW50LmRhdGEgYXMgT0F1dGhDYWxsYmFja0RhdGE7XG4gICAgICAgIGlmIChkYXRhPy50eXBlICE9PSAnb2F1dGgtY2FsbGJhY2snKSByZXR1cm47XG5cbiAgICAgICAgdGhpcy5jbGVhbnVwKCk7XG5cbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgICBpZiAoZGF0YS5lcnJvcikge1xuICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZGF0YS5lcnJvcik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9ic2VydmVyLm5leHQoZGF0YS50b2tlbnMgfHwgKHt9IGFzIE9BdXRoUmVzdWx0KSk7XG4gICAgICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9O1xuXG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMubWVzc2FnZUhhbmRsZXIpO1xuXG4gICAgICB0aGlzLmNoZWNrQ2xvc2VkSW50ZXJ2YWwgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnBvcHVwPy5jbG9zZWQpIHtcbiAgICAgICAgICB0aGlzLmNsZWFudXAoKTtcbiAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3Ioe1xuICAgICAgICAgICAgICBjb2RlOiAnUE9QVVBfQ0xPU0VEJyxcbiAgICAgICAgICAgICAgbWVzc2FnZTogJ1NlIGNlcnLDsyBsYSB2ZW50YW5hIGRlIGF1dGVudGljYWNpw7NuJyxcbiAgICAgICAgICAgIH0gYXMgT0F1dGhFcnJvcik7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sIDUwMCk7XG5cbiAgICAgIHJldHVybiAoKSA9PiB0aGlzLmNsZWFudXAoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPYnRpZW5lIGxvcyBwcm92ZWVkb3JlcyBPQXV0aCB2aW5jdWxhZG9zIGFsIHVzdWFyaW8uXG4gICAqL1xuICBnZXRMaW5rZWRQcm92aWRlcnMoKTogT2JzZXJ2YWJsZTxMaW5rZWRQcm92aWRlcltdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLmdldDx7IHByb3ZpZGVyczogTGlua2VkUHJvdmlkZXJbXSB9PihgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS92Mi9hdXRoL29hdXRoL3Byb3ZpZGVyc2ApXG4gICAgICAucGlwZShcbiAgICAgICAgY2F0Y2hFcnJvcihlcnJvciA9PlxuICAgICAgICAgIHRocm93RXJyb3IoXG4gICAgICAgICAgICAoKSA9PlxuICAgICAgICAgICAgICAoe1xuICAgICAgICAgICAgICAgIGNvZGU6IGVycm9yLmVycm9yPy5jb2RlIHx8ICdGRVRDSF9FUlJPUicsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogZXJyb3IuZXJyb3I/Lm1lc3NhZ2UgfHwgJ0Vycm9yIGFsIG9idGVuZXIgcHJvdmVlZG9yZXMgdmluY3VsYWRvcycsXG4gICAgICAgICAgICAgIH0pIGFzIE9BdXRoRXJyb3JcbiAgICAgICAgICApXG4gICAgICAgIClcbiAgICAgICkgYXMgdW5rbm93biBhcyBPYnNlcnZhYmxlPExpbmtlZFByb3ZpZGVyW10+O1xuICB9XG5cbiAgLyoqXG4gICAqIERlc3ZpbmN1bGEgdW4gcHJvdmVlZG9yIE9BdXRoLlxuICAgKi9cbiAgdW5saW5rUHJvdmlkZXIocHJvdmlkZXI6IE9BdXRoUHJvdmlkZXIpOiBPYnNlcnZhYmxlPHsgc3VjY2VzczogYm9vbGVhbiB9PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cFxuICAgICAgLnBvc3Q8eyBzdWNjZXNzOiBib29sZWFuIH0+KGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L3YyL2F1dGgvb2F1dGgvdW5saW5rYCwgeyBwcm92aWRlciB9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT5cbiAgICAgICAgICB0aHJvd0Vycm9yKFxuICAgICAgICAgICAgKCkgPT5cbiAgICAgICAgICAgICAgKHtcbiAgICAgICAgICAgICAgICBjb2RlOiBlcnJvci5lcnJvcj8uY29kZSB8fCAnVU5MSU5LX0VSUk9SJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBlcnJvci5lcnJvcj8ubWVzc2FnZSB8fCAnRXJyb3IgYWwgZGVzdmluY3VsYXIgcHJvdmVlZG9yJyxcbiAgICAgICAgICAgICAgfSkgYXMgT0F1dGhFcnJvclxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFc3RhYmxlY2UgY29udHJhc2XDsWEgcGFyYSB1c3VhcmlvcyBxdWUgc29sbyB0aWVuZW4gT0F1dGguXG4gICAqL1xuICBzZXRQYXNzd29yZChwYXNzd29yZDogc3RyaW5nKTogT2JzZXJ2YWJsZTx7IHN1Y2Nlc3M6IGJvb2xlYW4gfT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHBcbiAgICAgIC5wb3N0PHsgc3VjY2VzczogYm9vbGVhbiB9PihgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS92Mi9hdXRoL29hdXRoL3NldC1wYXNzd29yZGAsIHsgcGFzc3dvcmQgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+XG4gICAgICAgICAgdGhyb3dFcnJvcihcbiAgICAgICAgICAgICgpID0+XG4gICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgY29kZTogZXJyb3IuZXJyb3I/LmNvZGUgfHwgJ1NFVF9QQVNTV09SRF9FUlJPUicsXG4gICAgICAgICAgICAgICAgbWVzc2FnZTogZXJyb3IuZXJyb3I/Lm1lc3NhZ2UgfHwgJ0Vycm9yIGFsIGVzdGFibGVjZXIgY29udHJhc2XDsWEnLFxuICAgICAgICAgICAgICB9KSBhcyBPQXV0aEVycm9yXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFZlcmlmaWNhIHNpIGVsIHVzdWFyaW8gdGllbmUgY29udHJhc2XDsWEgZXN0YWJsZWNpZGEuXG4gICAqL1xuICBoYXNQYXNzd29yZCgpOiBPYnNlcnZhYmxlPEhhc1Bhc3N3b3JkUmVzcG9uc2U+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAuZ2V0PEhhc1Bhc3N3b3JkUmVzcG9uc2U+KGAke3RoaXMuY29uZmlnPy5hcGlVcmx9L3YyL2F1dGgvb2F1dGgvaGFzLXBhc3N3b3JkYClcbiAgICAgIC5waXBlKFxuICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+XG4gICAgICAgICAgdGhyb3dFcnJvcihcbiAgICAgICAgICAgICgpID0+XG4gICAgICAgICAgICAgICh7XG4gICAgICAgICAgICAgICAgY29kZTogZXJyb3IuZXJyb3I/LmNvZGUgfHwgJ0NIRUNLX1BBU1NXT1JEX0VSUk9SJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBlcnJvci5lcnJvcj8ubWVzc2FnZSB8fCAnRXJyb3IgYWwgdmVyaWZpY2FyIGNvbnRyYXNlw7FhJyxcbiAgICAgICAgICAgICAgfSkgYXMgT0F1dGhFcnJvclxuICAgICAgICAgIClcbiAgICAgICAgKVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXZpc2EgbG9jYWxTdG9yYWdlIHBvciBkYXRvcyBkZSBjYWxsYmFjayBPQXV0aCAoZmFsbGJhY2sgcGFyYSBDT09QKS5cbiAgICogU29sbyBhY2VwdGEgZGF0b3MgcmVjaWVudGVzICjDumx0aW1vcyAzMCBzZWd1bmRvcykuXG4gICAqL1xuICBwcml2YXRlIGNoZWNrTG9jYWxTdG9yYWdlRmFsbGJhY2soKTogT0F1dGhDYWxsYmFja0RhdGEgfCBudWxsIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgdGltZXN0YW1wID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ29hdXRoX2NhbGxiYWNrX3RpbWVzdGFtcCcpO1xuICAgICAgY29uc3QgZGF0YVN0ciA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdvYXV0aF9jYWxsYmFja19kYXRhJyk7XG5cbiAgICAgIGlmICghdGltZXN0YW1wIHx8ICFkYXRhU3RyKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuXG4gICAgICAvLyBTb2xvIGFjZXB0YXIgZGF0b3MgZGUgbG9zIMO6bHRpbW9zIDMwIHNlZ3VuZG9zXG4gICAgICBjb25zdCBhZ2UgPSBEYXRlLm5vdygpIC0gcGFyc2VJbnQodGltZXN0YW1wLCAxMCk7XG4gICAgICBpZiAoYWdlID4gMzAwMDApIHtcbiAgICAgICAgY29uc29sZS5sb2coJ1tPQXV0aFNlcnZpY2VdIGxvY2FsU3RvcmFnZSBkYXRhIHRvbyBvbGQsIGlnbm9yaW5nJyk7XG4gICAgICAgIHRoaXMuY2xlYXJMb2NhbFN0b3JhZ2VGYWxsYmFjaygpO1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoZGF0YVN0cikgYXMgT0F1dGhDYWxsYmFja0RhdGE7XG4gICAgICB0aGlzLmNsZWFyTG9jYWxTdG9yYWdlRmFsbGJhY2soKTtcbiAgICAgIHJldHVybiBkYXRhO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW09BdXRoU2VydmljZV0gRXJyb3IgcmVhZGluZyBsb2NhbFN0b3JhZ2UgZmFsbGJhY2s6JywgZSk7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTGltcGlhIGRhdG9zIGRlIGZhbGxiYWNrIGRlIGxvY2FsU3RvcmFnZS5cbiAgICovXG4gIHByaXZhdGUgY2xlYXJMb2NhbFN0b3JhZ2VGYWxsYmFjaygpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ29hdXRoX2NhbGxiYWNrX2RhdGEnKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdvYXV0aF9jYWxsYmFja190aW1lc3RhbXAnKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIC8vIElnbm9yYXIgZXJyb3JlcyBkZSBsaW1waWV6YVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBMaW1waWEgcmVjdXJzb3MgZGVsIHBvcHVwLlxuICAgKi9cbiAgcHJpdmF0ZSBjbGVhbnVwKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1lc3NhZ2VIYW5kbGVyKSB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcignbWVzc2FnZScsIHRoaXMubWVzc2FnZUhhbmRsZXIpO1xuICAgICAgdGhpcy5tZXNzYWdlSGFuZGxlciA9IG51bGw7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2hlY2tDbG9zZWRJbnRlcnZhbCkge1xuICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmNoZWNrQ2xvc2VkSW50ZXJ2YWwpO1xuICAgICAgdGhpcy5jaGVja0Nsb3NlZEludGVydmFsID0gbnVsbDtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5wb3B1cCAmJiAhdGhpcy5wb3B1cC5jbG9zZWQpIHtcbiAgICAgIHRoaXMucG9wdXAuY2xvc2UoKTtcbiAgICB9XG4gICAgdGhpcy5wb3B1cCA9IG51bGw7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -40,7 +40,7 @@ export class SessionService {
|
|
|
40
40
|
this.http = http;
|
|
41
41
|
}
|
|
42
42
|
get baseUrl() {
|
|
43
|
-
return `${this.config
|
|
43
|
+
return `${this.config?.apiUrl}/v2/users/me/sessions`;
|
|
44
44
|
}
|
|
45
45
|
/**
|
|
46
46
|
* Lista todas las sesiones activas del usuario.
|
|
@@ -77,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
77
77
|
type: Inject,
|
|
78
78
|
args: [VALTECH_AUTH_CONFIG]
|
|
79
79
|
}] }, { type: i1.HttpClient }] });
|
|
80
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Vzc2lvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL3Nlc3Npb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHN0QsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBUS9DOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFFSCxNQUFNLE9BQU8sY0FBYztJQUN6QixZQUNtRCxNQUFnQyxFQUN6RSxJQUFnQjtRQUR5QixXQUFNLEdBQU4sTUFBTSxDQUEwQjtRQUN6RSxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3ZCLENBQUM7SUFFSixJQUFZLE9BQU87UUFDakIsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQXVCLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzNELEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FDbkMsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsU0FBaUI7UUFDN0IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBeUIsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBeUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hFLENBQUM7K0dBcENVLGNBQWMsa0JBRUgsbUJBQW1CO21IQUY5QixjQUFjLGNBREQsTUFBTTs7NEZBQ25CLGNBQWM7a0JBRDFCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFHN0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBWQUxURUNIX0FVVEhfQ09ORklHIH0gZnJvbSAnLi9jb25maWcnO1xuaW1wb3J0IHtcbiAgVmFsdGVjaEF1dGhDb25maWcsXG4gIFNlc3Npb25JbmZvLFxuICBMaXN0U2Vzc2lvbnNSZXNwb25zZSxcbiAgUmV2b2tlU2Vzc2lvbnNSZXNwb25zZSxcbn0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogU2VydmljaW8gcGFyYSBnZXN0acOzbiBkZSBzZXNpb25lcyBhY3RpdmFzIGRlbCB1c3VhcmlvLlxuICogUGVybWl0ZSBsaXN0YXIgeSByZXZvY2FyIHNlc2lvbmVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJ3ZhbHRlY2gtY29tcG9uZW50cyc7XG4gKlxuICogQENvbXBvbmVudCh7Li4ufSlcbiAqIGV4cG9ydCBjbGFzcyBTZXNzaW9uc1BhZ2Uge1xuICogICBwcml2YXRlIHNlc3Npb25TZXJ2aWNlID0gaW5qZWN0KFNlc3Npb25TZXJ2aWNlKTtcbiAqXG4gKiAgIHNlc3Npb25zID0gc2lnbmFsPFNlc3Npb25JbmZvW10+KFtdKTtcbiAqXG4gKiAgIGFzeW5jIG5nT25Jbml0KCkge1xuICogICAgIGNvbnN0IHNlc3Npb25zID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5zZXNzaW9uU2VydmljZS5saXN0U2Vzc2lvbnMoKSk7XG4gKiAgICAgdGhpcy5zZXNzaW9ucy5zZXQoc2Vzc2lvbnMpO1xuICogICB9XG4gKlxuICogICBhc3luYyByZXZva2VTZXNzaW9uKHNlc3Npb25JZDogc3RyaW5nKSB7XG4gKiAgICAgYXdhaXQgZmlyc3RWYWx1ZUZyb20odGhpcy5zZXNzaW9uU2VydmljZS5yZXZva2VTZXNzaW9uKHNlc3Npb25JZCkpO1xuICogICAgIC8vIFJlY2FyZ2FyIGxpc3RhXG4gKiAgIH1cbiAqXG4gKiAgIGFzeW5jIHJldm9rZUFsbE90aGVycygpIHtcbiAqICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbSh0aGlzLnNlc3Npb25TZXJ2aWNlLnJldm9rZUFsbFNlc3Npb25zKCkpO1xuICogICAgIGNvbnNvbGUubG9nKGAke3Jlc3VsdC5zZXNzaW9uc1Jldm9rZWR9IHNlc2lvbmVzIGNlcnJhZGFzYCk7XG4gKiAgIH1cbiAqIH1cbiAqIGBgYFxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFNlc3Npb25TZXJ2aWNlIHtcbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChWQUxURUNIX0FVVEhfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogVmFsdGVjaEF1dGhDb25maWcgfCBudWxsLFxuICAgIHByaXZhdGUgaHR0cDogSHR0cENsaWVudFxuICApIHt9XG5cbiAgcHJpdmF0ZSBnZXQgYmFzZVVybCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmNvbmZpZz8uYXBpVXJsfS92Mi91c2Vycy9tZS9zZXNzaW9uc2A7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGEgdG9kYXMgbGFzIHNlc2lvbmVzIGFjdGl2YXMgZGVsIHVzdWFyaW8uXG4gICAqIExhIHNlc2nDs24gYWN0dWFsIGVzdMOhIG1hcmNhZGEgY29uIGlzQ3VycmVudD10cnVlLlxuICAgKi9cbiAgbGlzdFNlc3Npb25zKCk6IE9ic2VydmFibGU8U2Vzc2lvbkluZm9bXT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0PExpc3RTZXNzaW9uc1Jlc3BvbnNlPih0aGlzLmJhc2VVcmwpLnBpcGUoXG4gICAgICBtYXAocmVzcG9uc2UgPT4gcmVzcG9uc2Uuc2Vzc2lvbnMpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXZvY2EgdW5hIHNlc2nDs24gZXNwZWPDrWZpY2EuXG4gICAqIEZ1ZXJ6YSBlbCBjaWVycmUgZGUgc2VzacOzbiBlbiBlc2UgZGlzcG9zaXRpdm8vbmF2ZWdhZG9yLlxuICAgKi9cbiAgcmV2b2tlU2Vzc2lvbihzZXNzaW9uSWQ6IHN0cmluZyk6IE9ic2VydmFibGU8UmV2b2tlU2Vzc2lvbnNSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPFJldm9rZVNlc3Npb25zUmVzcG9uc2U+KGAke3RoaXMuYmFzZVVybH0vJHtzZXNzaW9uSWR9YCk7XG4gIH1cblxuICAvKipcbiAgICogUmV2b2NhIHRvZGFzIGxhcyBzZXNpb25lcyBleGNlcHRvIGxhIGFjdHVhbC5cbiAgICogw5p0aWwgcGFyYSBcImNlcnJhciBzZXNpw7NuIGVuIHRvZG9zIGxvcyBkaXNwb3NpdGl2b3NcIi5cbiAgICpcbiAgICogQHJldHVybnMgTsO6bWVybyBkZSBzZXNpb25lcyByZXZvY2FkYXNcbiAgICovXG4gIHJldm9rZUFsbFNlc3Npb25zKCk6IE9ic2VydmFibGU8UmV2b2tlU2Vzc2lvbnNSZXNwb25zZT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZGVsZXRlPFJldm9rZVNlc3Npb25zUmVzcG9uc2U+KHRoaXMuYmFzZVVybCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Inject, Injectable, Optional, PLATFORM_ID } from '@angular/core';
|
|
1
|
+
import { Inject, Injectable, Optional, PLATFORM_ID, isDevMode } from '@angular/core';
|
|
2
2
|
import { isPlatformBrowser } from '@angular/common';
|
|
3
3
|
import { VALTECH_AUTH_CONFIG } from './config';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
@@ -9,7 +9,10 @@ export class AuthStorageService {
|
|
|
9
9
|
constructor(config, platformId) {
|
|
10
10
|
this.config = config;
|
|
11
11
|
this.isBrowser = isPlatformBrowser(platformId);
|
|
12
|
-
|
|
12
|
+
if (!this.config && isDevMode()) {
|
|
13
|
+
console.warn('[valtech-components] AuthStorageService: provideValtechAuth() no está en main.ts.');
|
|
14
|
+
}
|
|
15
|
+
const prefix = this.config?.storagePrefix || 'valtech_auth_';
|
|
13
16
|
this.keys = {
|
|
14
17
|
ACCESS_TOKEN: `${prefix}access_token`,
|
|
15
18
|
REFRESH_TOKEN: `${prefix}refresh_token`,
|
|
@@ -146,7 +149,7 @@ export class AuthStorageService {
|
|
|
146
149
|
if (!this.isBrowser)
|
|
147
150
|
return;
|
|
148
151
|
try {
|
|
149
|
-
Object.values(this.keys).forEach(
|
|
152
|
+
Object.values(this.keys).forEach(key => localStorage.removeItem(key));
|
|
150
153
|
}
|
|
151
154
|
catch (e) {
|
|
152
155
|
console.warn('[ValtechAuth] Error limpiando storage:', e);
|
|
@@ -175,4 +178,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
175
178
|
type: Inject,
|
|
176
179
|
args: [PLATFORM_ID]
|
|
177
180
|
}] }] });
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL3N0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFlL0M7O0dBRUc7QUFFSCxNQUFNLE9BQU8sa0JBQWtCO0lBSTdCLFlBQ21ELE1BQWdDLEVBQzVELFVBQWtCO1FBRFUsV0FBTSxHQUFOLE1BQU0sQ0FBMEI7UUFHakYsSUFBSSxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUMvQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsSUFBSSxlQUFlLENBQUM7UUFDNUQsSUFBSSxDQUFDLElBQUksR0FBRztZQUNWLFlBQVksRUFBRSxHQUFHLE1BQU0sY0FBYztZQUNyQyxhQUFhLEVBQUUsR0FBRyxNQUFNLGVBQWU7WUFDdkMsS0FBSyxFQUFFLEdBQUcsTUFBTSxPQUFPO1lBQ3ZCLFdBQVcsRUFBRSxHQUFHLE1BQU0sYUFBYTtZQUNuQyxjQUFjLEVBQUUsR0FBRyxNQUFNLGdCQUFnQjtZQUN6QyxVQUFVLEVBQUUsR0FBRyxNQUFNLFlBQVk7U0FDbEMsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILFNBQVMsQ0FBQyxLQUFzQjtRQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBQzVCLElBQUksQ0FBQztZQUNILFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsS0FBSyxD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Q0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsZUFBZTtRQUNiLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztZQUFFLE9BQU8sSUFBSSxDQUFDO1FBQ2pDLE9BQU8sWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVM7WUFBRSxPQUFPO1FBQzVCLElBQUksQ0FBQztZQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQzFFLENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyx3Q0FBd0MsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1RCxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQ2xDLE9BQU8sQ0FBQyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN4RCxDQUFDOytHQTdLVSxrQkFBa0Isa0JBS1AsbUJBQW1CLDZCQUMvQixXQUFXO21IQU5WLGtCQUFrQixjQURMLE1BQU07OzRGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzswQkFNN0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUI7OzBCQUN0QyxNQUFNOzJCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsLCBQTEFURk9STV9JRCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVkFMVEVDSF9BVVRIX0NPTkZJRyB9IGZyb20gJy4vY29uZmlnJztcbmltcG9ydCB7IFN0b3JlZEF1dGhTdGF0ZSwgR2V0UGVybWlzc2lvbnNSZXNwb25zZSwgVmFsdGVjaEF1dGhDb25maWcgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBDbGF2ZXMgZGUgc3RvcmFnZSBwYXJhIGF1dGVudGljYWNpw7NuLlxuICovXG5pbnRlcmZhY2UgU3RvcmFnZUtleXMge1xuICBBQ0NFU1NfVE9LRU46IHN0cmluZztcbiAgUkVGUkVTSF9UT0tFTjogc3RyaW5nO1xuICBST0xFUzogc3RyaW5nO1xuICBQRVJNSVNTSU9OUzogc3RyaW5nO1xuICBJU19TVVBFUl9BRE1JTjogc3RyaW5nO1xuICBFWFBJUkVTX0FUOiBzdHJpbmc7XG59XG5cbi8qKlxuICogU2VydmljaW8gcGFyYSBwZXJzaXN0ZW5jaWEgZGUgZXN0YWRvIGRlIGF1dGVudGljYWNpw7NuIGVuIGxvY2FsU3RvcmFnZS5cbiAqL1xuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBBdXRoU3RvcmFnZVNlcnZpY2Uge1xuICBwcml2YXRlIGtleXM6IFN0b3JhZ2VLZXlzO1xuICBwcml2YXRlIHJlYWRvbmx5IGlzQnJvd3NlcjogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFZBTFRFQ0hfQVVUSF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBWYWx0ZWNoQXV0aENvbmZpZyB8IG51bGwsXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogT2JqZWN0XG4gICkge1xuICAgIHRoaXMuaXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIocGxhdGZvcm1JZCk7XG4gICAgY29uc3QgcHJlZml4ID0gdGhpcy5jb25maWcuc3RvcmFnZVByZWZpeCB8fCAndmFsdGVjaF9hdXRoXyc7XG4gICAgdGhpcy5rZXlzID0ge1xuICAgICAgQUNDRVNTX1RPS0VOOiBgJHtwcmVmaXh9YWNjZXNzX3Rva2VuYCxcbiAgICAgIFJFRlJFU0hfVE9LRU46IGAke3ByZWZpeH1yZWZyZXNoX3Rva2VuYCxcbiAgICAgIFJPTEVTOiBgJHtwcmVmaXh9cm9sZXNgLFxuICAgICAgUEVSTUlTU0lPTlM6IGAke3ByZWZpeH1wZXJtaXNzaW9uc2AsXG4gICAgICBJU19TVVBFUl9BRE1JTjogYCR7cHJlZml4fWlzX3N1cGVyX2FkbWluYCxcbiAgICAgIEVYUElSRVNfQVQ6IGAke3ByZWZpeH1leHBpcmVzX2F0YCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEd1YXJkYSBlbCBlc3RhZG8gY29tcGxldG8gZGUgYXV0ZW50aWNhY2nDs24uXG4gICAqL1xuICBzYXZlU3RhdGUoc3RhdGU6IFN0b3JlZEF1dGhTdGF0ZSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybjtcbiAgICB0cnkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLkFDQ0VTU19UT0tFTiwgc3RhdGUuYWNjZXNzVG9rZW4pO1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLlJFRlJFU0hfVE9LRU4sIHN0YXRlLnJlZnJlc2hUb2tlbik7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuUk9MRVMsIEpTT04uc3RyaW5naWZ5KHN0YXRlLnJvbGVzKSk7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcbiAgICAgICAgdGhpcy5rZXlzLlBFUk1JU1NJT05TLFxuICAgICAgICBKU09OLnN0cmluZ2lmeShzdGF0ZS5wZXJtaXNzaW9ucylcbiAgICAgICk7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcbiAgICAgICAgdGhpcy5rZXlzLklTX1NVUEVSX0FETUlOLFxuICAgICAgICBTdHJpbmcoc3RhdGUuaXNTdXBlckFkbWluKVxuICAgICAgKTtcbiAgICAgIGlmIChzdGF0ZS5leHBpcmVzQXQpIHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLkVYUElSRVNfQVQsIFN0cmluZyhzdGF0ZS5leHBpcmVzQXQpKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1tWYWx0ZWNoQXV0aF0gRXJyb3IgZ3VhcmRhbmRvIGVzdGFkbyBlbiBzdG9yYWdlOicsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDYXJnYSBlbCBlc3RhZG8gZGUgYXV0ZW50aWNhY2nDs24gZGVzZGUgc3RvcmFnZS5cbiAgICovXG4gIGxvYWRTdGF0ZSgpOiBQYXJ0aWFsPFN0b3JlZEF1dGhTdGF0ZT4ge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybiB7fTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgYWNjZXNzVG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleXMuQUNDRVNTX1RPS0VOKTtcbiAgICAgIGNvbnN0IHJlZnJlc2hUb2tlbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMua2V5cy5SRUZSRVNIX1RPS0VOKTtcbiAgICAgIGNvbnN0IHJvbGVzSnNvbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMua2V5cy5ST0xFUyk7XG4gICAgICBjb25zdCBwZXJtaXNzaW9uc0pzb24gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleXMuUEVSTUlTU0lPTlMpO1xuICAgICAgY29uc3QgaXNTdXBlckFkbWluID1cbiAgICAgICAgbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLklTX1NVUEVSX0FETUlOKSA9PT0gJ3RydWUnO1xuICAgICAgY29uc3QgZXhwaXJlc0F0U3RyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLkVYUElSRVNfQVQpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBhY2Nlc3NUb2tlbjogYWNjZXNzVG9rZW4gfHwgdW5kZWZpbmVkLFxuICAgICAgICByZWZyZXNoVG9rZW46IHJlZnJlc2hUb2tlbiB8fCB1bmRlZmluZWQsXG4gICAgICAgIHJvbGVzOiByb2xlc0pzb24gPyBKU09OLnBhcnNlKHJvbGVzSnNvbikgOiBbXSxcbiAgICAgICAgcGVybWlzc2lvbnM6IHBlcm1pc3Npb25zSnNvbiA/IEpTT04ucGFyc2UocGVybWlzc2lvbnNKc29uKSA6IFtdLFxuICAgICAgICBpc1N1cGVyQWRtaW4sXG4gICAgICAgIGV4cGlyZXNBdDogZXhwaXJlc0F0U3RyID8gTnVtYmVyKGV4cGlyZXNBdFN0cikgOiB1bmRlZmluZWQsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBjYXJnYW5kbyBlc3RhZG8gZGVzZGUgc3RvcmFnZTonLCBlKTtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR3VhcmRhIHNvbG8gZWwgYWNjZXNzIHRva2VuLlxuICAgKi9cbiAgc2F2ZUFjY2Vzc1Rva2VuKHRva2VuOiBzdHJpbmcsIGV4cGlyZXNBdD86IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybjtcbiAgICB0cnkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLkFDQ0VTU19UT0tFTiwgdG9rZW4pO1xuICAgICAgaWYgKGV4cGlyZXNBdCkge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuRVhQSVJFU19BVCwgU3RyaW5nKGV4cGlyZXNBdCkpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBndWFyZGFuZG8gYWNjZXNzIHRva2VuOicsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHdWFyZGEgZWwgcmVmcmVzaCB0b2tlbiAodG9rZW4gcm90YXRpb24pLlxuICAgKi9cbiAgc2F2ZVJlZnJlc2hUb2tlbih0b2tlbjogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzQnJvd3NlcikgcmV0dXJuO1xuICAgIHRyeSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuUkVGUkVTSF9UT0tFTiwgdG9rZW4pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBndWFyZGFuZG8gcmVmcmVzaCB0b2tlbjonLCBlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR3VhcmRhIGxvcyBwZXJtaXNvcyBhY3R1YWxpemFkb3MuXG4gICAqL1xuICBzYXZlUGVybWlzc2lvbnMocmVzcG9uc2U6IEdldFBlcm1pc3Npb25zUmVzcG9uc2UpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNCcm93c2VyKSByZXR1cm47XG4gICAgdHJ5IHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMua2V5cy5ST0xFUywgSlNPTi5zdHJpbmdpZnkocmVzcG9uc2Uucm9sZXMpKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFxuICAgICAgICB0aGlzLmtleXMuUEVSTUlTU0lPTlMsXG4gICAgICAgIEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlLnBlcm1pc3Npb25zKVxuICAgICAgKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKFxuICAgICAgICB0aGlzLmtleXMuSVNfU1VQRVJfQURNSU4sXG4gICAgICAgIFN0cmluZyhyZXNwb25zZS5pc1N1cGVyQWRtaW4pXG4gICAgICApO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBndWFyZGFuZG8gcGVybWlzb3M6JywgZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENhcmdhIGxvcyBwZXJtaXNvcyBkZXNkZSBzdG9yYWdlLlxuICAgKi9cbiAgbG9hZFBlcm1pc3Npb25zKCk6IHtcbiAgICByb2xlczogc3RyaW5nW107XG4gICAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICAgIGlzU3VwZXJBZG1pbjogYm9vbGVhbjtcbiAgfSB7XG4gICAgaWYgKCF0aGlzLmlzQnJvd3Nlcikge1xuICAgICAgcmV0dXJuIHsgcm9sZXM6IFtdLCBwZXJtaXNzaW9uczogW10sIGlzU3VwZXJBZG1pbjogZmFsc2UgfTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJvbGVzSnNvbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMua2V5cy5ST0xFUyk7XG4gICAgICBjb25zdCBwZXJtaXNzaW9uc0pzb24gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleXMuUEVSTUlTU0lPTlMpO1xuICAgICAgY29uc3QgaXNTdXBlckFkbWluID1cbiAgICAgICAgbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLklTX1NVUEVSX0FETUlOKSA9PT0gJ3RydWUnO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICByb2xlczogcm9sZXNKc29uID8gSlNPTi5wYXJzZShyb2xlc0pzb24pIDogW10sXG4gICAgICAgIHBlcm1pc3Npb25zOiBwZXJtaXNzaW9uc0pzb24gPyBKU09OLnBhcnNlKHBlcm1pc3Npb25zSnNvbikgOiBbXSxcbiAgICAgICAgaXNTdXBlckFkbWluLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiB7IHJvbGVzOiBbXSwgcGVybWlzc2lvbnM6IFtdLCBpc1N1cGVyQWRtaW46IGZhbHNlIH07XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE9idGllbmUgZWwgcmVmcmVzaCB0b2tlbi5cbiAgICovXG4gIGdldFJlZnJlc2hUb2tlbigpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBpZiAoIXRoaXMuaXNCcm93c2VyKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLlJFRlJFU0hfVE9LRU4pO1xuICB9XG5cbiAgLyoqXG4gICAqIExpbXBpYSB0b2RvIGVsIGVzdGFkbyBkZSBhdXRlbnRpY2FjacOzbi5cbiAgICovXG4gIGNsZWFyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybjtcbiAgICB0cnkge1xuICAgICAgT2JqZWN0LnZhbHVlcyh0aGlzLmtleXMpLmZvckVhY2goKGtleSkgPT4gbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oa2V5KSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgY29uc29sZS53YXJuKCdbVmFsdGVjaEF1dGhdIEVycm9yIGxpbXBpYW5kbyBzdG9yYWdlOicsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWZXJpZmljYSBzaSBoYXkgZXN0YWRvIGd1YXJkYWRvLlxuICAgKi9cbiAgaGFzU3RvcmVkU3RhdGUoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmlzQnJvd3NlcikgcmV0dXJuIGZhbHNlO1xuICAgIHJldHVybiAhIWxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMua2V5cy5BQ0NFU1NfVE9LRU4pO1xuICB9XG59XG4iXX0=
|
|
181
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9hdXRoL3N0b3JhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7O0FBZS9DOztHQUVHO0FBRUgsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QixZQUNtRCxNQUFnQyxFQUM1RCxVQUFrQjtRQURVLFdBQU0sR0FBTixNQUFNLENBQTBCO1FBR2pGLElBQUksQ0FBQyxTQUFTLEdBQUcsaUJBQWlCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUNoQyxPQUFPLENBQUMsSUFBSSxDQUNWLG1GQUFtRixDQUNwRixDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsYUFBYSxJQUFJLGVBQWUsQ0FBQztRQUM3RCxJQUFJLENBQUMsSUFBSSxHQUFHO1lBQ1YsWUFBWSxFQUFFLEdBQUcsTUFBTSxjQUFjO1lBQ3JDLGFBQWEsRUFBRSxHQUFHLE1BQU0sZUFBZTtZQUN2QyxLQUFLLEVBQUUsR0FBRyxNQUFNLE9BQU87WUFDdkIsV0FBVyxFQUFFLEdBQUcsTUFBTSxhQUFhO1lBQ25DLGNBQWMsRUFBRSxHQUFHLE1BQU0sZ0JBQWdCO1lBQ3pDLFVBQVUsRUFBRSxHQUFHLE1BQU0sWUFBWTtTQUNsQyxDQUFDO0lBQ0osQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUyxDQUFDLEtBQXNC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MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwsIFBMQVRGT1JNX0lELCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFZBTFRFQ0hfQVVUSF9DT05GSUcgfSBmcm9tICcuL2NvbmZpZyc7XG5pbXBvcnQgeyBTdG9yZWRBdXRoU3RhdGUsIEdldFBlcm1pc3Npb25zUmVzcG9uc2UsIFZhbHRlY2hBdXRoQ29uZmlnIH0gZnJvbSAnLi90eXBlcyc7XG5cbi8qKlxuICogQ2xhdmVzIGRlIHN0b3JhZ2UgcGFyYSBhdXRlbnRpY2FjacOzbi5cbiAqL1xuaW50ZXJmYWNlIFN0b3JhZ2VLZXlzIHtcbiAgQUNDRVNTX1RPS0VOOiBzdHJpbmc7XG4gIFJFRlJFU0hfVE9LRU46IHN0cmluZztcbiAgUk9MRVM6IHN0cmluZztcbiAgUEVSTUlTU0lPTlM6IHN0cmluZztcbiAgSVNfU1VQRVJfQURNSU46IHN0cmluZztcbiAgRVhQSVJFU19BVDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFNlcnZpY2lvIHBhcmEgcGVyc2lzdGVuY2lhIGRlIGVzdGFkbyBkZSBhdXRlbnRpY2FjacOzbiBlbiBsb2NhbFN0b3JhZ2UuXG4gKi9cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgQXV0aFN0b3JhZ2VTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBrZXlzOiBTdG9yYWdlS2V5cztcbiAgcHJpdmF0ZSByZWFkb25seSBpc0Jyb3dzZXI6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChWQUxURUNIX0FVVEhfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogVmFsdGVjaEF1dGhDb25maWcgfCBudWxsLFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHBsYXRmb3JtSWQ6IE9iamVjdFxuICApIHtcbiAgICB0aGlzLmlzQnJvd3NlciA9IGlzUGxhdGZvcm1Ccm93c2VyKHBsYXRmb3JtSWQpO1xuICAgIGlmICghdGhpcy5jb25maWcgJiYgaXNEZXZNb2RlKCkpIHtcbiAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgJ1t2YWx0ZWNoLWNvbXBvbmVudHNdIEF1dGhTdG9yYWdlU2VydmljZTogcHJvdmlkZVZhbHRlY2hBdXRoKCkgbm8gZXN0w6EgZW4gbWFpbi50cy4nXG4gICAgICApO1xuICAgIH1cbiAgICBjb25zdCBwcmVmaXggPSB0aGlzLmNvbmZpZz8uc3RvcmFnZVByZWZpeCB8fCAndmFsdGVjaF9hdXRoXyc7XG4gICAgdGhpcy5rZXlzID0ge1xuICAgICAgQUNDRVNTX1RPS0VOOiBgJHtwcmVmaXh9YWNjZXNzX3Rva2VuYCxcbiAgICAgIFJFRlJFU0hfVE9LRU46IGAke3ByZWZpeH1yZWZyZXNoX3Rva2VuYCxcbiAgICAgIFJPTEVTOiBgJHtwcmVmaXh9cm9sZXNgLFxuICAgICAgUEVSTUlTU0lPTlM6IGAke3ByZWZpeH1wZXJtaXNzaW9uc2AsXG4gICAgICBJU19TVVBFUl9BRE1JTjogYCR7cHJlZml4fWlzX3N1cGVyX2FkbWluYCxcbiAgICAgIEVYUElSRVNfQVQ6IGAke3ByZWZpeH1leHBpcmVzX2F0YCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEd1YXJkYSBlbCBlc3RhZG8gY29tcGxldG8gZGUgYXV0ZW50aWNhY2nDs24uXG4gICAqL1xuICBzYXZlU3RhdGUoc3RhdGU6IFN0b3JlZEF1dGhTdGF0ZSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybjtcbiAgICB0cnkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLkFDQ0VTU19UT0tFTiwgc3RhdGUuYWNjZXNzVG9rZW4pO1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLlJFRlJFU0hfVE9LRU4sIHN0YXRlLnJlZnJlc2hUb2tlbik7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuUk9MRVMsIEpTT04uc3RyaW5naWZ5KHN0YXRlLnJvbGVzKSk7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuUEVSTUlTU0lPTlMsIEpTT04uc3RyaW5naWZ5KHN0YXRlLnBlcm1pc3Npb25zKSk7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuSVNfU1VQRVJfQURNSU4sIFN0cmluZyhzdGF0ZS5pc1N1cGVyQWRtaW4pKTtcbiAgICAgIGlmIChzdGF0ZS5leHBpcmVzQXQpIHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLkVYUElSRVNfQVQsIFN0cmluZyhzdGF0ZS5leHBpcmVzQXQpKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1tWYWx0ZWNoQXV0aF0gRXJyb3IgZ3VhcmRhbmRvIGVzdGFkbyBlbiBzdG9yYWdlOicsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDYXJnYSBlbCBlc3RhZG8gZGUgYXV0ZW50aWNhY2nDs24gZGVzZGUgc3RvcmFnZS5cbiAgICovXG4gIGxvYWRTdGF0ZSgpOiBQYXJ0aWFsPFN0b3JlZEF1dGhTdGF0ZT4ge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybiB7fTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgYWNjZXNzVG9rZW4gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleXMuQUNDRVNTX1RPS0VOKTtcbiAgICAgIGNvbnN0IHJlZnJlc2hUb2tlbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMua2V5cy5SRUZSRVNIX1RPS0VOKTtcbiAgICAgIGNvbnN0IHJvbGVzSnNvbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMua2V5cy5ST0xFUyk7XG4gICAgICBjb25zdCBwZXJtaXNzaW9uc0pzb24gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleXMuUEVSTUlTU0lPTlMpO1xuICAgICAgY29uc3QgaXNTdXBlckFkbWluID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLklTX1NVUEVSX0FETUlOKSA9PT0gJ3RydWUnO1xuICAgICAgY29uc3QgZXhwaXJlc0F0U3RyID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLkVYUElSRVNfQVQpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICBhY2Nlc3NUb2tlbjogYWNjZXNzVG9rZW4gfHwgdW5kZWZpbmVkLFxuICAgICAgICByZWZyZXNoVG9rZW46IHJlZnJlc2hUb2tlbiB8fCB1bmRlZmluZWQsXG4gICAgICAgIHJvbGVzOiByb2xlc0pzb24gPyBKU09OLnBhcnNlKHJvbGVzSnNvbikgOiBbXSxcbiAgICAgICAgcGVybWlzc2lvbnM6IHBlcm1pc3Npb25zSnNvbiA/IEpTT04ucGFyc2UocGVybWlzc2lvbnNKc29uKSA6IFtdLFxuICAgICAgICBpc1N1cGVyQWRtaW4sXG4gICAgICAgIGV4cGlyZXNBdDogZXhwaXJlc0F0U3RyID8gTnVtYmVyKGV4cGlyZXNBdFN0cikgOiB1bmRlZmluZWQsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBjYXJnYW5kbyBlc3RhZG8gZGVzZGUgc3RvcmFnZTonLCBlKTtcbiAgICAgIHJldHVybiB7fTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR3VhcmRhIHNvbG8gZWwgYWNjZXNzIHRva2VuLlxuICAgKi9cbiAgc2F2ZUFjY2Vzc1Rva2VuKHRva2VuOiBzdHJpbmcsIGV4cGlyZXNBdD86IG51bWJlcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybjtcbiAgICB0cnkge1xuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5rZXlzLkFDQ0VTU19UT0tFTiwgdG9rZW4pO1xuICAgICAgaWYgKGV4cGlyZXNBdCkge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuRVhQSVJFU19BVCwgU3RyaW5nKGV4cGlyZXNBdCkpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBndWFyZGFuZG8gYWNjZXNzIHRva2VuOicsIGUpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHdWFyZGEgZWwgcmVmcmVzaCB0b2tlbiAodG9rZW4gcm90YXRpb24pLlxuICAgKi9cbiAgc2F2ZVJlZnJlc2hUb2tlbih0b2tlbjogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzQnJvd3NlcikgcmV0dXJuO1xuICAgIHRyeSB7XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmtleXMuUkVGUkVTSF9UT0tFTiwgdG9rZW4pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBndWFyZGFuZG8gcmVmcmVzaCB0b2tlbjonLCBlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR3VhcmRhIGxvcyBwZXJtaXNvcyBhY3R1YWxpemFkb3MuXG4gICAqL1xuICBzYXZlUGVybWlzc2lvbnMocmVzcG9uc2U6IEdldFBlcm1pc3Npb25zUmVzcG9uc2UpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNCcm93c2VyKSByZXR1cm47XG4gICAgdHJ5IHtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMua2V5cy5ST0xFUywgSlNPTi5zdHJpbmdpZnkocmVzcG9uc2Uucm9sZXMpKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMua2V5cy5QRVJNSVNTSU9OUywgSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UucGVybWlzc2lvbnMpKTtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMua2V5cy5JU19TVVBFUl9BRE1JTiwgU3RyaW5nKHJlc3BvbnNlLmlzU3VwZXJBZG1pbikpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBndWFyZGFuZG8gcGVybWlzb3M6JywgZSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENhcmdhIGxvcyBwZXJtaXNvcyBkZXNkZSBzdG9yYWdlLlxuICAgKi9cbiAgbG9hZFBlcm1pc3Npb25zKCk6IHtcbiAgICByb2xlczogc3RyaW5nW107XG4gICAgcGVybWlzc2lvbnM6IHN0cmluZ1tdO1xuICAgIGlzU3VwZXJBZG1pbjogYm9vbGVhbjtcbiAgfSB7XG4gICAgaWYgKCF0aGlzLmlzQnJvd3Nlcikge1xuICAgICAgcmV0dXJuIHsgcm9sZXM6IFtdLCBwZXJtaXNzaW9uczogW10sIGlzU3VwZXJBZG1pbjogZmFsc2UgfTtcbiAgICB9XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJvbGVzSnNvbiA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMua2V5cy5ST0xFUyk7XG4gICAgICBjb25zdCBwZXJtaXNzaW9uc0pzb24gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleXMuUEVSTUlTU0lPTlMpO1xuICAgICAgY29uc3QgaXNTdXBlckFkbWluID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLklTX1NVUEVSX0FETUlOKSA9PT0gJ3RydWUnO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICByb2xlczogcm9sZXNKc29uID8gSlNPTi5wYXJzZShyb2xlc0pzb24pIDogW10sXG4gICAgICAgIHBlcm1pc3Npb25zOiBwZXJtaXNzaW9uc0pzb24gPyBKU09OLnBhcnNlKHBlcm1pc3Npb25zSnNvbikgOiBbXSxcbiAgICAgICAgaXNTdXBlckFkbWluLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiB7IHJvbGVzOiBbXSwgcGVybWlzc2lvbnM6IFtdLCBpc1N1cGVyQWRtaW46IGZhbHNlIH07XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE9idGllbmUgZWwgcmVmcmVzaCB0b2tlbi5cbiAgICovXG4gIGdldFJlZnJlc2hUb2tlbigpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBpZiAoIXRoaXMuaXNCcm93c2VyKSByZXR1cm4gbnVsbDtcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5rZXlzLlJFRlJFU0hfVE9LRU4pO1xuICB9XG5cbiAgLyoqXG4gICAqIExpbXBpYSB0b2RvIGVsIGVzdGFkbyBkZSBhdXRlbnRpY2FjacOzbi5cbiAgICovXG4gIGNsZWFyKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybjtcbiAgICB0cnkge1xuICAgICAgT2JqZWN0LnZhbHVlcyh0aGlzLmtleXMpLmZvckVhY2goa2V5ID0+IGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKGtleSkpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1ZhbHRlY2hBdXRoXSBFcnJvciBsaW1waWFuZG8gc3RvcmFnZTonLCBlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVmVyaWZpY2Egc2kgaGF5IGVzdGFkbyBndWFyZGFkby5cbiAgICovXG4gIGhhc1N0b3JlZFN0YXRlKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5pc0Jyb3dzZXIpIHJldHVybiBmYWxzZTtcbiAgICByZXR1cm4gISFsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmtleXMuQUNDRVNTX1RPS0VOKTtcbiAgfVxufVxuIl19
|