@csmart/ngc-smart-core 1.14.21 → 1.14.23
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/esm2020/lib/smart-auth/smart-selected-offender-resolver.service.mjs +1 -1
- package/esm2020/lib/smart-offender-header/smart-offender-redirect.guard.mjs +8 -2
- package/esm2020/lib/smart-storage/xdm.service.mjs +2 -6
- package/fesm2015/csmart-ngc-smart-core.mjs +10 -6
- package/fesm2015/csmart-ngc-smart-core.mjs.map +1 -1
- package/fesm2020/csmart-ngc-smart-core.mjs +10 -6
- package/fesm2020/csmart-ngc-smart-core.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -55,4 +55,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
55
55
|
providedIn: 'root',
|
|
56
56
|
}]
|
|
57
57
|
}], ctorParameters: function () { return [{ type: i1.XdmService }, { type: i0.NgZone }, { type: i2.Router }]; } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2VsZWN0ZWQtb2ZmZW5kZXItcmVzb2x2ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NzbWFydC9uZ2Mtc21hcnQtY29yZS9zcmMvbGliL3NtYXJ0LWF1dGgvc21hcnQtc2VsZWN0ZWQtb2ZmZW5kZXItcmVzb2x2ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUlMLE1BQU0sR0FDUCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBYyxJQUFJLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFDTCxVQUFVLEVBQ1YsUUFBUSxFQUVSLElBQUksRUFDSixTQUFTLEVBRVQsS0FBSyxHQUNOLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7O0FBSzFELE1BQU0sT0FBTywrQkFBK0I7SUFFMUMsWUFDVSxPQUFtQixFQUNuQixJQUFZLEVBQ1osTUFBYztRQUZkLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFdBQU0sR0FBTixNQUFNLENBQVE7SUFDckIsQ0FBQztJQUNKLE9BQU8sQ0FDTCxLQUE2QixFQUM3QixLQUEwQjtRQUUxQixJQUFJLFVBQVUsR0FBa0IsSUFBSSxDQUFDO1FBQ3JDLElBQUcsS0FBSyxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDM0MsVUFBVSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7U0FDeEQ7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ2xELFFBQVEsQ0FBQyxDQUFDLGdCQUFnQixFQUFFLEVBQUU7WUFDNUIsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2FBQy9CO1lBQ0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUNyQixJQUFHLFVBQVUsRUFBRTtvQkFDYixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsNEJBQTRCLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQzlEO3FCQUNJO29CQUNILE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQztpQkFDN0Q7YUFDRjtZQUNELE9BQU8sRUFBRSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FDbkIsTUFBTSxDQUFDLElBQUk7UUFDVCw4REFBOEQ7UUFDOUQsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUNYLElBQUksQ0FBQyxDQUFDLENBQUMsRUFDUCxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ0osTUFBTSxDQUNKLENBQUMsRUFDRCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQyxDQUM1RSxDQUNKLENBQ0YsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQjs7Ozs7O2NBTUU7WUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUNyQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUU7YUFDbEQsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7K0lBeERVLCtCQUErQjttSkFBL0IsK0JBQStCLGNBRjlCLE1BQU07MkZBRVAsK0JBQStCO2tCQUgzQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgUmVzb2x2ZSxcclxuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxyXG4gIFJvdXRlclN0YXRlU25hcHNob3QsXHJcbiAgUm91dGVyLFxyXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIGZyb20sIG9mLCBFTVBUWSwgdGhyb3dFcnJvciwgY29uY2F0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7XHJcbiAgY2F0Y2hFcnJvcixcclxuICBtZXJnZU1hcCxcclxuICBtYXAsXHJcbiAgdGFrZSxcclxuICByZXRyeVdoZW4sXHJcbiAgdGFwLFxyXG4gIGRlbGF5LFxyXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgU2VsZWN0ZWRPZmZlbmRlciB9IGZyb20gJy4uL3NtYXJ0LXN0b3JhZ2Uvc21hcnQtc3RvcmFnZS1tb2RlbCc7XHJcbmltcG9ydCB7IFhkbVNlcnZpY2UgfSBmcm9tICcuLi9zbWFydC1zdG9yYWdlL3hkbS5zZXJ2aWNlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWxlY3RlZE9mZmVuZGVyUmVzb2x2ZXJTZXJ2aWNlXHJcbiAgaW1wbGVtZW50cyBSZXNvbHZlPFNlbGVjdGVkT2ZmZW5kZXI+IHtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc2VydmljZTogWGRtU2VydmljZSxcclxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxyXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcclxuICApIHt9XHJcbiAgcmVzb2x2ZShcclxuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxyXG4gICAgc3RhdGU6IFJvdXRlclN0YXRlU25hcHNob3QsXHJcbiAgKTogT2JzZXJ2YWJsZTxTZWxlY3RlZE9mZmVuZGVyPiB8IE9ic2VydmFibGU8bmV2ZXI+IHtcclxuICAgIGxldCBvZmZlbmRlcklkOiBudW1iZXIgfCBudWxsID0gbnVsbDtcclxuICAgIGlmKHJvdXRlICYmIHJvdXRlLnF1ZXJ5UGFyYW1zW1wib2ZmZW5kZXJJZFwiXSkge1xyXG4gICAgICBvZmZlbmRlcklkID0gcGFyc2VJbnQocm91dGUucXVlcnlQYXJhbXNbXCJvZmZlbmRlcklkXCJdKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmcm9tKHRoaXMuc2VydmljZS5nZXRTZWxlY3RlZE9mZmVuZGVyKCkpLnBpcGUoXHJcbiAgICAgIG1lcmdlTWFwKChzZWxlY3RlZE9mZmVuZGVyKSA9PiB7XHJcbiAgICAgICAgaWYgKGlzRGV2TW9kZSkge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghc2VsZWN0ZWRPZmZlbmRlcikge1xyXG4gICAgICAgICAgaWYob2ZmZW5kZXJJZCkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLnNldFNlbGVjdGVkT2ZmZW5kZXJGcm9tUm91dGUob2ZmZW5kZXJJZCk7XHJcbiAgICAgICAgICB9IFxyXG4gICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCgpID0+IG5ldyBFcnJvcignTm8gb2ZmZW5kZXIgc2VsZWN0ZWQuJykpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gb2Yoc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICAgIH0pLFxyXG4gICAgICByZXRyeVdoZW4oKGVycm9ycykgPT5cclxuICAgICAgICBlcnJvcnMucGlwZShcclxuICAgICAgICAgIC8vIHRhcCgoKSA9PiBjb25zb2xlLmxvZygnUmV0cnkgZ2V0dGluZyBzZWxlY3RlZCBvZmZlbmRlci4nKSksXHJcbiAgICAgICAgICBkZWxheSgxMDAwKSxcclxuICAgICAgICAgIHRha2UoNSksXHJcbiAgICAgICAgICAobykgPT5cclxuICAgICAgICAgICAgY29uY2F0KFxyXG4gICAgICAgICAgICAgIG8sXHJcbiAgICAgICAgICAgICAgdGhyb3dFcnJvcigoKSA9PiBuZXcgRXJyb3IoJ05vIG9mZmVuZGVyIHNlbGVjdGVkIChmYWlsZWQgYWZ0ZXIgcmV0cmllcykuJykpLFxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICksXHJcbiAgICAgICksXHJcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XHJcbiAgICAgICAgLypcclxuICAgICAgICB0aGlzLnpvbmUucnVuKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3NtYXJ0LWVycm9yJ10sIHtcclxuICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHsgdHlwZTogJ29mZmVuZGVyJywgbWVzc2FnZTogZXJyb3IgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgKi9cclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9zbWFydC1lcnJvciddLCB7XHJcbiAgICAgICAgICBxdWVyeVBhcmFtczogeyB0eXBlOiAnb2ZmZW5kZXInLCBtZXNzYWdlOiBlcnJvciB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBFTVBUWTtcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -9,7 +9,13 @@ export class SmartOffenderRedirectGuard {
|
|
|
9
9
|
canActivate(route, state) {
|
|
10
10
|
const targetRoute = route.data['routeTo'];
|
|
11
11
|
const queryParams = route.parent?.queryParams;
|
|
12
|
-
|
|
12
|
+
const offenderId = route.queryParams['offenderId'];
|
|
13
|
+
const routeTo = route.queryParams['routeTo'];
|
|
14
|
+
if (routeTo && offenderId) {
|
|
15
|
+
this.router.navigate([routeTo], { queryParams: { 'offenderId': offenderId } });
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
else if (targetRoute && queryParams) {
|
|
13
19
|
this.router.navigate([targetRoute], { queryParams: queryParams });
|
|
14
20
|
return false;
|
|
15
21
|
}
|
|
@@ -24,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
24
30
|
providedIn: 'root'
|
|
25
31
|
}]
|
|
26
32
|
}], ctorParameters: function () { return [{ type: i1.Router }]; } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtb2ZmZW5kZXItcmVkaXJlY3QuZ3VhcmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jc21hcnQvbmdjLXNtYXJ0LWNvcmUvc3JjL2xpYi9zbWFydC1vZmZlbmRlci1oZWFkZXIvc21hcnQtb2ZmZW5kZXItcmVkaXJlY3QuZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQTRELE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFLbkcsTUFBTSxPQUFPLDBCQUEwQjtJQUNyQyxZQUFvQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUFHLENBQUM7SUFFdEMsV0FBVyxDQUNULEtBQTZCLEVBQzdCLEtBQTBCO1FBRTFCLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDMUMsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUM7UUFDOUMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNuRCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdDLElBQUksT0FBTyxJQUFJLFVBQVUsRUFBRTtZQUN6QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUMsWUFBWSxFQUFFLFVBQVUsRUFBQyxFQUFFLENBQUMsQ0FBQztZQUM3RSxPQUFPLEtBQUssQ0FBQztTQUNkO2FBQ0ksSUFBSSxXQUFXLElBQUksV0FBVyxFQUFFO1lBQ25DLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUUsRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUNsRSxPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzswSUFwQlUsMEJBQTBCOzhJQUExQiwwQkFBMEIsY0FGekIsTUFBTTsyRkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDYW5BY3RpdmF0ZSwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyU3RhdGVTbmFwc2hvdCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNtYXJ0T2ZmZW5kZXJSZWRpcmVjdEd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHt9XHJcblxyXG4gIGNhbkFjdGl2YXRlKFxyXG4gICAgcm91dGU6IEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXHJcbiAgICBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdFxyXG4gICk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgdGFyZ2V0Um91dGUgPSByb3V0ZS5kYXRhWydyb3V0ZVRvJ107XHJcbiAgICBjb25zdCBxdWVyeVBhcmFtcyA9IHJvdXRlLnBhcmVudD8ucXVlcnlQYXJhbXM7XHJcbiAgICBjb25zdCBvZmZlbmRlcklkID0gcm91dGUucXVlcnlQYXJhbXNbJ29mZmVuZGVySWQnXTtcclxuICAgIGNvbnN0IHJvdXRlVG8gPSByb3V0ZS5xdWVyeVBhcmFtc1sncm91dGVUbyddO1xyXG4gICAgaWYgKHJvdXRlVG8gJiYgb2ZmZW5kZXJJZCkge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbcm91dGVUb10sIHsgcXVlcnlQYXJhbXM6IHsnb2ZmZW5kZXJJZCc6IG9mZmVuZGVySWR9IH0pO1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmICh0YXJnZXRSb3V0ZSAmJiBxdWVyeVBhcmFtcykge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGFyZ2V0Um91dGVdLCB7IHF1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtcyB9KTtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -6,8 +6,6 @@ import { StorageKey, SMART_WEB_STORAGE_LISTENER_URL, SMART_DATA_SERVICE_URL, } f
|
|
|
6
6
|
// import connectToChild from "penpal/lib/connectToChild";
|
|
7
7
|
import { connectToChild } from 'penpal';
|
|
8
8
|
import { HttpClient } from '@angular/common/http';
|
|
9
|
-
import { catchError } from 'rxjs/operators';
|
|
10
|
-
import { throwError } from 'rxjs';
|
|
11
9
|
import * as i0 from "@angular/core";
|
|
12
10
|
import * as i1 from "@angular/common/http";
|
|
13
11
|
export class XdmService {
|
|
@@ -170,12 +168,10 @@ export class XdmService {
|
|
|
170
168
|
}`;
|
|
171
169
|
return this.httpClient.post(this.smartDataServiceUrl, { query: queryString }).pipe(map(({ data }) => data.getSelectedOffender.data));
|
|
172
170
|
}), map(selectedOffender => {
|
|
171
|
+
console.log(selectedOffender);
|
|
173
172
|
this.setSelectedOffender(selectedOffender);
|
|
174
173
|
this.setOffenderQuery({ offenders: [selectedOffender] });
|
|
175
174
|
return selectedOffender;
|
|
176
|
-
}), catchError(error => {
|
|
177
|
-
console.log(error);
|
|
178
|
-
return throwError(() => error);
|
|
179
175
|
}));
|
|
180
176
|
}
|
|
181
177
|
}
|
|
@@ -196,4 +192,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImpor
|
|
|
196
192
|
type: Inject,
|
|
197
193
|
args: [SMART_DATA_SERVICE_URL]
|
|
198
194
|
}] }]; } });
|
|
199
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGRtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jc21hcnQvbmdjLXNtYXJ0LWNvcmUvc3JjL2xpYi9zbWFydC1zdG9yYWdlL3hkbS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFJTCxVQUFVLEVBQ1YsOEJBQThCLEVBQzlCLHNCQUFzQixHQUV2QixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLDBEQUEwRDtBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBS2xDLE1BQU0sT0FBTyxVQUFVO0lBTXJCLFlBQzRCLFFBQWEsRUFFL0IsdUJBQStCLEVBQy9CLFVBQXNCLEVBQ1UsbUJBQW1CO1FBSmpDLGFBQVEsR0FBUixRQUFRLENBQUs7UUFFL0IsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFRO1FBQy9CLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDVSx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQUE7UUFWckQsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBMkIsQ0FBQztRQUN6RCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFxQixDQUFDO1FBQ2hELHlCQUFv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LENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7MEhBaE5VLFVBQVUsa0JBT1gsUUFBUSxhQUNSLDhCQUE4Qix1Q0FHOUIsc0JBQXNCOzhIQVhyQixVQUFVLGNBRlQsTUFBTTsyRkFFUCxVQUFVO2tCQUh0QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUUksTUFBTTsyQkFBQyxRQUFROzswQkFDZixNQUFNOzJCQUFDLDhCQUE4Qjs7MEJBR3JDLE1BQU07MkJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0LCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQge1xyXG4gIFNlbGVjdGVkT2ZmZW5kZXIsXHJcbiAgTG9naW5TdGFmZixcclxuICBPZmZlbmRlclF1ZXJ5LFxyXG4gIFN0b3JhZ2VLZXksXHJcbiAgU01BUlRfV0VCX1NUT1JBR0VfTElTVEVORVJfVVJMLFxyXG4gIFNNQVJUX0RBVEFfU0VSVklDRV9VUkwsXHJcbiAgT3B0aW9uLFxyXG59IGZyb20gJy4vc21hcnQtc3RvcmFnZS1tb2RlbCc7XHJcblxyXG4vLyBpbXBvcnQgY29ubmVjdFRvQ2hpbGQgZnJvbSBcInBlbnBhbC9saWIvY29ubmVjdFRvQ2hpbGRcIjtcclxuaW1wb3J0IHsgY29ubmVjdFRvQ2hpbGQgfSBmcm9tICdwZW5wYWwnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyB0aHJvd0Vycm9yIH0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgWGRtU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBvZmZlbmRlclN1YmplY3QgPSBuZXcgU3ViamVjdDxTZWxlY3RlZE9mZmVuZGVyIHwgdm9pZD4oKTtcclxuICBwcml2YXRlIHN0YWZmU3ViamVjdCA9IG5ldyBTdWJqZWN0PExvZ2luU3RhZmYgfCB2b2lkPigpO1xyXG4gIHByaXZhdGUgb2ZmZW5kZXJRdWVyeVN1YmplY3QgPSBuZXcgU3ViamVjdDxPZmZlbmRlclF1ZXJ5IHwgdm9pZD4oKTtcclxuICBwcml2YXRlIGNvbm5lY3Rpb246IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnksXHJcbiAgICBASW5qZWN0KFNNQVJUX1dFQl9TVE9SQUdFX0xJU1RFTkVSX1VSTClcclxuICAgIHByaXZhdGUgc21hcnRTdG9yYWdlTGlzdGVuZXJVcmw6IHN0cmluZyxcclxuICAgIHByaXZhdGUgaHR0cENsaWVudDogSHR0cENsaWVudCxcclxuICAgIEBJbmplY3QoU01BUlRfREFUQV9TRVJWSUNFX1VSTCkgcHJpdmF0ZSBzbWFydERhdGFTZXJ2aWNlVXJsLFxyXG4gICkge1xyXG4gICAgaWYgKGlzRGV2TW9kZSkge1xyXG4gICAgICBjb25zb2xlLmxvZygnU21hcnRTdG9yYWdlIFhkbVNlcnZpY2UgKENsaWVudCkgLSBjb25zdHJ1Y3RvcigpJyk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmluaXQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IGZyYW1lID0gdGhpcy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpZnJhbWUnKTtcclxuICAgIGZyYW1lLnNyYyA9IHRoaXMuc21hcnRTdG9yYWdlTGlzdGVuZXJVcmw7XHJcbiAgICBmcmFtZS5pZCA9ICdjaGlsZGZyYW1lJztcclxuICAgIGZyYW1lLm5hbWUgPSBNYXRoLnJhbmRvbSgpLnRvU3RyaW5nKCk7XHJcbiAgICBmcmFtZS5vbmxvYWQgPSBudWxsO1xyXG4gICAgZnJhbWUuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xyXG4gICAgdGhpcy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGZyYW1lKTtcclxuXHJcbiAgICB0aGlzLmNvbm5lY3Rpb24gPSBjb25uZWN0VG9DaGlsZCh7XHJcbiAgICAgIGlmcmFtZTogZnJhbWUsXHJcbiAgICAgIGRlYnVnOiBmYWxzZSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoXHJcbiAgICBzdGFmZklkOiBudW1iZXIsXHJcbiAgKTogT2JzZXJ2YWJsZTxBcnJheTxPcHRpb24+PiB7XHJcbiAgICBjb25zdCBxdWVyeVN0cmluZyA9IGB7ZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMoaW5wdXQ6e1xyXG4gICAgICAgIHdoZXJlOntcclxuICAgICAgICAgIHN0YWZmSWQ6ICR7c3RhZmZJZH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pe1xyXG4gICAgICAgIGRhdGF7XHJcbiAgICAgICAgICBvZmZlbmRlckxpc3RPcHRpb25JZFxyXG4gICAgICAgICAgbmFtZVxyXG4gICAgICAgICAgc2VydmljZUFwaUZpZWxkTmFtZVxyXG4gICAgICAgICAgc2VsZWN0ZWRGbGFnXHJcbiAgICAgICAgfVxyXG4gICAgfSB9YDtcclxuICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnRcclxuICAgICAgLnBvc3Q8YW55Pih0aGlzLnNtYXJ0RGF0YVNlcnZpY2VVcmwsIHsgcXVlcnk6IHF1ZXJ5U3RyaW5nIH0pXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IHtcclxuICAgICAgICAgIGRhdGEuZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YVsnb2ZmZW5kZXJPcHRpb25MaXN0SWQnXSA9XHJcbiAgICAgICAgICAgIGRhdGEuZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YVsnb2ZmZW5kZXJMaXN0T3B0aW9uSWQnXTtcclxuICAgICAgICAgIHJldHVybiBkYXRhLmZpbmR2U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zLmRhdGE7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICk7XHJcbiAgICAvKnJldHVybiBvZihbXHJcbiAgICAgIHsgb2ZmZW5kZXJMaXN0T3B0aW9uSWQ6ICdnZW5kZXJDb2RlJywgbmFtZTogJycsIHNlbGVjdGVkRmxhZzogdHJ1ZSB9XSk7Ki9cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyQWxsKCk7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJTdWJqZWN0Lm5leHQoKTtcclxuICAgICAgdGhpcy5zdGFmZlN1YmplY3QubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIE9mZmVuZGVyXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIHB1YmxpYyBzZXRTZWxlY3RlZE9mZmVuZGVyKHNlbGVjdGVkT2ZmZW5kZXI6IFNlbGVjdGVkT2ZmZW5kZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLnNldFNlbGVjdGVkT2ZmZW5kZXIoc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJTdWJqZWN0Lm5leHQoc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmdldExvZ2luU3RhZmYoKS50aGVuKChsb2dpblN0YWZmKSA9PiB7XHJcbiAgICAgIGxldCBub3cgPSAobmV3IERhdGUoKSkudG9JU09TdHJpbmcoKTtcclxuICAgICAgY29uc3QgcXVlcnlTdHJpbmcgPSBgbXV0YXRpb24geyBjcmVhdGVTdGFmZk9mZmVuZGVyQWNjZXNzKGlucHV0OiB7XHJcbiAgICAgICAgc3RhZmZJZDogJHtsb2dpblN0YWZmLnN0YWZmSWR9LFxyXG4gICAgICAgIG9mZmVuZGVySWQ6ICR7c2VsZWN0ZWRPZmZlbmRlci5vZmZlbmRlcklkfSxcclxuICAgICAgICBhY2Nlc3NEYXRlOiBcIiR7bm93fVwiXHJcbiAgICAgIH0pIHtcclxuICAgICAgICBkYXRhIHtcclxuICAgICAgICAgIHN0YWZmT2ZmZW5kZXJBY2Nlc3NJZFxyXG4gICAgICAgIH1cclxuICAgICAgfX1gO1xyXG4gICAgICB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkuc3Vic2NyaWJlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTZWxlY3RlZE9mZmVuZGVyKCk6IFByb21pc2U8U2VsZWN0ZWRPZmZlbmRlcj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PlxyXG4gICAgICBjaGlsZC5nZXRTZWxlY3RlZE9mZmVuZGVyKFN0b3JhZ2VLZXkuc2VsZWN0ZWRPZmZlbmRlciksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyU2VsZWN0ZWRPZmZlbmRlcigpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyU2VsZWN0ZWRPZmZlbmRlcigpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyU3ViamVjdC5uZXh0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPZmZlbmRlclVwZGF0ZSgpOiBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+IHtcclxuICAgIHJldHVybiB0aGlzLm9mZmVuZGVyU3ViamVjdC5hc09ic2VydmFibGUoKSBhcyBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+O1xyXG4gIH1cclxuXHJcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIFN0YWZmXHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICBwdWJsaWMgc2V0TG9naW5TdGFmZihsb2dpblN0YWZmOiBMb2dpblN0YWZmKSB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5zZXRMb2dpblN0YWZmKGxvZ2luU3RhZmYpO1xyXG4gICAgICB0aGlzLnN0YWZmU3ViamVjdC5uZXh0KGxvZ2luU3RhZmYpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0TG9naW5TdGFmZigpOiBQcm9taXNlPExvZ2luU3RhZmY+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT5cclxuICAgICAgY2hpbGQuZ2V0TG9naW5TdGFmZihTdG9yYWdlS2V5LmxvZ2luU3RhZmYpLFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbGVhckxvZ2luU3RhZmYoKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5jbGVhckxvZ2luU3RhZmYoKTtcclxuICAgICAgdGhpcy5zdGFmZlN1YmplY3QubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0U3RhZmZVcGRhdGUoKTogT2JzZXJ2YWJsZTxMb2dpblN0YWZmPiB7XHJcbiAgICByZXR1cm4gdGhpcy5zdGFmZlN1YmplY3QuYXNPYnNlcnZhYmxlKCkgYXMgT2JzZXJ2YWJsZTxMb2dpblN0YWZmPjtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByZWZyZXNoTG9naW5TdGFmZk9wdGlvbnMoKSB7XHJcbiAgICB0aGlzLmdldExvZ2luU3RhZmYoKS50aGVuKChvbGRMb2dpblN0YWZmKSA9PiB7XHJcbiAgICAgIHRoaXMuZ2V0U3RhZmZPZmZlbmRlckxpc3RPcHRpb25zKG9sZExvZ2luU3RhZmYuc3RhZmZJZCkuc3Vic2NyaWJlKFxyXG4gICAgICAgIChvcHRpb25EYXRhKSA9PiB7XHJcbiAgICAgICAgICBjb25zb2xlLmxvZyhvcHRpb25EYXRhKTtcclxuICAgICAgICAgIG9sZExvZ2luU3RhZmYub3B0aW9ucyA9IG9wdGlvbkRhdGE7XHJcbiAgICAgICAgICB0aGlzLnNldExvZ2luU3RhZmYob2xkTG9naW5TdGFmZik7XHJcbiAgICAgICAgfSxcclxuICAgICAgKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG4gICAqIE9mZmVuZGVyIFF1ZXJ5XHJcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cclxuICBwdWJsaWMgc2V0T2ZmZW5kZXJRdWVyeShvZmZlbmRlclF1ZXJ5OiBPZmZlbmRlclF1ZXJ5KSB7XHJcbiAgICB0aGlzLmNvbm5lY3Rpb24ucHJvbWlzZS50aGVuKChjaGlsZCkgPT4ge1xyXG4gICAgICBjaGlsZC5zZXRPZmZlbmRlclF1ZXJ5KG9mZmVuZGVyUXVlcnkpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyUXVlcnlTdWJqZWN0Lm5leHQob2ZmZW5kZXJRdWVyeSk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRPZmZlbmRlclF1ZXJ5KCk6IFByb21pc2U8T2ZmZW5kZXJRdWVyeT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PlxyXG4gICAgICBjaGlsZC5nZXRPZmZlbmRlclF1ZXJ5KFN0b3JhZ2VLZXkub2ZmZW5kZXJRdWVyeSksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyT2ZmZW5kZXJRdWVyeSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyT2ZmZW5kZXJRdWVyeSgpO1xyXG4gICAgICB0aGlzLm9mZmVuZGVyUXVlcnlTdWJqZWN0Lm5leHQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE9mZmVuZGVyUXVlcnlVcGRhdGUoKTogT2JzZXJ2YWJsZTxPZmZlbmRlclF1ZXJ5PiB7XHJcbiAgICByZXR1cm4gdGhpcy5vZmZlbmRlclF1ZXJ5U3ViamVjdC5hc09ic2VydmFibGUoKSBhcyBPYnNlcnZhYmxlPE9mZmVuZGVyUXVlcnk+O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHNldFNlbGVjdGVkT2ZmZW5kZXJGcm9tUm91dGUob2ZmZW5kZXJJZDogbnVtYmVyKTogT2JzZXJ2YWJsZTxTZWxlY3RlZE9mZmVuZGVyPiB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRTdGFmZlVwZGF0ZSgpLnBpcGUoXHJcbiAgICAgIHN3aXRjaE1hcChsb2dpblN0YWZmID0+IHtcclxuICAgICAgICBjb25zdCBxdWVyeVN0cmluZyA9IGB7XHJcbiAgICAgICAgICBnZXRTZWxlY3RlZE9mZmVuZGVyKGlucHV0OiB7IFxyXG4gICAgICAgICAgICBvZmZlbmRlcklkOiAke29mZmVuZGVySWR9LFxyXG4gICAgICAgICAgICBzdGFmZklkOiAke2xvZ2luU3RhZmYuc3RhZmZJZH1cclxuICAgICAgICAgIH0pe1xyXG4gICAgICAgICAgICBkYXRhe1xyXG4gICAgICAgICAgICAgIG9mZmVuZGVySWRcclxuICAgICAgICAgICAgICBuYW1lOiBvZmZlbmRlck5hbWVcclxuICAgICAgICAgICAgICBwZElkXHJcbiAgICAgICAgICAgICAgYmlydGhEYXRlXHJcbiAgICAgICAgICAgICAgZ2VuZGVyXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9YDtcclxuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LnBvc3Q8YW55Pih0aGlzLnNtYXJ0RGF0YVNlcnZpY2VVcmwsIHsgcXVlcnk6IHF1ZXJ5U3RyaW5nIH0pLnBpcGUoXHJcbiAgICAgICAgICBtYXAoKHsgZGF0YSB9KSA9PiBkYXRhLmdldFNlbGVjdGVkT2ZmZW5kZXIuZGF0YSlcclxuICAgICAgICApO1xyXG4gICAgICB9KSxcclxuICAgICAgbWFwKHNlbGVjdGVkT2ZmZW5kZXIgPT4ge1xyXG4gICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRPZmZlbmRlcihzZWxlY3RlZE9mZmVuZGVyKTtcclxuICAgICAgICB0aGlzLnNldE9mZmVuZGVyUXVlcnkoe29mZmVuZGVyczogW3NlbGVjdGVkT2ZmZW5kZXJdfSk7XHJcbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkT2ZmZW5kZXI7XHJcbiAgICAgIH0pLFxyXG4gICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcbn0iXX0=
|
|
195
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGRtLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jc21hcnQvbmdjLXNtYXJ0LWNvcmUvc3JjL2xpYi9zbWFydC1zdG9yYWdlL3hkbS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDM0MsT0FBTyxFQUFFLE9BQU8sRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2hELE9BQU8sRUFJTCxVQUFVLEVBQ1YsOEJBQThCLEVBQzlCLHNCQUFzQixHQUV2QixNQUFNLHVCQUF1QixDQUFDO0FBRS9CLDBEQUEwRDtBQUMxRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBS2xELE1BQU0sT0FBTyxVQUFVO0lBTXJCLFlBQzRCLFFBQWEsRUFFL0IsdUJBQStCLEVBQy9CLFVBQXNCLEVBQ1UsbUJBQW1CO1FBSmpDLGFBQVEsR0FBUixRQUFRLENBQUs7UUFFL0IsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUFRO1FBQy9CLGVBQVUsR0FBVixVQUFVLENBQVk7UUFDVSx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQUE7UUFWckQsb0JBQWUsR0FBRyxJQUFJLE9BQU8sRUFBMkIsQ0FBQztRQUN6RCxpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFxQixDQUFDO1FBQ2hELHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUF3QixDQUFDO1FBVWpFLElBQUksU0FBUyxFQUFFO1lBQ2IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrREFBa0QsQ0FB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QVFJLE1BQU07MkJBQUMsUUFBUTs7MEJBQ2YsTUFBTTsyQkFBQyw4QkFBOEI7OzBCQUdyQyxNQUFNOzJCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHtcclxuICBTZWxlY3RlZE9mZmVuZGVyLFxyXG4gIExvZ2luU3RhZmYsXHJcbiAgT2ZmZW5kZXJRdWVyeSxcclxuICBTdG9yYWdlS2V5LFxyXG4gIFNNQVJUX1dFQl9TVE9SQUdFX0xJU1RFTkVSX1VSTCxcclxuICBTTUFSVF9EQVRBX1NFUlZJQ0VfVVJMLFxyXG4gIE9wdGlvbixcclxufSBmcm9tICcuL3NtYXJ0LXN0b3JhZ2UtbW9kZWwnO1xyXG5cclxuLy8gaW1wb3J0IGNvbm5lY3RUb0NoaWxkIGZyb20gXCJwZW5wYWwvbGliL2Nvbm5lY3RUb0NoaWxkXCI7XHJcbmltcG9ydCB7IGNvbm5lY3RUb0NoaWxkIH0gZnJvbSAncGVucGFsJztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBYZG1TZXJ2aWNlIHtcclxuICBwcml2YXRlIG9mZmVuZGVyU3ViamVjdCA9IG5ldyBTdWJqZWN0PFNlbGVjdGVkT2ZmZW5kZXIgfCB2b2lkPigpO1xyXG4gIHByaXZhdGUgc3RhZmZTdWJqZWN0ID0gbmV3IFN1YmplY3Q8TG9naW5TdGFmZiB8IHZvaWQ+KCk7XHJcbiAgcHJpdmF0ZSBvZmZlbmRlclF1ZXJ5U3ViamVjdCA9IG5ldyBTdWJqZWN0PE9mZmVuZGVyUXVlcnkgfCB2b2lkPigpO1xyXG4gIHByaXZhdGUgY29ubmVjdGlvbjogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgZG9jdW1lbnQ6IGFueSxcclxuICAgIEBJbmplY3QoU01BUlRfV0VCX1NUT1JBR0VfTElTVEVORVJfVVJMKVxyXG4gICAgcHJpdmF0ZSBzbWFydFN0b3JhZ2VMaXN0ZW5lclVybDogc3RyaW5nLFxyXG4gICAgcHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50LFxyXG4gICAgQEluamVjdChTTUFSVF9EQVRBX1NFUlZJQ0VfVVJMKSBwcml2YXRlIHNtYXJ0RGF0YVNlcnZpY2VVcmwsXHJcbiAgKSB7XHJcbiAgICBpZiAoaXNEZXZNb2RlKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdTbWFydFN0b3JhZ2UgWGRtU2VydmljZSAoQ2xpZW50KSAtIGNvbnN0cnVjdG9yKCknKTtcclxuICAgIH1cclxuICAgIHRoaXMuaW5pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgZnJhbWUgPSB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpO1xyXG4gICAgZnJhbWUuc3JjID0gdGhpcy5zbWFydFN0b3JhZ2VMaXN0ZW5lclVybDtcclxuICAgIGZyYW1lLmlkID0gJ2NoaWxkZnJhbWUnO1xyXG4gICAgZnJhbWUubmFtZSA9IE1hdGgucmFuZG9tKCkudG9TdHJpbmcoKTtcclxuICAgIGZyYW1lLm9ubG9hZCA9IG51bGw7XHJcbiAgICBmcmFtZS5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XHJcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWUpO1xyXG5cclxuICAgIHRoaXMuY29ubmVjdGlvbiA9IGNvbm5lY3RUb0NoaWxkKHtcclxuICAgICAgaWZyYW1lOiBmcmFtZSxcclxuICAgICAgZGVidWc6IGZhbHNlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFN0YWZmT2ZmZW5kZXJMaXN0T3B0aW9ucyhcclxuICAgIHN0YWZmSWQ6IG51bWJlcixcclxuICApOiBPYnNlcnZhYmxlPEFycmF5PE9wdGlvbj4+IHtcclxuICAgIGNvbnN0IHF1ZXJ5U3RyaW5nID0gYHtmaW5kdlN0YWZmT2ZmZW5kZXJMaXN0T3B0aW9ucyhpbnB1dDp7XHJcbiAgICAgICAgd2hlcmU6e1xyXG4gICAgICAgICAgc3RhZmZJZDogJHtzdGFmZklkfVxyXG4gICAgICAgIH1cclxuICAgICAgfSl7XHJcbiAgICAgICAgZGF0YXtcclxuICAgICAgICAgIG9mZmVuZGVyTGlzdE9wdGlvbklkXHJcbiAgICAgICAgICBuYW1lXHJcbiAgICAgICAgICBzZXJ2aWNlQXBpRmllbGROYW1lXHJcbiAgICAgICAgICBzZWxlY3RlZEZsYWdcclxuICAgICAgICB9XHJcbiAgICB9IH1gO1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cENsaWVudFxyXG4gICAgICAucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSlcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgbWFwKCh7IGRhdGEgfSkgPT4ge1xyXG4gICAgICAgICAgZGF0YS5maW5kdlN0YWZmT2ZmZW5kZXJMaXN0T3B0aW9ucy5kYXRhWydvZmZlbmRlck9wdGlvbkxpc3RJZCddID1cclxuICAgICAgICAgICAgZGF0YS5maW5kdlN0YWZmT2ZmZW5kZXJMaXN0T3B0aW9ucy5kYXRhWydvZmZlbmRlckxpc3RPcHRpb25JZCddO1xyXG4gICAgICAgICAgcmV0dXJuIGRhdGEuZmluZHZTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMuZGF0YTtcclxuICAgICAgICB9KSxcclxuICAgICAgKTtcclxuICAgIC8qcmV0dXJuIG9mKFtcclxuICAgICAgeyBvZmZlbmRlckxpc3RPcHRpb25JZDogJ2dlbmRlckNvZGUnLCBuYW1lOiAnJywgc2VsZWN0ZWRGbGFnOiB0cnVlIH1dKTsqL1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyQWxsKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25uZWN0aW9uLnByb21pc2UudGhlbigoY2hpbGQpID0+IHtcclxuICAgICAgY2hpbGQuY2xlYXJBbGwoKTtcclxuICAgICAgdGhpcy5vZmZlbmRlclN1YmplY3QubmV4dCgpO1xyXG4gICAgICB0aGlzLnN0YWZmU3ViamVjdC5uZXh0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICogT2ZmZW5kZXJcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXHJcbiAgcHVibGljIHNldFNlbGVjdGVkT2ZmZW5kZXIoc2VsZWN0ZWRPZmZlbmRlcjogU2VsZWN0ZWRPZmZlbmRlcik6IHZvaWQge1xyXG4gICAgdGhpcy5jb25uZWN0aW9uLnByb21pc2UudGhlbigoY2hpbGQpID0+IHtcclxuICAgICAgY2hpbGQuc2V0U2VsZWN0ZWRPZmZlbmRlcihzZWxlY3RlZE9mZmVuZGVyKTtcclxuICAgICAgdGhpcy5vZmZlbmRlclN1YmplY3QubmV4dChzZWxlY3RlZE9mZmVuZGVyKTtcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMuZ2V0TG9naW5TdGFmZigpLnRoZW4oKGxvZ2luU3RhZmYpID0+IHtcclxuICAgICAgbGV0IG5vdyA9IChuZXcgRGF0ZSgpKS50b0lTT1N0cmluZygpO1xyXG4gICAgICBjb25zdCBxdWVyeVN0cmluZyA9IGBtdXRhdGlvbiB7IGNyZWF0ZVN0YWZmT2ZmZW5kZXJBY2Nlc3MoaW5wdXQ6IHtcclxuICAgICAgICBzdGFmZklkOiAke2xvZ2luU3RhZmYuc3RhZmZJZH0sXHJcbiAgICAgICAgb2ZmZW5kZXJJZDogJHtzZWxlY3RlZE9mZmVuZGVyLm9mZmVuZGVySWR9LFxyXG4gICAgICAgIGFjY2Vzc0RhdGU6IFwiJHtub3d9XCJcclxuICAgICAgfSkge1xyXG4gICAgICAgIGRhdGEge1xyXG4gICAgICAgICAgc3RhZmZPZmZlbmRlckFjY2Vzc0lkXHJcbiAgICAgICAgfVxyXG4gICAgICB9fWA7XHJcbiAgICAgIHRoaXMuaHR0cENsaWVudC5wb3N0PGFueT4odGhpcy5zbWFydERhdGFTZXJ2aWNlVXJsLCB7IHF1ZXJ5OiBxdWVyeVN0cmluZyB9KS5zdWJzY3JpYmUoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFNlbGVjdGVkT2ZmZW5kZXIoKTogUHJvbWlzZTxTZWxlY3RlZE9mZmVuZGVyPiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25uZWN0aW9uLnByb21pc2UudGhlbigoY2hpbGQpID0+XHJcbiAgICAgIGNoaWxkLmdldFNlbGVjdGVkT2ZmZW5kZXIoU3RvcmFnZUtleS5zZWxlY3RlZE9mZmVuZGVyKSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xlYXJTZWxlY3RlZE9mZmVuZGVyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25uZWN0aW9uLnByb21pc2UudGhlbigoY2hpbGQpID0+IHtcclxuICAgICAgY2hpbGQuY2xlYXJTZWxlY3RlZE9mZmVuZGVyKCk7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJTdWJqZWN0Lm5leHQoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE9mZmVuZGVyVXBkYXRlKCk6IE9ic2VydmFibGU8U2VsZWN0ZWRPZmZlbmRlcj4ge1xyXG4gICAgcmV0dXJuIHRoaXMub2ZmZW5kZXJTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpIGFzIE9ic2VydmFibGU8U2VsZWN0ZWRPZmZlbmRlcj47XHJcbiAgfVxyXG5cclxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICogU3RhZmZcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIHB1YmxpYyBzZXRMb2dpblN0YWZmKGxvZ2luU3RhZmY6IExvZ2luU3RhZmYpIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLnNldExvZ2luU3RhZmYobG9naW5TdGFmZik7XHJcbiAgICAgIHRoaXMuc3RhZmZTdWJqZWN0Lm5leHQobG9naW5TdGFmZik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRMb2dpblN0YWZmKCk6IFByb21pc2U8TG9naW5TdGFmZj4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PlxyXG4gICAgICBjaGlsZC5nZXRMb2dpblN0YWZmKFN0b3JhZ2VLZXkubG9naW5TdGFmZiksXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsZWFyTG9naW5TdGFmZigpOiB2b2lkIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLmNsZWFyTG9naW5TdGFmZigpO1xyXG4gICAgICB0aGlzLnN0YWZmU3ViamVjdC5uZXh0KCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRTdGFmZlVwZGF0ZSgpOiBPYnNlcnZhYmxlPExvZ2luU3RhZmY+IHtcclxuICAgIHJldHVybiB0aGlzLnN0YWZmU3ViamVjdC5hc09ic2VydmFibGUoKSBhcyBPYnNlcnZhYmxlPExvZ2luU3RhZmY+O1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJlZnJlc2hMb2dpblN0YWZmT3B0aW9ucygpIHtcclxuICAgIHRoaXMuZ2V0TG9naW5TdGFmZigpLnRoZW4oKG9sZExvZ2luU3RhZmYpID0+IHtcclxuICAgICAgdGhpcy5nZXRTdGFmZk9mZmVuZGVyTGlzdE9wdGlvbnMob2xkTG9naW5TdGFmZi5zdGFmZklkKS5zdWJzY3JpYmUoXHJcbiAgICAgICAgKG9wdGlvbkRhdGEpID0+IHtcclxuICAgICAgICAgIGNvbnNvbGUubG9nKG9wdGlvbkRhdGEpO1xyXG4gICAgICAgICAgb2xkTG9naW5TdGFmZi5vcHRpb25zID0gb3B0aW9uRGF0YTtcclxuICAgICAgICAgIHRoaXMuc2V0TG9naW5TdGFmZihvbGRMb2dpblN0YWZmKTtcclxuICAgICAgICB9LFxyXG4gICAgICApO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXHJcbiAgICogT2ZmZW5kZXIgUXVlcnlcclxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xyXG4gIHB1YmxpYyBzZXRPZmZlbmRlclF1ZXJ5KG9mZmVuZGVyUXVlcnk6IE9mZmVuZGVyUXVlcnkpIHtcclxuICAgIHRoaXMuY29ubmVjdGlvbi5wcm9taXNlLnRoZW4oKGNoaWxkKSA9PiB7XHJcbiAgICAgIGNoaWxkLnNldE9mZmVuZGVyUXVlcnkob2ZmZW5kZXJRdWVyeSk7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJRdWVyeVN1YmplY3QubmV4dChvZmZlbmRlclF1ZXJ5KTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldE9mZmVuZGVyUXVlcnkoKTogUHJvbWlzZTxPZmZlbmRlclF1ZXJ5PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25uZWN0aW9uLnByb21pc2UudGhlbigoY2hpbGQpID0+XHJcbiAgICAgIGNoaWxkLmdldE9mZmVuZGVyUXVlcnkoU3RvcmFnZUtleS5vZmZlbmRlclF1ZXJ5KSxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xlYXJPZmZlbmRlclF1ZXJ5KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb25uZWN0aW9uLnByb21pc2UudGhlbigoY2hpbGQpID0+IHtcclxuICAgICAgY2hpbGQuY2xlYXJPZmZlbmRlclF1ZXJ5KCk7XHJcbiAgICAgIHRoaXMub2ZmZW5kZXJRdWVyeVN1YmplY3QubmV4dCgpO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0T2ZmZW5kZXJRdWVyeVVwZGF0ZSgpOiBPYnNlcnZhYmxlPE9mZmVuZGVyUXVlcnk+IHtcclxuICAgIHJldHVybiB0aGlzLm9mZmVuZGVyUXVlcnlTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpIGFzIE9ic2VydmFibGU8T2ZmZW5kZXJRdWVyeT47XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0U2VsZWN0ZWRPZmZlbmRlckZyb21Sb3V0ZShvZmZlbmRlcklkOiBudW1iZXIpOiBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+IHtcclxuICAgIHJldHVybiB0aGlzLmdldFN0YWZmVXBkYXRlKCkucGlwZShcclxuICAgICAgc3dpdGNoTWFwKGxvZ2luU3RhZmYgPT4ge1xyXG4gICAgICAgIGNvbnN0IHF1ZXJ5U3RyaW5nID0gYHtcclxuICAgICAgICAgIGdldFNlbGVjdGVkT2ZmZW5kZXIoaW5wdXQ6IHsgXHJcbiAgICAgICAgICAgIG9mZmVuZGVySWQ6ICR7b2ZmZW5kZXJJZH0sXHJcbiAgICAgICAgICAgIHN0YWZmSWQ6ICR7bG9naW5TdGFmZi5zdGFmZklkfVxyXG4gICAgICAgICAgfSl7XHJcbiAgICAgICAgICAgIGRhdGF7XHJcbiAgICAgICAgICAgICAgb2ZmZW5kZXJJZFxyXG4gICAgICAgICAgICAgIG5hbWU6IG9mZmVuZGVyTmFtZVxyXG4gICAgICAgICAgICAgIHBkSWRcclxuICAgICAgICAgICAgICBiaXJ0aERhdGVcclxuICAgICAgICAgICAgICBnZW5kZXJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1gO1xyXG4gICAgICAgIHJldHVybiB0aGlzLmh0dHBDbGllbnQucG9zdDxhbnk+KHRoaXMuc21hcnREYXRhU2VydmljZVVybCwgeyBxdWVyeTogcXVlcnlTdHJpbmcgfSkucGlwZShcclxuICAgICAgICAgIG1hcCgoeyBkYXRhIH0pID0+IGRhdGEuZ2V0U2VsZWN0ZWRPZmZlbmRlci5kYXRhKVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pLFxyXG4gICAgICBtYXAoc2VsZWN0ZWRPZmZlbmRlciA9PiB7XHJcbiAgICAgICAgY29uc29sZS5sb2coc2VsZWN0ZWRPZmZlbmRlcik7XHJcbiAgICAgICAgdGhpcy5zZXRTZWxlY3RlZE9mZmVuZGVyKHNlbGVjdGVkT2ZmZW5kZXIpO1xyXG4gICAgICAgIHRoaXMuc2V0T2ZmZW5kZXJRdWVyeSh7b2ZmZW5kZXJzOiBbc2VsZWN0ZWRPZmZlbmRlcl19KTtcclxuICAgICAgICByZXR1cm4gc2VsZWN0ZWRPZmZlbmRlcjtcclxuICAgICAgfSlcclxuICAgICk7XHJcbiAgfVxyXG59Il19
|
|
@@ -19,8 +19,8 @@ import * as i1 from '@angular/common/http';
|
|
|
19
19
|
import { HttpHeaders, HttpClientModule } from '@angular/common/http';
|
|
20
20
|
import * as i8$1 from '@angular/forms';
|
|
21
21
|
import { UntypedFormControl, UntypedFormGroup, ReactiveFormsModule } from '@angular/forms';
|
|
22
|
-
import { Subject,
|
|
23
|
-
import { map, switchMap,
|
|
22
|
+
import { Subject, of, from, lastValueFrom, throwError, EMPTY, concat } from 'rxjs';
|
|
23
|
+
import { map, switchMap, take, catchError, mergeMap, retryWhen, delay } from 'rxjs/operators';
|
|
24
24
|
import { connectToChild } from 'penpal';
|
|
25
25
|
import * as i2 from '@azure/msal-angular';
|
|
26
26
|
import * as i2$1 from '@angular/router';
|
|
@@ -217,12 +217,10 @@ class XdmService {
|
|
|
217
217
|
}`;
|
|
218
218
|
return this.httpClient.post(this.smartDataServiceUrl, { query: queryString }).pipe(map(({ data }) => data.getSelectedOffender.data));
|
|
219
219
|
}), map(selectedOffender => {
|
|
220
|
+
console.log(selectedOffender);
|
|
220
221
|
this.setSelectedOffender(selectedOffender);
|
|
221
222
|
this.setOffenderQuery({ offenders: [selectedOffender] });
|
|
222
223
|
return selectedOffender;
|
|
223
|
-
}), catchError(error => {
|
|
224
|
-
console.log(error);
|
|
225
|
-
return throwError(() => error);
|
|
226
224
|
}));
|
|
227
225
|
}
|
|
228
226
|
}
|
|
@@ -1422,7 +1420,13 @@ class SmartOffenderRedirectGuard {
|
|
|
1422
1420
|
var _a;
|
|
1423
1421
|
const targetRoute = route.data['routeTo'];
|
|
1424
1422
|
const queryParams = (_a = route.parent) === null || _a === void 0 ? void 0 : _a.queryParams;
|
|
1425
|
-
|
|
1423
|
+
const offenderId = route.queryParams['offenderId'];
|
|
1424
|
+
const routeTo = route.queryParams['routeTo'];
|
|
1425
|
+
if (routeTo && offenderId) {
|
|
1426
|
+
this.router.navigate([routeTo], { queryParams: { 'offenderId': offenderId } });
|
|
1427
|
+
return false;
|
|
1428
|
+
}
|
|
1429
|
+
else if (targetRoute && queryParams) {
|
|
1426
1430
|
this.router.navigate([targetRoute], { queryParams: queryParams });
|
|
1427
1431
|
return false;
|
|
1428
1432
|
}
|