@csmart/ngc-smart-core 1.13.19 → 1.13.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -24
- package/csmart-ngc-smart-core.d.ts +5 -5
- package/esm2020/csmart-ngc-smart-core.mjs +4 -4
- package/esm2020/lib/ngc-smart-core.module.mjs +97 -97
- package/esm2020/lib/smart-auth/smart-access-control-config.mjs +12 -12
- package/esm2020/lib/smart-auth/smart-access-control.directive.mjs +39 -40
- package/esm2020/lib/smart-auth/smart-auth.service.mjs +505 -505
- package/esm2020/lib/smart-auth/smart-authorization-guard.service.mjs +35 -35
- package/esm2020/lib/smart-auth/smart-error.component.mjs +37 -37
- package/esm2020/lib/smart-auth/smart-login-staff-resolver.service.mjs +59 -59
- package/esm2020/lib/smart-auth/smart-selected-offender-resolver.service.mjs +49 -49
- package/esm2020/lib/smart-navbar/smart-navbar-config.mjs +2 -2
- package/esm2020/lib/smart-navbar/smart-navbar.component.mjs +167 -167
- package/esm2020/lib/smart-navbar/smart-navbar.service.mjs +63 -63
- package/esm2020/lib/smart-offender-header/smart-offender-header.component.mjs +151 -151
- package/esm2020/lib/smart-offender-header/smart-offender-header.service.mjs +41 -41
- package/esm2020/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.mjs +25 -25
- package/esm2020/lib/smart-staff-offender-options/smart-staff-offender-options.component.mjs +78 -78
- package/esm2020/lib/smart-staff-offender-options/smart-staff-offender-options.service.mjs +132 -132
- package/esm2020/lib/smart-storage/smart-storage-model.mjs +30 -30
- package/esm2020/lib/smart-storage/xdm.service.mjs +171 -158
- package/esm2020/public-api.mjs +20 -20
- package/fesm2015/csmart-ngc-smart-core.mjs +1530 -1518
- package/fesm2015/csmart-ngc-smart-core.mjs.map +1 -1
- package/fesm2020/csmart-ngc-smart-core.mjs +1516 -1504
- package/fesm2020/csmart-ngc-smart-core.mjs.map +1 -1
- package/lib/ngc-smart-core.module.d.ts +20 -20
- package/lib/smart-auth/smart-access-control-config.d.ts +17 -17
- package/lib/smart-auth/smart-access-control.directive.d.ts +14 -14
- package/lib/smart-auth/smart-auth.service.d.ts +41 -41
- package/lib/smart-auth/smart-authorization-guard.service.d.ts +13 -13
- package/lib/smart-auth/smart-error.component.d.ts +17 -17
- package/lib/smart-auth/smart-login-staff-resolver.service.d.ts +13 -13
- package/lib/smart-auth/smart-selected-offender-resolver.service.d.ts +15 -15
- package/lib/smart-navbar/smart-navbar-config.d.ts +7 -7
- package/lib/smart-navbar/smart-navbar.component.d.ts +40 -40
- package/lib/smart-navbar/smart-navbar.service.d.ts +12 -12
- package/lib/smart-offender-header/smart-offender-header.component.d.ts +32 -32
- package/lib/smart-offender-header/smart-offender-header.service.d.ts +18 -18
- package/lib/smart-staff-offender-options/smart-staff-offender-options-resolver.service.d.ts +11 -11
- package/lib/smart-staff-offender-options/smart-staff-offender-options.component.d.ts +22 -22
- package/lib/smart-staff-offender-options/smart-staff-offender-options.service.d.ts +19 -19
- package/lib/smart-storage/smart-storage-model.d.ts +58 -58
- package/lib/smart-storage/xdm.service.d.ts +42 -42
- package/package.json +1 -1
- package/public-api.d.ts +16 -16
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
// smart-authorization.service
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { take, mergeMap, catchError } from 'rxjs/operators';
|
|
4
|
-
import { of } from 'rxjs';
|
|
5
|
-
import { SmartAuthService } from './smart-auth.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "./smart-auth.service";
|
|
8
|
-
export class SmartAuthorizationGuard {
|
|
9
|
-
constructor(authnService) {
|
|
10
|
-
this.authnService = authnService;
|
|
11
|
-
}
|
|
12
|
-
canActivate(route) {
|
|
13
|
-
return this.authnService.getLoginStaff().pipe(take(1), mergeMap((loginStaff) => {
|
|
14
|
-
if (!loginStaff || !route || !route.routeConfig) {
|
|
15
|
-
return of(false);
|
|
16
|
-
}
|
|
17
|
-
// if (!this.authnService.isAuthEnable(loginStaff.roles, null)) {
|
|
18
|
-
// return of(true);
|
|
19
|
-
// }
|
|
20
|
-
const resource = route.routeConfig.path
|
|
21
|
-
? route.routeConfig.path.split('/')[0]
|
|
22
|
-
: '';
|
|
23
|
-
const isFeatureValid = this.authnService.canAppFeatureActivate(loginStaff, resource);
|
|
24
|
-
return of(isFeatureValid);
|
|
25
|
-
}), catchError((error) => {
|
|
26
|
-
return of(false);
|
|
27
|
-
}));
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
/** @nocollapse */ /** @nocollapse */ SmartAuthorizationGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartAuthorizationGuard, deps: [{ token: i1.SmartAuthService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
-
/** @nocollapse */ /** @nocollapse */ SmartAuthorizationGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartAuthorizationGuard });
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartAuthorizationGuard, decorators: [{
|
|
33
|
-
type: Injectable
|
|
34
|
-
}], ctorParameters: function () { return [{ type: i1.SmartAuthService }]; } });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
// smart-authorization.service
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { take, mergeMap, catchError } from 'rxjs/operators';
|
|
4
|
+
import { of } from 'rxjs';
|
|
5
|
+
import { SmartAuthService } from './smart-auth.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "./smart-auth.service";
|
|
8
|
+
export class SmartAuthorizationGuard {
|
|
9
|
+
constructor(authnService) {
|
|
10
|
+
this.authnService = authnService;
|
|
11
|
+
}
|
|
12
|
+
canActivate(route) {
|
|
13
|
+
return this.authnService.getLoginStaff().pipe(take(1), mergeMap((loginStaff) => {
|
|
14
|
+
if (!loginStaff || !route || !route.routeConfig) {
|
|
15
|
+
return of(false);
|
|
16
|
+
}
|
|
17
|
+
// if (!this.authnService.isAuthEnable(loginStaff.roles, null)) {
|
|
18
|
+
// return of(true);
|
|
19
|
+
// }
|
|
20
|
+
const resource = route.routeConfig.path
|
|
21
|
+
? route.routeConfig.path.split('/')[0]
|
|
22
|
+
: '';
|
|
23
|
+
const isFeatureValid = this.authnService.canAppFeatureActivate(loginStaff, resource);
|
|
24
|
+
return of(isFeatureValid);
|
|
25
|
+
}), catchError((error) => {
|
|
26
|
+
return of(false);
|
|
27
|
+
}));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/** @nocollapse */ /** @nocollapse */ SmartAuthorizationGuard.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartAuthorizationGuard, deps: [{ token: i1.SmartAuthService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
31
|
+
/** @nocollapse */ /** @nocollapse */ SmartAuthorizationGuard.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartAuthorizationGuard });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartAuthorizationGuard, decorators: [{
|
|
33
|
+
type: Injectable
|
|
34
|
+
}], ctorParameters: function () { return [{ type: i1.SmartAuthService }]; } });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtYXV0aG9yaXphdGlvbi1ndWFyZC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3NtYXJ0L25nYy1zbWFydC1jb3JlL3NyYy9saWIvc21hcnQtYXV0aC9zbWFydC1hdXRob3JpemF0aW9uLWd1YXJkLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsOEJBQThCO0FBQzlCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFPM0MsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLEVBQUUsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUV0QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7O0FBR3hELE1BQU0sT0FBTyx1QkFBdUI7SUFHbEMsWUFBbUIsWUFBOEI7UUFBOUIsaUJBQVksR0FBWixZQUFZLENBQWtCO0lBQUksQ0FBQztJQUV0RCxXQUFXLENBQUMsS0FBNkI7UUFDdkMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FDM0MsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFFBQVEsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFO2dCQUMvQyxPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUNsQjtZQUNELGlFQUFpRTtZQUNqRSxxQkFBcUI7WUFDckIsSUFBSTtZQUNKLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSTtnQkFDckMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ3RDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDUCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUM1RCxVQUFVLEVBQ1YsUUFBUSxDQUNULENBQUM7WUFDRixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM1QixDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixPQUFPLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7MEpBNUJVLHVCQUF1Qjs4SkFBdkIsdUJBQXVCOzJGQUF2Qix1QkFBdUI7a0JBRG5DLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBzbWFydC1hdXRob3JpemF0aW9uLnNlcnZpY2VcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENhbkFjdGl2YXRlLFxuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IHRha2UsIG1lcmdlTWFwLCBjYXRjaEVycm9yIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgb2YsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvZ2luU3RhZmYgfSBmcm9tICcuLi9zbWFydC1zdG9yYWdlL3NtYXJ0LXN0b3JhZ2UtbW9kZWwnO1xuaW1wb3J0IHsgU21hcnRBdXRoU2VydmljZSB9IGZyb20gJy4vc21hcnQtYXV0aC5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNtYXJ0QXV0aG9yaXphdGlvbkd1YXJkIGltcGxlbWVudHMgQ2FuQWN0aXZhdGUge1xuICBsb2dpblN0YWZmOiBMb2dpblN0YWZmO1xuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBhdXRoblNlcnZpY2U6IFNtYXJ0QXV0aFNlcnZpY2UpIHsgfVxuXG4gIGNhbkFjdGl2YXRlKHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90KSB7XG4gICAgcmV0dXJuIHRoaXMuYXV0aG5TZXJ2aWNlLmdldExvZ2luU3RhZmYoKS5waXBlKFxuICAgICAgdGFrZSgxKSxcbiAgICAgIG1lcmdlTWFwKChsb2dpblN0YWZmKSA9PiB7XG4gICAgICAgIGlmICghbG9naW5TdGFmZiB8fCAhcm91dGUgfHwgIXJvdXRlLnJvdXRlQ29uZmlnKSB7XG4gICAgICAgICAgcmV0dXJuIG9mKGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICAvLyBpZiAoIXRoaXMuYXV0aG5TZXJ2aWNlLmlzQXV0aEVuYWJsZShsb2dpblN0YWZmLnJvbGVzLCBudWxsKSkge1xuICAgICAgICAvLyAgIHJldHVybiBvZih0cnVlKTtcbiAgICAgICAgLy8gfVxuICAgICAgICBjb25zdCByZXNvdXJjZSA9IHJvdXRlLnJvdXRlQ29uZmlnLnBhdGhcbiAgICAgICAgICA/IHJvdXRlLnJvdXRlQ29uZmlnLnBhdGguc3BsaXQoJy8nKVswXVxuICAgICAgICAgIDogJyc7XG4gICAgICAgIGNvbnN0IGlzRmVhdHVyZVZhbGlkID0gdGhpcy5hdXRoblNlcnZpY2UuY2FuQXBwRmVhdHVyZUFjdGl2YXRlKFxuICAgICAgICAgIGxvZ2luU3RhZmYsXG4gICAgICAgICAgcmVzb3VyY2UsXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBvZihpc0ZlYXR1cmVWYWxpZCk7XG4gICAgICB9KSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XG4gICAgICAgIHJldHVybiBvZihmYWxzZSk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
import { Component, Inject } from '@angular/core';
|
|
2
|
-
// import { SmartAuthService } from './smart-auth.service';
|
|
3
|
-
import { MsalService } from '@azure/msal-angular';
|
|
4
|
-
import { ActivatedRoute } from '@angular/router';
|
|
5
|
-
import { SMART_WEB_PORTAL_URL } from '../smart-storage/smart-storage-model';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "@azure/msal-angular";
|
|
8
|
-
import * as i2 from "@angular/router";
|
|
9
|
-
import * as i3 from "@angular/common";
|
|
10
|
-
export class SmartErrorComponent {
|
|
11
|
-
constructor(authnService, route, smartWebPortalUrl) {
|
|
12
|
-
this.authnService = authnService;
|
|
13
|
-
this.route = route;
|
|
14
|
-
this.smartWebPortalUrl = smartWebPortalUrl;
|
|
15
|
-
}
|
|
16
|
-
ngOnInit() {
|
|
17
|
-
this.type = this.route.snapshot.queryParamMap.get('type') || 'staff';
|
|
18
|
-
this.message =
|
|
19
|
-
this.route.snapshot.queryParamMap.get('message') || 'Error occured.';
|
|
20
|
-
}
|
|
21
|
-
logout() {
|
|
22
|
-
this.authnService.logout();
|
|
23
|
-
}
|
|
24
|
-
portal() {
|
|
25
|
-
window.location.href = this.smartWebPortalUrl;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
/** @nocollapse */ /** @nocollapse */ SmartErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartErrorComponent, deps: [{ token: i1.MsalService }, { token: i2.ActivatedRoute }, { token: SMART_WEB_PORTAL_URL }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
/** @nocollapse */ /** @nocollapse */ SmartErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: SmartErrorComponent, selector: "app-smart-error", ngImport: i0, template: "<div>\
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartErrorComponent, decorators: [{
|
|
31
|
-
type: Component,
|
|
32
|
-
args: [{ selector: 'app-smart-error', template: "<div>\
|
|
33
|
-
}], ctorParameters: function () { return [{ type: i1.MsalService }, { type: i2.ActivatedRoute }, { type: undefined, decorators: [{
|
|
34
|
-
type: Inject,
|
|
35
|
-
args: [SMART_WEB_PORTAL_URL]
|
|
36
|
-
}] }]; } });
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
// import { SmartAuthService } from './smart-auth.service';
|
|
3
|
+
import { MsalService } from '@azure/msal-angular';
|
|
4
|
+
import { ActivatedRoute } from '@angular/router';
|
|
5
|
+
import { SMART_WEB_PORTAL_URL } from '../smart-storage/smart-storage-model';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@azure/msal-angular";
|
|
8
|
+
import * as i2 from "@angular/router";
|
|
9
|
+
import * as i3 from "@angular/common";
|
|
10
|
+
export class SmartErrorComponent {
|
|
11
|
+
constructor(authnService, route, smartWebPortalUrl) {
|
|
12
|
+
this.authnService = authnService;
|
|
13
|
+
this.route = route;
|
|
14
|
+
this.smartWebPortalUrl = smartWebPortalUrl;
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() {
|
|
17
|
+
this.type = this.route.snapshot.queryParamMap.get('type') || 'staff';
|
|
18
|
+
this.message =
|
|
19
|
+
this.route.snapshot.queryParamMap.get('message') || 'Error occured.';
|
|
20
|
+
}
|
|
21
|
+
logout() {
|
|
22
|
+
this.authnService.logout();
|
|
23
|
+
}
|
|
24
|
+
portal() {
|
|
25
|
+
window.location.href = this.smartWebPortalUrl;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
/** @nocollapse */ /** @nocollapse */ SmartErrorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartErrorComponent, deps: [{ token: i1.MsalService }, { token: i2.ActivatedRoute }, { token: SMART_WEB_PORTAL_URL }], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
+
/** @nocollapse */ /** @nocollapse */ SmartErrorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.5", type: SmartErrorComponent, selector: "app-smart-error", ngImport: i0, template: "<div>\n <h2>\n {{ message }}\n </h2>\n <p>\n Please contact help desk if needed.\n </p>\n <div>\n <button (click)=\"logout()\" *ngIf=\"type === 'staff'\">OK</button>\n <button (click)=\"portal()\" *ngIf=\"type === 'offender'\">OK</button>\n </div>\n</div>\n", styles: ["div{text-align:center}\n"], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SmartErrorComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ selector: 'app-smart-error', template: "<div>\n <h2>\n {{ message }}\n </h2>\n <p>\n Please contact help desk if needed.\n </p>\n <div>\n <button (click)=\"logout()\" *ngIf=\"type === 'staff'\">OK</button>\n <button (click)=\"portal()\" *ngIf=\"type === 'offender'\">OK</button>\n </div>\n</div>\n", styles: ["div{text-align:center}\n"] }]
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i1.MsalService }, { type: i2.ActivatedRoute }, { type: undefined, decorators: [{
|
|
34
|
+
type: Inject,
|
|
35
|
+
args: [SMART_WEB_PORTAL_URL]
|
|
36
|
+
}] }]; } });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3NtYXJ0L25nYy1zbWFydC1jb3JlL3NyYy9saWIvc21hcnQtYXV0aC9zbWFydC1lcnJvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jc21hcnQvbmdjLXNtYXJ0LWNvcmUvc3JjL2xpYi9zbWFydC1hdXRoL3NtYXJ0LWVycm9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELDJEQUEyRDtBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDOzs7OztBQU81RSxNQUFNLE9BQU8sbUJBQW1CO0lBSTlCLFlBQ1UsWUFBeUIsRUFDekIsS0FBcUIsRUFDUyxpQkFBeUI7UUFGdkQsaUJBQVksR0FBWixZQUFZLENBQWE7UUFDekIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDUyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQVE7SUFDOUQsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDO1FBQ3JFLElBQUksQ0FBQyxPQUFPO1lBQ1YsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxnQkFBZ0IsQ0FBQztJQUN6RSxDQUFDO0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELE1BQU07UUFDSixNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEQsQ0FBQzs7c0pBdEJVLG1CQUFtQiwyRUFPcEIsb0JBQW9COzBJQVBuQixtQkFBbUIsdURDWGhDLHFSQVlBOzJGRERhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxpQkFBaUI7OzBCQVd4QixNQUFNOzJCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbi8vIGltcG9ydCB7IFNtYXJ0QXV0aFNlcnZpY2UgfSBmcm9tICcuL3NtYXJ0LWF1dGguc2VydmljZSc7XG5pbXBvcnQgeyBNc2FsU2VydmljZSB9IGZyb20gJ0BhenVyZS9tc2FsLWFuZ3VsYXInO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU01BUlRfV0VCX1BPUlRBTF9VUkwgfSBmcm9tICcuLi9zbWFydC1zdG9yYWdlL3NtYXJ0LXN0b3JhZ2UtbW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc21hcnQtZXJyb3InLFxuICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtZXJyb3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zbWFydC1lcnJvci5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNtYXJ0RXJyb3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICB0eXBlOiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGF1dGhuU2VydmljZTogTXNhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgQEluamVjdChTTUFSVF9XRUJfUE9SVEFMX1VSTCkgcHJpdmF0ZSBzbWFydFdlYlBvcnRhbFVybDogc3RyaW5nLFxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy50eXBlID0gdGhpcy5yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtTWFwLmdldCgndHlwZScpIHx8ICdzdGFmZic7XG4gICAgdGhpcy5tZXNzYWdlID1cbiAgICAgIHRoaXMucm91dGUuc25hcHNob3QucXVlcnlQYXJhbU1hcC5nZXQoJ21lc3NhZ2UnKSB8fCAnRXJyb3Igb2NjdXJlZC4nO1xuICB9XG5cbiAgbG9nb3V0KCkge1xuICAgIHRoaXMuYXV0aG5TZXJ2aWNlLmxvZ291dCgpO1xuICB9XG5cbiAgcG9ydGFsKCkge1xuICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gdGhpcy5zbWFydFdlYlBvcnRhbFVybDtcbiAgfVxufVxuIiwiPGRpdj5cbiAgPGgyPlxuICAgIHt7IG1lc3NhZ2UgfX1cbiAgPC9oMj5cbiAgPHA+XG4gICAgUGxlYXNlIGNvbnRhY3QgaGVscCBkZXNrIGlmIG5lZWRlZC5cbiAgPC9wPlxuICA8ZGl2PlxuICAgIDxidXR0b24gKGNsaWNrKT1cImxvZ291dCgpXCIgKm5nSWY9XCJ0eXBlID09PSAnc3RhZmYnXCI+T0s8L2J1dHRvbj5cbiAgICA8YnV0dG9uIChjbGljayk9XCJwb3J0YWwoKVwiICpuZ0lmPVwidHlwZSA9PT0gJ29mZmVuZGVyJ1wiPk9LPC9idXR0b24+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
import { Injectable, isDevMode } from '@angular/core';
|
|
2
|
-
import { Router, } from '@angular/router';
|
|
3
|
-
import { EMPTY, of, throwError } from 'rxjs';
|
|
4
|
-
import { mergeMap, catchError, take } from 'rxjs/operators';
|
|
5
|
-
import { SmartAuthService } from './smart-auth.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "./smart-auth.service";
|
|
8
|
-
import * as i2 from "@angular/router";
|
|
9
|
-
export class LoginStaffResolverService {
|
|
10
|
-
constructor(authnService,
|
|
11
|
-
// private zone: NgZone,
|
|
12
|
-
router) {
|
|
13
|
-
this.authnService = authnService;
|
|
14
|
-
this.router = router;
|
|
15
|
-
}
|
|
16
|
-
resolve(route, state) {
|
|
17
|
-
return this.authnService.getLoginStaff().pipe(take(1), mergeMap((loginStaff) => {
|
|
18
|
-
if (isDevMode) {
|
|
19
|
-
console.log('LoginStaffResolverService: ', loginStaff);
|
|
20
|
-
}
|
|
21
|
-
if (loginStaff) {
|
|
22
|
-
return of(loginStaff);
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
return throwError('Not authorized to access SMART.');
|
|
26
|
-
// return EMPTY;
|
|
27
|
-
/*
|
|
28
|
-
this.zone.run(() => {
|
|
29
|
-
this.router.navigate(['/smart-error'], {
|
|
30
|
-
queryParams: {
|
|
31
|
-
type: 'staff',
|
|
32
|
-
message: 'Not authorized to access SMART.'
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
return EMPTY;
|
|
37
|
-
*/
|
|
38
|
-
}
|
|
39
|
-
}), catchError((error) => {
|
|
40
|
-
console.log('LoginStaffResolverService: ' + error);
|
|
41
|
-
this.router.navigate(['/smart-error'], {
|
|
42
|
-
queryParams: {
|
|
43
|
-
type: 'staff',
|
|
44
|
-
message: 'SMART Authentication: ' + error,
|
|
45
|
-
},
|
|
46
|
-
});
|
|
47
|
-
return EMPTY;
|
|
48
|
-
}));
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
/** @nocollapse */ /** @nocollapse */ LoginStaffResolverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LoginStaffResolverService, deps: [{ token: i1.SmartAuthService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
52
|
-
/** @nocollapse */ /** @nocollapse */ LoginStaffResolverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LoginStaffResolverService, providedIn: 'root' });
|
|
53
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LoginStaffResolverService, decorators: [{
|
|
54
|
-
type: Injectable,
|
|
55
|
-
args: [{
|
|
56
|
-
providedIn: 'root',
|
|
57
|
-
}]
|
|
58
|
-
}], ctorParameters: function () { return [{ type: i1.SmartAuthService }, { type: i2.Router }]; } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable, isDevMode } from '@angular/core';
|
|
2
|
+
import { Router, } from '@angular/router';
|
|
3
|
+
import { EMPTY, of, throwError } from 'rxjs';
|
|
4
|
+
import { mergeMap, catchError, take } from 'rxjs/operators';
|
|
5
|
+
import { SmartAuthService } from './smart-auth.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "./smart-auth.service";
|
|
8
|
+
import * as i2 from "@angular/router";
|
|
9
|
+
export class LoginStaffResolverService {
|
|
10
|
+
constructor(authnService,
|
|
11
|
+
// private zone: NgZone,
|
|
12
|
+
router) {
|
|
13
|
+
this.authnService = authnService;
|
|
14
|
+
this.router = router;
|
|
15
|
+
}
|
|
16
|
+
resolve(route, state) {
|
|
17
|
+
return this.authnService.getLoginStaff().pipe(take(1), mergeMap((loginStaff) => {
|
|
18
|
+
if (isDevMode) {
|
|
19
|
+
console.log('LoginStaffResolverService: ', loginStaff);
|
|
20
|
+
}
|
|
21
|
+
if (loginStaff) {
|
|
22
|
+
return of(loginStaff);
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return throwError('Not authorized to access SMART.');
|
|
26
|
+
// return EMPTY;
|
|
27
|
+
/*
|
|
28
|
+
this.zone.run(() => {
|
|
29
|
+
this.router.navigate(['/smart-error'], {
|
|
30
|
+
queryParams: {
|
|
31
|
+
type: 'staff',
|
|
32
|
+
message: 'Not authorized to access SMART.'
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
return EMPTY;
|
|
37
|
+
*/
|
|
38
|
+
}
|
|
39
|
+
}), catchError((error) => {
|
|
40
|
+
console.log('LoginStaffResolverService: ' + error);
|
|
41
|
+
this.router.navigate(['/smart-error'], {
|
|
42
|
+
queryParams: {
|
|
43
|
+
type: 'staff',
|
|
44
|
+
message: 'SMART Authentication: ' + error,
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
return EMPTY;
|
|
48
|
+
}));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/** @nocollapse */ /** @nocollapse */ LoginStaffResolverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LoginStaffResolverService, deps: [{ token: i1.SmartAuthService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
52
|
+
/** @nocollapse */ /** @nocollapse */ LoginStaffResolverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LoginStaffResolverService, providedIn: 'root' });
|
|
53
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: LoginStaffResolverService, decorators: [{
|
|
54
|
+
type: Injectable,
|
|
55
|
+
args: [{
|
|
56
|
+
providedIn: 'root',
|
|
57
|
+
}]
|
|
58
|
+
}], ctorParameters: function () { return [{ type: i1.SmartAuthService }, { type: i2.Router }]; } });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbG9naW4tc3RhZmYtcmVzb2x2ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NzbWFydC9uZ2Mtc21hcnQtY29yZS9zcmMvbGliL3NtYXJ0LWF1dGgvc21hcnQtbG9naW4tc3RhZmYtcmVzb2x2ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBSUwsTUFBTSxHQUNQLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFjLEtBQUssRUFBRSxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7O0FBTXhELE1BQU0sT0FBTyx5QkFBeUI7SUFDcEMsWUFDVSxZQUE4QjtJQUN0Qyx3QkFBd0I7SUFDaEIsTUFBYztRQUZkLGlCQUFZLEdBQVosWUFBWSxDQUFrQjtRQUU5QixXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQ3JCLENBQUM7SUFFSixPQUFPLENBQ0wsS0FBNkIsRUFDN0IsS0FBMEI7UUFFMUIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsRUFBRSxDQUFDLElBQUksQ0FDM0MsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLFFBQVEsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3RCLElBQUksU0FBUyxFQUFFO2dCQUNiLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLEVBQUUsVUFBVSxDQUFDLENBQUM7YUFDeEQ7WUFDRCxJQUFJLFVBQVUsRUFBRTtnQkFDZCxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUN2QjtpQkFBTTtnQkFDTCxPQUFPLFVBQVUsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO2dCQUNyRCxnQkFBZ0I7Z0JBQ2hCOzs7Ozs7Ozs7O2tCQVVFO2FBQ0g7UUFDSCxDQUFDLENBQUMsRUFDRixVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQixPQUFPLENBQUMsR0FBRyxDQUFDLDZCQUE2QixHQUFHLEtBQUssQ0FBQyxDQUFDO1lBQ25ELElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsY0FBYyxDQUFDLEVBQUU7Z0JBQ3JDLFdBQVcsRUFBRTtvQkFDWCxJQUFJLEVBQUUsT0FBTztvQkFDYixPQUFPLEVBQUUsd0JBQXdCLEdBQUcsS0FBSztpQkFDMUM7YUFDRixDQUFDLENBQUM7WUFDSCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDOzs0SkE5Q1UseUJBQXlCO2dLQUF6Qix5QkFBeUIsY0FGeEIsTUFBTTsyRkFFUCx5QkFBeUI7a0JBSHJDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgTmdab25lLCBpc0Rldk1vZGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFJlc29sdmUsXG4gIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsXG4gIFJvdXRlclN0YXRlU25hcHNob3QsXG4gIFJvdXRlcixcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIEVNUFRZLCBvZiwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWVyZ2VNYXAsIGNhdGNoRXJyb3IsIHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTbWFydEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi9zbWFydC1hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgTG9naW5TdGFmZiB9IGZyb20gJy4uL3NtYXJ0LXN0b3JhZ2Uvc21hcnQtc3RvcmFnZS1tb2RlbCc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBMb2dpblN0YWZmUmVzb2x2ZXJTZXJ2aWNlIGltcGxlbWVudHMgUmVzb2x2ZTxMb2dpblN0YWZmPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYXV0aG5TZXJ2aWNlOiBTbWFydEF1dGhTZXJ2aWNlLFxuICAgIC8vIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICkge31cblxuICByZXNvbHZlKFxuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICAgIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICApOiBPYnNlcnZhYmxlPExvZ2luU3RhZmY+IHwgT2JzZXJ2YWJsZTxuZXZlcj4ge1xuICAgIHJldHVybiB0aGlzLmF1dGhuU2VydmljZS5nZXRMb2dpblN0YWZmKCkucGlwZShcbiAgICAgIHRha2UoMSksXG4gICAgICBtZXJnZU1hcCgobG9naW5TdGFmZikgPT4ge1xuICAgICAgICBpZiAoaXNEZXZNb2RlKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coJ0xvZ2luU3RhZmZSZXNvbHZlclNlcnZpY2U6ICcsIGxvZ2luU3RhZmYpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChsb2dpblN0YWZmKSB7XG4gICAgICAgICAgcmV0dXJuIG9mKGxvZ2luU3RhZmYpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKCdOb3QgYXV0aG9yaXplZCB0byBhY2Nlc3MgU01BUlQuJyk7XG4gICAgICAgICAgLy8gcmV0dXJuIEVNUFRZO1xuICAgICAgICAgIC8qXG4gICAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9zbWFydC1lcnJvciddLCB7XG4gICAgICAgICAgICAgIHF1ZXJ5UGFyYW1zOiB7XG4gICAgICAgICAgICAgICAgdHlwZTogJ3N0YWZmJyxcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiAnTm90IGF1dGhvcml6ZWQgdG8gYWNjZXNzIFNNQVJULidcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmV0dXJuIEVNUFRZO1xuICAgICAgICAgICovXG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ0xvZ2luU3RhZmZSZXNvbHZlclNlcnZpY2U6ICcgKyBlcnJvcik7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3NtYXJ0LWVycm9yJ10sIHtcbiAgICAgICAgICBxdWVyeVBhcmFtczoge1xuICAgICAgICAgICAgdHlwZTogJ3N0YWZmJyxcbiAgICAgICAgICAgIG1lc3NhZ2U6ICdTTUFSVCBBdXRoZW50aWNhdGlvbjogJyArIGVycm9yLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,49 +1,49 @@
|
|
|
1
|
-
import { Injectable, NgZone, isDevMode } from '@angular/core';
|
|
2
|
-
import { Router, } from '@angular/router';
|
|
3
|
-
import { from, of, EMPTY, throwError, concat } from 'rxjs';
|
|
4
|
-
import { catchError, mergeMap, take, retryWhen, delay, } from 'rxjs/operators';
|
|
5
|
-
import { XdmService } from '../smart-storage/xdm.service';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
import * as i1 from "../smart-storage/xdm.service";
|
|
8
|
-
import * as i2 from "@angular/router";
|
|
9
|
-
export class SelectedOffenderResolverService {
|
|
10
|
-
constructor(service, zone, router) {
|
|
11
|
-
this.service = service;
|
|
12
|
-
this.zone = zone;
|
|
13
|
-
this.router = router;
|
|
14
|
-
}
|
|
15
|
-
resolve(route, state) {
|
|
16
|
-
return from(this.service.getSelectedOffender()).pipe(mergeMap((selectedOffender) => {
|
|
17
|
-
if (isDevMode) {
|
|
18
|
-
console.log(selectedOffender);
|
|
19
|
-
}
|
|
20
|
-
if (!selectedOffender) {
|
|
21
|
-
return throwError('No offender selected.');
|
|
22
|
-
}
|
|
23
|
-
return of(selectedOffender);
|
|
24
|
-
}), retryWhen((errors) => errors.pipe(
|
|
25
|
-
// tap(() => console.log('Retry getting selected offender.')),
|
|
26
|
-
delay(1000), take(5), (o) => concat(o, throwError('No offender selected (failed after retries).')))), catchError((error) => {
|
|
27
|
-
/*
|
|
28
|
-
this.zone.run(() => {
|
|
29
|
-
this.router.navigate(['/smart-error'], {
|
|
30
|
-
queryParams: { type: 'offender', message: error }
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
*/
|
|
34
|
-
this.router.navigate(['/smart-error'], {
|
|
35
|
-
queryParams: { type: 'offender', message: error },
|
|
36
|
-
});
|
|
37
|
-
return EMPTY;
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
/** @nocollapse */ /** @nocollapse */ SelectedOffenderResolverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SelectedOffenderResolverService, deps: [{ token: i1.XdmService }, { token: i0.NgZone }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
|
-
/** @nocollapse */ /** @nocollapse */ SelectedOffenderResolverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SelectedOffenderResolverService, providedIn: 'root' });
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SelectedOffenderResolverService, decorators: [{
|
|
44
|
-
type: Injectable,
|
|
45
|
-
args: [{
|
|
46
|
-
providedIn: 'root',
|
|
47
|
-
}]
|
|
48
|
-
}], ctorParameters: function () { return [{ type: i1.XdmService }, { type: i0.NgZone }, { type: i2.Router }]; } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Injectable, NgZone, isDevMode } from '@angular/core';
|
|
2
|
+
import { Router, } from '@angular/router';
|
|
3
|
+
import { from, of, EMPTY, throwError, concat } from 'rxjs';
|
|
4
|
+
import { catchError, mergeMap, take, retryWhen, delay, } from 'rxjs/operators';
|
|
5
|
+
import { XdmService } from '../smart-storage/xdm.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "../smart-storage/xdm.service";
|
|
8
|
+
import * as i2 from "@angular/router";
|
|
9
|
+
export class SelectedOffenderResolverService {
|
|
10
|
+
constructor(service, zone, router) {
|
|
11
|
+
this.service = service;
|
|
12
|
+
this.zone = zone;
|
|
13
|
+
this.router = router;
|
|
14
|
+
}
|
|
15
|
+
resolve(route, state) {
|
|
16
|
+
return from(this.service.getSelectedOffender()).pipe(mergeMap((selectedOffender) => {
|
|
17
|
+
if (isDevMode) {
|
|
18
|
+
console.log(selectedOffender);
|
|
19
|
+
}
|
|
20
|
+
if (!selectedOffender) {
|
|
21
|
+
return throwError('No offender selected.');
|
|
22
|
+
}
|
|
23
|
+
return of(selectedOffender);
|
|
24
|
+
}), retryWhen((errors) => errors.pipe(
|
|
25
|
+
// tap(() => console.log('Retry getting selected offender.')),
|
|
26
|
+
delay(1000), take(5), (o) => concat(o, throwError('No offender selected (failed after retries).')))), catchError((error) => {
|
|
27
|
+
/*
|
|
28
|
+
this.zone.run(() => {
|
|
29
|
+
this.router.navigate(['/smart-error'], {
|
|
30
|
+
queryParams: { type: 'offender', message: error }
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
*/
|
|
34
|
+
this.router.navigate(['/smart-error'], {
|
|
35
|
+
queryParams: { type: 'offender', message: error },
|
|
36
|
+
});
|
|
37
|
+
return EMPTY;
|
|
38
|
+
}));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/** @nocollapse */ /** @nocollapse */ SelectedOffenderResolverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SelectedOffenderResolverService, deps: [{ token: i1.XdmService }, { token: i0.NgZone }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
|
+
/** @nocollapse */ /** @nocollapse */ SelectedOffenderResolverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SelectedOffenderResolverService, providedIn: 'root' });
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: SelectedOffenderResolverService, decorators: [{
|
|
44
|
+
type: Injectable,
|
|
45
|
+
args: [{
|
|
46
|
+
providedIn: 'root',
|
|
47
|
+
}]
|
|
48
|
+
}], ctorParameters: function () { return [{ type: i1.XdmService }, { type: i0.NgZone }, { type: i2.Router }]; } });
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtc2VsZWN0ZWQtb2ZmZW5kZXItcmVzb2x2ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NzbWFydC9uZ2Mtc21hcnQtY29yZS9zcmMvbGliL3NtYXJ0LWF1dGgvc21hcnQtc2VsZWN0ZWQtb2ZmZW5kZXItcmVzb2x2ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUlMLE1BQU0sR0FDUCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFBYyxJQUFJLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFDTCxVQUFVLEVBQ1YsUUFBUSxFQUVSLElBQUksRUFDSixTQUFTLEVBRVQsS0FBSyxHQUNOLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7O0FBSzFELE1BQU0sT0FBTywrQkFBK0I7SUFFMUMsWUFDVSxPQUFtQixFQUNuQixJQUFZLEVBQ1osTUFBYztRQUZkLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNaLFdBQU0sR0FBTixNQUFNLENBQVE7SUFDckIsQ0FBQztJQUVKLE9BQU8sQ0FDTCxLQUE2QixFQUM3QixLQUEwQjtRQUUxQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQ2xELFFBQVEsQ0FBQyxDQUFDLGdCQUFnQixFQUFFLEVBQUU7WUFDNUIsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO2FBQy9CO1lBQ0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFO2dCQUNyQixPQUFPLFVBQVUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO2FBQzVDO1lBQ0QsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNuQixNQUFNLENBQUMsSUFBSTtRQUNULDhEQUE4RDtRQUM5RCxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQ1gsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNQLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDSixNQUFNLENBQ0osQ0FBQyxFQUNELFVBQVUsQ0FBQyw4Q0FBOEMsQ0FBQyxDQUMzRCxDQUNKLENBQ0YsRUFDRCxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUNuQjs7Ozs7O2NBTUU7WUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUNyQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUU7YUFDbEQsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQzs7a0tBaERVLCtCQUErQjtzS0FBL0IsK0JBQStCLGNBRjlCLE1BQU07MkZBRVAsK0JBQStCO2tCQUgzQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIE5nWm9uZSwgaXNEZXZNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBSZXNvbHZlLFxuICBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICBSb3V0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmcm9tLCBvZiwgRU1QVFksIHRocm93RXJyb3IsIGNvbmNhdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgY2F0Y2hFcnJvcixcbiAgbWVyZ2VNYXAsXG4gIG1hcCxcbiAgdGFrZSxcbiAgcmV0cnlXaGVuLFxuICB0YXAsXG4gIGRlbGF5LFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTZWxlY3RlZE9mZmVuZGVyIH0gZnJvbSAnLi4vc21hcnQtc3RvcmFnZS9zbWFydC1zdG9yYWdlLW1vZGVsJztcbmltcG9ydCB7IFhkbVNlcnZpY2UgfSBmcm9tICcuLi9zbWFydC1zdG9yYWdlL3hkbS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdGVkT2ZmZW5kZXJSZXNvbHZlclNlcnZpY2VcbiAgaW1wbGVtZW50cyBSZXNvbHZlPFNlbGVjdGVkT2ZmZW5kZXI+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzZXJ2aWNlOiBYZG1TZXJ2aWNlLFxuICAgIHByaXZhdGUgem9uZTogTmdab25lLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICkge31cblxuICByZXNvbHZlKFxuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICAgIHN0YXRlOiBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICApOiBPYnNlcnZhYmxlPFNlbGVjdGVkT2ZmZW5kZXI+IHwgT2JzZXJ2YWJsZTxuZXZlcj4ge1xuICAgIHJldHVybiBmcm9tKHRoaXMuc2VydmljZS5nZXRTZWxlY3RlZE9mZmVuZGVyKCkpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoc2VsZWN0ZWRPZmZlbmRlcikgPT4ge1xuICAgICAgICBpZiAoaXNEZXZNb2RlKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coc2VsZWN0ZWRPZmZlbmRlcik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFzZWxlY3RlZE9mZmVuZGVyKSB7XG4gICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoJ05vIG9mZmVuZGVyIHNlbGVjdGVkLicpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBvZihzZWxlY3RlZE9mZmVuZGVyKTtcbiAgICAgIH0pLFxuICAgICAgcmV0cnlXaGVuKChlcnJvcnMpID0+XG4gICAgICAgIGVycm9ycy5waXBlKFxuICAgICAgICAgIC8vIHRhcCgoKSA9PiBjb25zb2xlLmxvZygnUmV0cnkgZ2V0dGluZyBzZWxlY3RlZCBvZmZlbmRlci4nKSksXG4gICAgICAgICAgZGVsYXkoMTAwMCksXG4gICAgICAgICAgdGFrZSg1KSxcbiAgICAgICAgICAobykgPT5cbiAgICAgICAgICAgIGNvbmNhdChcbiAgICAgICAgICAgICAgbyxcbiAgICAgICAgICAgICAgdGhyb3dFcnJvcignTm8gb2ZmZW5kZXIgc2VsZWN0ZWQgKGZhaWxlZCBhZnRlciByZXRyaWVzKS4nKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICksXG4gICAgICApLFxuICAgICAgY2F0Y2hFcnJvcigoZXJyb3IpID0+IHtcbiAgICAgICAgLypcbiAgICAgICAgdGhpcy56b25lLnJ1bigoKSA9PiB7XG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvc21hcnQtZXJyb3InXSwge1xuICAgICAgICAgICAgcXVlcnlQYXJhbXM6IHsgdHlwZTogJ29mZmVuZGVyJywgbWVzc2FnZTogZXJyb3IgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9KTtcbiAgICAgICAgKi9cbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvc21hcnQtZXJyb3InXSwge1xuICAgICAgICAgIHF1ZXJ5UGFyYW1zOiB7IHR5cGU6ICdvZmZlbmRlcicsIG1lc3NhZ2U6IGVycm9yIH0sXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gRU1QVFk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtbmF2YmFyLWNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NzbWFydC9uZ2Mtc21hcnQtY29yZS9zcmMvbGliL3NtYXJ0LW5hdmJhci9zbWFydC1uYXZiYXItY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNtYXJ0TmF2YmFyQ29uZmlnIHtcbiAgYXBwTW9kdWxlSWQ6IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICB1cmw6IHN0cmluZztcbiAgb2ZmZW5kZXJTcGVjaWZpY0ZsYWc6IGJvb2xlYW47XG4gIGRpc3BsYXlPcmRlcjogbnVtYmVyO1xufVxuIl19
|