@huntsman-cancer-institute/authentication 16.0.1 → 17.0.1

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.
@@ -1,79 +1,79 @@
1
- import { Injectable, Injector, isDevMode } from "@angular/core";
2
- import { throwError } from "rxjs";
3
- import { catchError } from "rxjs/operators";
4
- import { AuthenticationService } from "./authentication.service";
5
- import * as i0 from "@angular/core";
6
- export class AuthorizationInterceptor {
7
- constructor(injector) {
8
- this.injector = injector;
9
- }
10
- intercept(req, next) {
11
- if (isDevMode()) {
12
- console.debug("AuthorizationInterceptor.intercept");
13
- }
14
- let authService = this.injector.get(AuthenticationService);
15
- //Don't want to include background token refreshes in considering the user 'active'
16
- if (req.url !== authService.tokenLocation()) {
17
- //Update user activity. Done here instead of the previous method using a subscription to a subject in AuthenticationProvider
18
- authService.updateUserActivity();
19
- }
20
- let headers = authService.getHeaders(req);
21
- let url = req.url;
22
- if (url.startsWith("/")) {
23
- url = authService.getBaseUrl() + url;
24
- }
25
- else if (!url.startsWith("http")) {
26
- if (authService.getContextRoot().length > 0) {
27
- url = authService.getBaseUrl() + "/" + authService.getContextRoot() + "/" + url;
28
- }
29
- else {
30
- url = authService.getBaseUrl() + "/" + url;
31
- }
32
- }
33
- let params = req.params;
34
- if (url.indexOf("/crud/") > 0) {
35
- params = params.set("maxViewPermission", authService.getMaxViewPermission());
36
- }
37
- let reqClone = req.clone({
38
- url: url,
39
- withCredentials: true,
40
- headers: headers,
41
- params: params
42
- });
43
- return next.handle(reqClone)
44
- .pipe(catchError((error) => {
45
- if (isDevMode()) {
46
- console.error("AuthorizationInterceptor.error");
47
- console.error(error);
48
- }
49
- /**
50
- * If the token is not authenticated which angular does not know about, then a REST request to the backend will
51
- * return a 401. To duplicate this, open Core in two tabs. In one tab, logout, in the other, perform a request
52
- * that hits a protected resource.
53
- */
54
- if (error.status === 401) {
55
- authService.isAuthenticated().subscribe((authenticated) => {
56
- if (authenticated) {
57
- // If authenticated, then logout which will redirect.
58
- authService.logout(true);
59
- return throwError(error.message);
60
- }
61
- else {
62
- // Otherwise, for example, when the user first opens Core, 401s are expected.
63
- return throwError(error);
64
- }
65
- });
66
- }
67
- if (error.status === 403) {
68
- // TODO: Trigger notification for unauthorized.
69
- }
70
- return throwError(error);
71
- }));
72
- }
73
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthorizationInterceptor, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
74
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthorizationInterceptor }); }
75
- }
76
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AuthorizationInterceptor, decorators: [{
77
- type: Injectable
78
- }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2F1dGhlbnRpY2F0aW9uL3NyYy9hdXRob3JpemF0aW9uLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUc5RCxPQUFPLEVBQWEsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7QUFHL0QsTUFBTSxPQUFPLHdCQUF3QjtJQUVuQyxZQUFvQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQUcsQ0FBQztJQUUxQyxTQUFTLENBQUMsR0FBcUIsRUFBRSxJQUFpQjtRQUNoRCxJQUFJLFNBQVMsRUFBRSxFQUFFO1lBQ2YsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQ3JEO1FBRUQsSUFBSSxXQUFXLEdBQTBCLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFbEYsbUZBQW1GO1FBQ25GLElBQUksR0FBRyxDQUFDLEdBQUcsS0FBSyxXQUFXLENBQUMsYUFBYSxFQUFFLEVBQUU7WUFDM0MsNEhBQTRIO1lBQzVILFdBQVcsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQ2xDO1FBRUQsSUFBSSxPQUFPLEdBQWdCLFdBQVcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkQsSUFBSSxHQUFHLEdBQVcsR0FBRyxDQUFDLEdBQUcsQ0FBQztRQUMxQixJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDdkIsR0FBRyxHQUFHLFdBQVcsQ0FBQyxVQUFVLEVBQUUsR0FBRyxHQUFHLENBQUM7U0FDdEM7YUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNsQyxJQUFJLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUMzQyxHQUFHLEdBQUcsV0FBVyxDQUFDLFVBQVUsRUFBRSxHQUFHLEdBQUcsR0FBRyxXQUFXLENBQUMsY0FBYyxFQUFFLEdBQUcsR0FBRyxHQUFHLEdBQUcsQ0FBQzthQUNqRjtpQkFBTTtnQkFDTCxHQUFHLEdBQUcsV0FBVyxDQUFDLFVBQVUsRUFBRSxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7YUFDNUM7U0FDRjtRQUVELElBQUksTUFBTSxHQUFlLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFDcEMsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM3QixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxXQUFXLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1NBQzlFO1FBRUQsSUFBSSxRQUFRLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUN2QixHQUFHLEVBQUUsR0FBRztZQUNSLGVBQWUsRUFBRSxJQUFJO1lBQ3JCLE9BQU8sRUFBRSxPQUFPO1lBQ2hCLE1BQU0sRUFBRSxNQUFNO1NBQ2YsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQzthQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDekIsSUFBSSxTQUFTLEVBQUUsRUFBRTtnQkFDZixPQUFPLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7Z0JBQ2hELE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDdEI7WUFFRDs7OztlQUlHO1lBQ0gsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRTtnQkFDeEIsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO29CQUN4RCxJQUFJLGFBQWEsRUFBRTt3QkFDakIscURBQXFEO3dCQUNyRCxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO3dCQUN6QixPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7cUJBQ2xDO3lCQUFNO3dCQUNMLDZFQUE2RTt3QkFDN0UsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQzFCO2dCQUNILENBQUMsQ0FBQyxDQUFDO2FBQ0o7WUFDRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO2dCQUN4QiwrQ0FBK0M7YUFDaEQ7WUFDRCxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQzsrR0F0RVUsd0JBQXdCO21IQUF4Qix3QkFBd0I7OzRGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIEluamVjdG9yLCBpc0Rldk1vZGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7SHR0cFJlcXVlc3QsIEh0dHBIYW5kbGVyLCBIdHRwRXZlbnQsIEh0dHBJbnRlcmNlcHRvciwgSHR0cEhlYWRlcnMsIEh0dHBQYXJhbXN9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xyXG5cclxuaW1wb3J0IHtPYnNlcnZhYmxlLCB0aHJvd0Vycm9yfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge2NhdGNoRXJyb3J9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuaW1wb3J0IHtBdXRoZW50aWNhdGlvblNlcnZpY2V9IGZyb20gXCIuL2F1dGhlbnRpY2F0aW9uLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEF1dGhvcml6YXRpb25JbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yKSB7fVxyXG5cclxuICBpbnRlcmNlcHQocmVxOiBIdHRwUmVxdWVzdDxhbnk+LCBuZXh0OiBIdHRwSGFuZGxlcik6IE9ic2VydmFibGU8SHR0cEV2ZW50PGFueT4+IHtcclxuICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICBjb25zb2xlLmRlYnVnKFwiQXV0aG9yaXphdGlvbkludGVyY2VwdG9yLmludGVyY2VwdFwiKTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgbGV0IGF1dGhTZXJ2aWNlOiBBdXRoZW50aWNhdGlvblNlcnZpY2UgPSB0aGlzLmluamVjdG9yLmdldChBdXRoZW50aWNhdGlvblNlcnZpY2UpO1xyXG4gICAgXHJcbiAgICAvL0Rvbid0IHdhbnQgdG8gaW5jbHVkZSBiYWNrZ3JvdW5kIHRva2VuIHJlZnJlc2hlcyBpbiBjb25zaWRlcmluZyB0aGUgdXNlciAnYWN0aXZlJ1xyXG4gICAgaWYgKHJlcS51cmwgIT09IGF1dGhTZXJ2aWNlLnRva2VuTG9jYXRpb24oKSkge1xyXG4gICAgICAvL1VwZGF0ZSB1c2VyIGFjdGl2aXR5LiBEb25lIGhlcmUgaW5zdGVhZCBvZiB0aGUgcHJldmlvdXMgbWV0aG9kIHVzaW5nIGEgc3Vic2NyaXB0aW9uIHRvIGEgc3ViamVjdCBpbiBBdXRoZW50aWNhdGlvblByb3ZpZGVyXHJcbiAgICAgIGF1dGhTZXJ2aWNlLnVwZGF0ZVVzZXJBY3Rpdml0eSgpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBsZXQgaGVhZGVyczogSHR0cEhlYWRlcnMgPSBhdXRoU2VydmljZS5nZXRIZWFkZXJzKHJlcSk7XHJcbiAgICBsZXQgdXJsOiBzdHJpbmcgPSByZXEudXJsO1xyXG4gICAgaWYgKHVybC5zdGFydHNXaXRoKFwiL1wiKSkge1xyXG4gICAgICB1cmwgPSBhdXRoU2VydmljZS5nZXRCYXNlVXJsKCkgKyB1cmw7XHJcbiAgICB9IGVsc2UgaWYgKCF1cmwuc3RhcnRzV2l0aChcImh0dHBcIikpIHtcclxuICAgICAgaWYgKGF1dGhTZXJ2aWNlLmdldENvbnRleHRSb290KCkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgIHVybCA9IGF1dGhTZXJ2aWNlLmdldEJhc2VVcmwoKSArIFwiL1wiICsgYXV0aFNlcnZpY2UuZ2V0Q29udGV4dFJvb3QoKSArIFwiL1wiICsgdXJsO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHVybCA9IGF1dGhTZXJ2aWNlLmdldEJhc2VVcmwoKSArIFwiL1wiICsgdXJsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHBhcmFtczogSHR0cFBhcmFtcyA9IHJlcS5wYXJhbXM7XHJcbiAgICBpZiAodXJsLmluZGV4T2YoXCIvY3J1ZC9cIikgPiAwKSB7XHJcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5zZXQoXCJtYXhWaWV3UGVybWlzc2lvblwiLCBhdXRoU2VydmljZS5nZXRNYXhWaWV3UGVybWlzc2lvbigpKTtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgcmVxQ2xvbmUgPSByZXEuY2xvbmUoe1xyXG4gICAgICB1cmw6IHVybCxcclxuICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxyXG4gICAgICBoZWFkZXJzOiBoZWFkZXJzLFxyXG4gICAgICBwYXJhbXM6IHBhcmFtc1xyXG4gICAgfSk7XHJcblxyXG4gICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcUNsb25lKVxyXG4gICAgICAucGlwZShjYXRjaEVycm9yKChlcnJvcikgPT4ge1xyXG4gICAgICAgIGlmIChpc0Rldk1vZGUoKSkge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihcIkF1dGhvcml6YXRpb25JbnRlcmNlcHRvci5lcnJvclwiKTtcclxuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyoqXHJcbiAgICAgICAgICogSWYgdGhlIHRva2VuIGlzIG5vdCBhdXRoZW50aWNhdGVkIHdoaWNoIGFuZ3VsYXIgZG9lcyBub3Qga25vdyBhYm91dCwgdGhlbiBhIFJFU1QgcmVxdWVzdCB0byB0aGUgYmFja2VuZCB3aWxsXHJcbiAgICAgICAgICogcmV0dXJuIGEgNDAxLiAgVG8gZHVwbGljYXRlIHRoaXMsIG9wZW4gQ29yZSBpbiB0d28gdGFicy4gIEluIG9uZSB0YWIsIGxvZ291dCwgaW4gdGhlIG90aGVyLCBwZXJmb3JtIGEgcmVxdWVzdFxyXG4gICAgICAgICAqIHRoYXQgaGl0cyBhIHByb3RlY3RlZCByZXNvdXJjZS5cclxuICAgICAgICAgKi9cclxuICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDEpIHtcclxuICAgICAgICAgIGF1dGhTZXJ2aWNlLmlzQXV0aGVudGljYXRlZCgpLnN1YnNjcmliZSgoYXV0aGVudGljYXRlZCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoYXV0aGVudGljYXRlZCkge1xyXG4gICAgICAgICAgICAgIC8vIElmIGF1dGhlbnRpY2F0ZWQsIHRoZW4gbG9nb3V0IHdoaWNoIHdpbGwgcmVkaXJlY3QuXHJcbiAgICAgICAgICAgICAgYXV0aFNlcnZpY2UubG9nb3V0KHRydWUpO1xyXG4gICAgICAgICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIC8vIE90aGVyd2lzZSwgZm9yIGV4YW1wbGUsIHdoZW4gdGhlIHVzZXIgZmlyc3Qgb3BlbnMgQ29yZSwgNDAxcyBhcmUgZXhwZWN0ZWQuXHJcbiAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAzKSB7XHJcbiAgICAgICAgICAvLyBUT0RPOiBUcmlnZ2VyIG5vdGlmaWNhdGlvbiBmb3IgdW5hdXRob3JpemVkLlxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XHJcbiAgICAgIH0pKTtcclxuICB9XHJcbn1cclxuIl19
1
+ import { Injectable, Injector, isDevMode } from "@angular/core";
2
+ import { throwError } from "rxjs";
3
+ import { catchError } from "rxjs/operators";
4
+ import { AuthenticationService } from "./authentication.service";
5
+ import * as i0 from "@angular/core";
6
+ export class AuthorizationInterceptor {
7
+ constructor(injector) {
8
+ this.injector = injector;
9
+ }
10
+ intercept(req, next) {
11
+ if (isDevMode()) {
12
+ console.debug("AuthorizationInterceptor.intercept");
13
+ }
14
+ let authService = this.injector.get(AuthenticationService);
15
+ //Don't want to include background token refreshes in considering the user 'active'
16
+ if (req.url !== authService.tokenLocation()) {
17
+ //Update user activity. Done here instead of the previous method using a subscription to a subject in AuthenticationProvider
18
+ authService.updateUserActivity();
19
+ }
20
+ let headers = authService.getHeaders(req);
21
+ let url = req.url;
22
+ if (url.startsWith("/")) {
23
+ url = authService.getBaseUrl() + url;
24
+ }
25
+ else if (!url.startsWith("http")) {
26
+ if (authService.getContextRoot().length > 0) {
27
+ url = authService.getBaseUrl() + "/" + authService.getContextRoot() + "/" + url;
28
+ }
29
+ else {
30
+ url = authService.getBaseUrl() + "/" + url;
31
+ }
32
+ }
33
+ let params = req.params;
34
+ if (url.indexOf("/crud/") > 0) {
35
+ params = params.set("maxViewPermission", authService.getMaxViewPermission());
36
+ }
37
+ let reqClone = req.clone({
38
+ url: url,
39
+ withCredentials: true,
40
+ headers: headers,
41
+ params: params
42
+ });
43
+ return next.handle(reqClone)
44
+ .pipe(catchError((error) => {
45
+ if (isDevMode()) {
46
+ console.error("AuthorizationInterceptor.error");
47
+ console.error(error);
48
+ }
49
+ /**
50
+ * If the token is not authenticated which angular does not know about, then a REST request to the backend will
51
+ * return a 401. To duplicate this, open Core in two tabs. In one tab, logout, in the other, perform a request
52
+ * that hits a protected resource.
53
+ */
54
+ if (error.status === 401) {
55
+ authService.isAuthenticated().subscribe((authenticated) => {
56
+ if (authenticated) {
57
+ // If authenticated, then logout which will redirect.
58
+ authService.logout(true);
59
+ return throwError(error.message);
60
+ }
61
+ else {
62
+ // Otherwise, for example, when the user first opens Core, 401s are expected.
63
+ return throwError(error);
64
+ }
65
+ });
66
+ }
67
+ if (error.status === 403) {
68
+ // TODO: Trigger notification for unauthorized.
69
+ }
70
+ return throwError(error);
71
+ }));
72
+ }
73
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthorizationInterceptor, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
74
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthorizationInterceptor }); }
75
+ }
76
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthorizationInterceptor, decorators: [{
77
+ type: Injectable
78
+ }], ctorParameters: () => [{ type: i0.Injector }] });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aG9yaXphdGlvbi5pbnRlcmNlcHRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2F1dGhlbnRpY2F0aW9uL3NyYy9hdXRob3JpemF0aW9uLmludGVyY2VwdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUc5RCxPQUFPLEVBQWEsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQzs7QUFHL0QsTUFBTSxPQUFPLHdCQUF3QjtJQUVuQyxZQUFvQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQUcsQ0FBQztJQUUxQyxTQUFTLENBQUMsR0FBcUIsRUFBRSxJQUFpQjtRQUNoRCxJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ3RELENBQUM7UUFFRCxJQUFJLFdBQVcsR0FBMEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUVsRixtRkFBbUY7UUFDbkYsSUFBSSxHQUFHLENBQUMsR0FBRyxLQUFLLFdBQVcsQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDO1lBQzVDLDRIQUE0SDtZQUM1SCxXQUFXLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO1FBRUQsSUFBSSxPQUFPLEdBQWdCLFdBQVcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkQsSUFBSSxHQUFHLEdBQVcsR0FBRyxDQUFDLEdBQUcsQ0FBQztRQUMxQixJQUFJLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4QixHQUFHLEdBQUcsV0FBVyxDQUFDLFVBQVUsRUFBRSxHQUFHLEdBQUcsQ0FBQztRQUN2QyxDQUFDO2FBQU0sSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQyxJQUFJLFdBQVcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzVDLEdBQUcsR0FBRyxXQUFXLENBQUMsVUFBVSxFQUFFLEdBQUcsR0FBRyxHQUFHLFdBQVcsQ0FBQyxjQUFjLEVBQUUsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQ2xGLENBQUM7aUJBQU0sQ0FBQztnQkFDTixHQUFHLEdBQUcsV0FBVyxDQUFDLFVBQVUsRUFBRSxHQUFHLEdBQUcsR0FBRyxHQUFHLENBQUM7WUFDN0MsQ0FBQztRQUNILENBQUM7UUFFRCxJQUFJLE1BQU0sR0FBZSxHQUFHLENBQUMsTUFBTSxDQUFDO1FBQ3BDLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxXQUFXLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDO1FBQy9FLENBQUM7UUFFRCxJQUFJLFFBQVEsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO1lBQ3ZCLEdBQUcsRUFBRSxHQUFHO1lBQ1IsZUFBZSxFQUFFLElBQUk7WUFDckIsT0FBTyxFQUFFLE9BQU87WUFDaEIsTUFBTSxFQUFFLE1BQU07U0FDZixDQUFDLENBQUM7UUFFSCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDO2FBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtZQUN6QixJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUM7Z0JBQ2hCLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztnQkFDaEQsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN2QixDQUFDO1lBRUQ7Ozs7ZUFJRztZQUNILElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQztnQkFDekIsV0FBVyxDQUFDLGVBQWUsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFO29CQUN4RCxJQUFJLGFBQWEsRUFBRSxDQUFDO3dCQUNsQixxREFBcUQ7d0JBQ3JELFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7d0JBQ3pCLE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztvQkFDbkMsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLDZFQUE2RTt3QkFDN0UsT0FBTyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzNCLENBQUM7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1lBQ0QsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO2dCQUN6QiwrQ0FBK0M7WUFDakQsQ0FBQztZQUNELE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDOzhHQXRFVSx3QkFBd0I7a0hBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFEcEMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgSW5qZWN0b3IsIGlzRGV2TW9kZX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtIdHRwUmVxdWVzdCwgSHR0cEhhbmRsZXIsIEh0dHBFdmVudCwgSHR0cEludGVyY2VwdG9yLCBIdHRwSGVhZGVycywgSHR0cFBhcmFtc30gZnJvbSBcIkBhbmd1bGFyL2NvbW1vbi9odHRwXCI7XHJcblxyXG5pbXBvcnQge09ic2VydmFibGUsIHRocm93RXJyb3J9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7Y2F0Y2hFcnJvcn0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG5pbXBvcnQge0F1dGhlbnRpY2F0aW9uU2VydmljZX0gZnJvbSBcIi4vYXV0aGVudGljYXRpb24uc2VydmljZVwiO1xyXG5cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgQXV0aG9yaXphdGlvbkludGVyY2VwdG9yIGltcGxlbWVudHMgSHR0cEludGVyY2VwdG9yIHtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IpIHt9XHJcblxyXG4gIGludGVyY2VwdChyZXE6IEh0dHBSZXF1ZXN0PGFueT4sIG5leHQ6IEh0dHBIYW5kbGVyKTogT2JzZXJ2YWJsZTxIdHRwRXZlbnQ8YW55Pj4ge1xyXG4gICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgIGNvbnNvbGUuZGVidWcoXCJBdXRob3JpemF0aW9uSW50ZXJjZXB0b3IuaW50ZXJjZXB0XCIpO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICBsZXQgYXV0aFNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KEF1dGhlbnRpY2F0aW9uU2VydmljZSk7XHJcbiAgICBcclxuICAgIC8vRG9uJ3Qgd2FudCB0byBpbmNsdWRlIGJhY2tncm91bmQgdG9rZW4gcmVmcmVzaGVzIGluIGNvbnNpZGVyaW5nIHRoZSB1c2VyICdhY3RpdmUnXHJcbiAgICBpZiAocmVxLnVybCAhPT0gYXV0aFNlcnZpY2UudG9rZW5Mb2NhdGlvbigpKSB7XHJcbiAgICAgIC8vVXBkYXRlIHVzZXIgYWN0aXZpdHkuIERvbmUgaGVyZSBpbnN0ZWFkIG9mIHRoZSBwcmV2aW91cyBtZXRob2QgdXNpbmcgYSBzdWJzY3JpcHRpb24gdG8gYSBzdWJqZWN0IGluIEF1dGhlbnRpY2F0aW9uUHJvdmlkZXJcclxuICAgICAgYXV0aFNlcnZpY2UudXBkYXRlVXNlckFjdGl2aXR5KCk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGxldCBoZWFkZXJzOiBIdHRwSGVhZGVycyA9IGF1dGhTZXJ2aWNlLmdldEhlYWRlcnMocmVxKTtcclxuICAgIGxldCB1cmw6IHN0cmluZyA9IHJlcS51cmw7XHJcbiAgICBpZiAodXJsLnN0YXJ0c1dpdGgoXCIvXCIpKSB7XHJcbiAgICAgIHVybCA9IGF1dGhTZXJ2aWNlLmdldEJhc2VVcmwoKSArIHVybDtcclxuICAgIH0gZWxzZSBpZiAoIXVybC5zdGFydHNXaXRoKFwiaHR0cFwiKSkge1xyXG4gICAgICBpZiAoYXV0aFNlcnZpY2UuZ2V0Q29udGV4dFJvb3QoKS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgdXJsID0gYXV0aFNlcnZpY2UuZ2V0QmFzZVVybCgpICsgXCIvXCIgKyBhdXRoU2VydmljZS5nZXRDb250ZXh0Um9vdCgpICsgXCIvXCIgKyB1cmw7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdXJsID0gYXV0aFNlcnZpY2UuZ2V0QmFzZVVybCgpICsgXCIvXCIgKyB1cmw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBsZXQgcGFyYW1zOiBIdHRwUGFyYW1zID0gcmVxLnBhcmFtcztcclxuICAgIGlmICh1cmwuaW5kZXhPZihcIi9jcnVkL1wiKSA+IDApIHtcclxuICAgICAgcGFyYW1zID0gcGFyYW1zLnNldChcIm1heFZpZXdQZXJtaXNzaW9uXCIsIGF1dGhTZXJ2aWNlLmdldE1heFZpZXdQZXJtaXNzaW9uKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCByZXFDbG9uZSA9IHJlcS5jbG9uZSh7XHJcbiAgICAgIHVybDogdXJsLFxyXG4gICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWUsXHJcbiAgICAgIGhlYWRlcnM6IGhlYWRlcnMsXHJcbiAgICAgIHBhcmFtczogcGFyYW1zXHJcbiAgICB9KTtcclxuXHJcbiAgICByZXR1cm4gbmV4dC5oYW5kbGUocmVxQ2xvbmUpXHJcbiAgICAgIC5waXBlKGNhdGNoRXJyb3IoKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGlzRGV2TW9kZSgpKSB7XHJcbiAgICAgICAgICBjb25zb2xlLmVycm9yKFwiQXV0aG9yaXphdGlvbkludGVyY2VwdG9yLmVycm9yXCIpO1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKipcclxuICAgICAgICAgKiBJZiB0aGUgdG9rZW4gaXMgbm90IGF1dGhlbnRpY2F0ZWQgd2hpY2ggYW5ndWxhciBkb2VzIG5vdCBrbm93IGFib3V0LCB0aGVuIGEgUkVTVCByZXF1ZXN0IHRvIHRoZSBiYWNrZW5kIHdpbGxcclxuICAgICAgICAgKiByZXR1cm4gYSA0MDEuICBUbyBkdXBsaWNhdGUgdGhpcywgb3BlbiBDb3JlIGluIHR3byB0YWJzLiAgSW4gb25lIHRhYiwgbG9nb3V0LCBpbiB0aGUgb3RoZXIsIHBlcmZvcm0gYSByZXF1ZXN0XHJcbiAgICAgICAgICogdGhhdCBoaXRzIGEgcHJvdGVjdGVkIHJlc291cmNlLlxyXG4gICAgICAgICAqL1xyXG4gICAgICAgIGlmIChlcnJvci5zdGF0dXMgPT09IDQwMSkge1xyXG4gICAgICAgICAgYXV0aFNlcnZpY2UuaXNBdXRoZW50aWNhdGVkKCkuc3Vic2NyaWJlKChhdXRoZW50aWNhdGVkKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChhdXRoZW50aWNhdGVkKSB7XHJcbiAgICAgICAgICAgICAgLy8gSWYgYXV0aGVudGljYXRlZCwgdGhlbiBsb2dvdXQgd2hpY2ggd2lsbCByZWRpcmVjdC5cclxuICAgICAgICAgICAgICBhdXRoU2VydmljZS5sb2dvdXQodHJ1ZSk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoZXJyb3IubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgLy8gT3RoZXJ3aXNlLCBmb3IgZXhhbXBsZSwgd2hlbiB0aGUgdXNlciBmaXJzdCBvcGVucyBDb3JlLCA0MDFzIGFyZSBleHBlY3RlZC5cclxuICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcihlcnJvcik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDMpIHtcclxuICAgICAgICAgIC8vIFRPRE86IFRyaWdnZXIgbm90aWZpY2F0aW9uIGZvciB1bmF1dGhvcml6ZWQuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aHJvd0Vycm9yKGVycm9yKTtcclxuICAgICAgfSkpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,43 +1,43 @@
1
- /*
2
- * Copyright (c) 2016 Huntsman Cancer Institute at the University of Utah, Confidential and Proprietary
3
- */
4
- import { Component } from "@angular/core";
5
- import { AuthenticationService } from "./authentication.service";
6
- import { UntypedFormBuilder, Validators } from "@angular/forms";
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "./authentication.service";
9
- import * as i2 from "@angular/forms";
10
- import * as i3 from "@angular/common";
11
- export class DirectLoginComponent {
12
- constructor(_authenticationService, _formBuilder) {
13
- this._authenticationService = _authenticationService;
14
- this._formBuilder = _formBuilder;
15
- }
16
- /**
17
- * Initializes the authentication form.
18
- */
19
- ngOnInit() {
20
- this._loginForm = this._formBuilder.group({
21
- username: ["", Validators.required],
22
- password: ["", Validators.required]
23
- });
24
- }
25
- /**
26
- * A function to submit the login form the the {@link UserService}.
27
- */
28
- login() {
29
- this._authenticationService.login(this._loginForm.value.username, this._loginForm.value.password)
30
- .subscribe((res) => {
31
- if (res) {
32
- this._errorMsg = null;
33
- this._authenticationService.requestAccessToken(true);
34
- }
35
- }, (error) => {
36
- this._errorMsg = "Please check your username and password.";
37
- });
38
- }
39
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DirectLoginComponent, deps: [{ token: i1.AuthenticationService }, { token: i2.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
40
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DirectLoginComponent, selector: "hci-login-form", ngImport: i0, template: `
1
+ /*
2
+ * Copyright (c) 2016 Huntsman Cancer Institute at the University of Utah, Confidential and Proprietary
3
+ */
4
+ import { Component } from "@angular/core";
5
+ import { AuthenticationService } from "./authentication.service";
6
+ import { UntypedFormBuilder, Validators } from "@angular/forms";
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "./authentication.service";
9
+ import * as i2 from "@angular/forms";
10
+ import * as i3 from "@angular/common";
11
+ export class DirectLoginComponent {
12
+ constructor(_authenticationService, _formBuilder) {
13
+ this._authenticationService = _authenticationService;
14
+ this._formBuilder = _formBuilder;
15
+ }
16
+ /**
17
+ * Initializes the authentication form.
18
+ */
19
+ ngOnInit() {
20
+ this._loginForm = this._formBuilder.group({
21
+ username: ["", Validators.required],
22
+ password: ["", Validators.required]
23
+ });
24
+ }
25
+ /**
26
+ * A function to submit the login form the the {@link UserService}.
27
+ */
28
+ login() {
29
+ this._authenticationService.login(this._loginForm.value.username, this._loginForm.value.password)
30
+ .subscribe((res) => {
31
+ if (res) {
32
+ this._errorMsg = null;
33
+ this._authenticationService.requestAccessToken(true);
34
+ }
35
+ }, (error) => {
36
+ this._errorMsg = "Please check your username and password.";
37
+ });
38
+ }
39
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DirectLoginComponent, deps: [{ token: i1.AuthenticationService }, { token: i2.UntypedFormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
40
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: DirectLoginComponent, selector: "hci-login-form", ngImport: i0, template: `
41
41
  <div class="container">
42
42
  <div class="login-box" id="hci-login-form-box">
43
43
  <div class="login-heading" id="hci-login-form-heading">
@@ -62,10 +62,10 @@ export class DirectLoginComponent {
62
62
  </div>
63
63
  </div>
64
64
  </div>
65
- `, isInline: true, styles: [".container{max-width:400px;margin-top:20px;padding-top:15px}.login-box{border-radius:10px;box-shadow:0 0 2px #ccc;padding:15px}.login-box .login-heading h3{line-height:1.5;margin:0 0 10px}.login-box .form-control{padding:10px;border:1px solid #ccc}.login-box input[type=password]{margin-bottom:10px;border-top-left-radius:0;border-top-right-radius:0}.login-box input[type=text]{margin-bottom:-1px;border-bottom-right-radius:0;border-bottom-left-radius:0}.login-box .alert-box{margin:10px 0 -5px}.login-box .alert-text{font-size:small}.login-box .btn-box{margin:10px 0 0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
66
- }
67
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DirectLoginComponent, decorators: [{
68
- type: Component,
65
+ `, isInline: true, styles: [".container{max-width:400px;margin-top:20px;padding-top:15px}.login-box{border-radius:10px;box-shadow:0 0 2px #ccc;padding:15px}.login-box .login-heading h3{line-height:1.5;margin:0 0 10px}.login-box .form-control{padding:10px;border:1px solid #ccc}.login-box input[type=password]{margin-bottom:10px;border-top-left-radius:0;border-top-right-radius:0}.login-box input[type=text]{margin-bottom:-1px;border-bottom-right-radius:0;border-bottom-left-radius:0}.login-box .alert-box{margin:10px 0 -5px}.login-box .alert-text{font-size:small}.login-box .btn-box{margin:10px 0 0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DirectLoginComponent, decorators: [{
68
+ type: Component,
69
69
  args: [{ selector: "hci-login-form", template: `
70
70
  <div class="container">
71
71
  <div class="login-box" id="hci-login-form-box">
@@ -91,6 +91,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
91
91
  </div>
92
92
  </div>
93
93
  </div>
94
- `, styles: [".container{max-width:400px;margin-top:20px;padding-top:15px}.login-box{border-radius:10px;box-shadow:0 0 2px #ccc;padding:15px}.login-box .login-heading h3{line-height:1.5;margin:0 0 10px}.login-box .form-control{padding:10px;border:1px solid #ccc}.login-box input[type=password]{margin-bottom:10px;border-top-left-radius:0;border-top-right-radius:0}.login-box input[type=text]{margin-bottom:-1px;border-bottom-right-radius:0;border-bottom-left-radius:0}.login-box .alert-box{margin:10px 0 -5px}.login-box .alert-text{font-size:small}.login-box .btn-box{margin:10px 0 0}\n"] }]
95
- }], ctorParameters: function () { return [{ type: i1.AuthenticationService }, { type: i2.UntypedFormBuilder }]; } });
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0bG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYXV0aGVudGljYXRpb24vc3JjL2RpcmVjdGxvZ2luLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGtCQUFrQixFQUFvQixVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUE4RWhGLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsWUFBb0Isc0JBQTZDLEVBQVUsWUFBZ0M7UUFBdkYsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtJQUFHLENBQUM7SUFFL0c7O09BRUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztZQUN4QyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNuQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLO1FBQ0gsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO2FBQzlGLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLElBQUksR0FBRyxFQUFFO2dCQUNQLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO2dCQUN0QixJQUFJLENBQUMsc0JBQXNCLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDdEQ7UUFDSCxDQUFDLEVBQUUsQ0FBQyxLQUFVLEVBQUUsRUFBRTtZQUNoQixJQUFJLENBQUMsU0FBUyxHQUFHLDBDQUEwQyxDQUFDO1FBQzlELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0E3QlUsb0JBQW9CO21HQUFwQixvQkFBb0Isc0RBMUVyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQXlCUDs7NEZBaURRLG9CQUFvQjtrQkE1RWhDLFNBQVM7K0JBQ0UsZ0JBQWdCLFlBQ2hCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0tBeUJQIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuICogQ29weXJpZ2h0IChjKSAyMDE2IEh1bnRzbWFuIENhbmNlciBJbnN0aXR1dGUgYXQgdGhlIFVuaXZlcnNpdHkgb2YgVXRhaCwgQ29uZmlkZW50aWFsIGFuZCBQcm9wcmlldGFyeVxyXG4gKi9cclxuaW1wb3J0IHtDb21wb25lbnQsIE9uSW5pdH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtBdXRoZW50aWNhdGlvblNlcnZpY2V9IGZyb20gXCIuL2F1dGhlbnRpY2F0aW9uLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnN9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiaGNpLWxvZ2luLWZvcm1cIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibG9naW4tYm94XCIgaWQ9XCJoY2ktbG9naW4tZm9ybS1ib3hcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibG9naW4taGVhZGluZ1wiIGlkPVwiaGNpLWxvZ2luLWZvcm0taGVhZGluZ1wiPlxyXG4gICAgICAgICAgPGgzPlNpZ24gaW48L2gzPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJwYW5lbC1ib2R5XCI+XHJcbiAgICAgICAgICA8Zm9ybSBbZm9ybUdyb3VwXT1cIl9sb2dpbkZvcm1cIiAobmdTdWJtaXQpPVwibG9naW4oKVwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGlkPVwidXNlcm5hbWVcIiBuYW1lPVwidXNlcm5hbWVcIiBwbGFjZWhvbGRlcj1cIlVzZXJuYW1lXCIgdHlwZT1cInRleHRcIj5cclxuICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cInBhc3N3b3JkXCIgbmFtZT1cInBhc3N3b3JkXCIgdHlwZT1cInBhc3N3b3JkXCIgcGxhY2Vob2xkZXI9XCJQYXNzd29yZFwiPlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIl9lcnJvck1zZ1wiIGNsYXNzPVwiYWxlcnQtYm94XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsZXJ0IGFsZXJ0LWRhbmdlclwiPlxyXG4gICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwiYWxlcnQtaGVhZGluZ1wiPkF1dGhlbnRpY2F0aW9uIEZhaWxlZDwvaDU+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBpZD1cImhjaS1sb2dpbi1lcnJvclwiIGNsYXNzPVwiYWxlcnQtdGV4dFwiPnt7X2Vycm9yTXNnfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgXHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJidG4tYm94XCI+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeVwiIGlkPVwiaGNpLWxvZ2luLWZvcm0tc3VibWl0LWJ1dHRvblwiIHR5cGU9XCJzdWJtaXRcIiBbZGlzYWJsZWRdPVwiIV9sb2dpbkZvcm0udmFsaWRcIj5Mb2dpbjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZm9ybT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIGAsXHJcbiAgc3R5bGVzOiBbYFxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9naW4tYm94IHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgYm94LXNoYWRvdzogMCAwIDJweCAjY2NjO1xyXG4gICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9naW4tYm94IC5sb2dpbi1oZWFkaW5nIGgzIHtcclxuICAgICAgbGluZS1oZWlnaHQ6MS41O1xyXG4gICAgICBtYXJnaW46IDAgMCAxMHB4XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5sb2dpbi1ib3ggLmZvcm0tY29udHJvbCB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5sb2dpbi1ib3ggaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5sb2dpbi1ib3ggaW5wdXRbdHlwZT1cInRleHRcIl0ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xyXG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmxvZ2luLWJveCAuYWxlcnQtYm94IHtcclxuICAgICAgbWFyZ2luOiAxMHB4IDAgLTVweCAwXHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5sb2dpbi1ib3ggLmFsZXJ0LXRleHQge1xyXG4gICAgICBmb250LXNpemU6IHNtYWxsO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9naW4tYm94IC5idG4tYm94IHtcclxuICAgICAgbWFyZ2luOiAxMHB4IDAgMHB4IDBcclxuICAgIH1cclxuICBgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGlyZWN0TG9naW5Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHB1YmxpYyBfbG9naW5Gb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG4gIHB1YmxpYyBfZXJyb3JNc2c6IHN0cmluZztcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBfYXV0aGVudGljYXRpb25TZXJ2aWNlOiBBdXRoZW50aWNhdGlvblNlcnZpY2UsIHByaXZhdGUgX2Zvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIpIHt9XHJcblxyXG4gIC8qKlxyXG4gICAqIEluaXRpYWxpemVzIHRoZSBhdXRoZW50aWNhdGlvbiBmb3JtLlxyXG4gICAqL1xyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbG9naW5Gb3JtID0gdGhpcy5fZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG4gICAgICB1c2VybmFtZTogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBwYXNzd29yZDogW1wiXCIsIFZhbGlkYXRvcnMucmVxdWlyZWRdXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEEgZnVuY3Rpb24gdG8gc3VibWl0IHRoZSBsb2dpbiBmb3JtIHRoZSB0aGUge0BsaW5rIFVzZXJTZXJ2aWNlfS5cclxuICAgKi9cclxuICBsb2dpbigpIHtcclxuICAgIHRoaXMuX2F1dGhlbnRpY2F0aW9uU2VydmljZS5sb2dpbih0aGlzLl9sb2dpbkZvcm0udmFsdWUudXNlcm5hbWUsIHRoaXMuX2xvZ2luRm9ybS52YWx1ZS5wYXNzd29yZClcclxuICAgICAgLnN1YnNjcmliZSgocmVzKSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcykge1xyXG4gICAgICAgICAgdGhpcy5fZXJyb3JNc2cgPSBudWxsO1xyXG4gICAgICAgICAgdGhpcy5fYXV0aGVudGljYXRpb25TZXJ2aWNlLnJlcXVlc3RBY2Nlc3NUb2tlbih0cnVlKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sIChlcnJvcjogYW55KSA9PiB7XHJcbiAgICAgICAgdGhpcy5fZXJyb3JNc2cgPSBcIlBsZWFzZSBjaGVjayB5b3VyIHVzZXJuYW1lIGFuZCBwYXNzd29yZC5cIjtcclxuICAgICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
94
+ `, styles: [".container{max-width:400px;margin-top:20px;padding-top:15px}.login-box{border-radius:10px;box-shadow:0 0 2px #ccc;padding:15px}.login-box .login-heading h3{line-height:1.5;margin:0 0 10px}.login-box .form-control{padding:10px;border:1px solid #ccc}.login-box input[type=password]{margin-bottom:10px;border-top-left-radius:0;border-top-right-radius:0}.login-box input[type=text]{margin-bottom:-1px;border-bottom-right-radius:0;border-bottom-left-radius:0}.login-box .alert-box{margin:10px 0 -5px}.login-box .alert-text{font-size:small}.login-box .btn-box{margin:10px 0 0}\n"] }]
95
+ }], ctorParameters: () => [{ type: i1.AuthenticationService }, { type: i2.UntypedFormBuilder }] });
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlyZWN0bG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvYXV0aGVudGljYXRpb24vc3JjL2RpcmVjdGxvZ2luLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE9BQU8sRUFBQyxTQUFTLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFDLGtCQUFrQixFQUFvQixVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUE4RWhGLE1BQU0sT0FBTyxvQkFBb0I7SUFJL0IsWUFBb0Isc0JBQTZDLEVBQVUsWUFBZ0M7UUFBdkYsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQUFVLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtJQUFHLENBQUM7SUFFL0c7O09BRUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQztZQUN4QyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNuQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLO1FBQ0gsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO2FBQzlGLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2pCLElBQUksR0FBRyxFQUFFLENBQUM7Z0JBQ1IsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2RCxDQUFDO1FBQ0gsQ0FBQyxFQUFFLENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDaEIsSUFBSSxDQUFDLFNBQVMsR0FBRywwQ0FBMEMsQ0FBQztRQUM5RCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBN0JVLG9CQUFvQjtrR0FBcEIsb0JBQW9CLHNEQTFFckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7S0F5QlA7OzJGQWlEUSxvQkFBb0I7a0JBNUVoQyxTQUFTOytCQUNFLGdCQUFnQixZQUNoQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQXlCUCIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNiBIdW50c21hbiBDYW5jZXIgSW5zdGl0dXRlIGF0IHRoZSBVbml2ZXJzaXR5IG9mIFV0YWgsIENvbmZpZGVudGlhbCBhbmQgUHJvcHJpZXRhcnlcclxuICovXHJcbmltcG9ydCB7Q29tcG9uZW50LCBPbkluaXR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7QXV0aGVudGljYXRpb25TZXJ2aWNlfSBmcm9tIFwiLi9hdXRoZW50aWNhdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VW50eXBlZEZvcm1CdWlsZGVyLCBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0b3JzfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImhjaS1sb2dpbi1mb3JtXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cImxvZ2luLWJveFwiIGlkPVwiaGNpLWxvZ2luLWZvcm0tYm94XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImxvZ2luLWhlYWRpbmdcIiBpZD1cImhjaS1sb2dpbi1mb3JtLWhlYWRpbmdcIj5cclxuICAgICAgICAgIDxoMz5TaWduIGluPC9oMz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicGFuZWwtYm9keVwiPlxyXG4gICAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJfbG9naW5Gb3JtXCIgKG5nU3VibWl0KT1cImxvZ2luKClcIj5cclxuICAgICAgICAgICAgPGlucHV0IGZvcm1Db250cm9sTmFtZT1cInVzZXJuYW1lXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBpZD1cInVzZXJuYW1lXCIgbmFtZT1cInVzZXJuYW1lXCIgcGxhY2Vob2xkZXI9XCJVc2VybmFtZVwiIHR5cGU9XCJ0ZXh0XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgaWQ9XCJwYXNzd29yZFwiIG5hbWU9XCJwYXNzd29yZFwiIHR5cGU9XCJwYXNzd29yZFwiIHBsYWNlaG9sZGVyPVwiUGFzc3dvcmRcIj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJfZXJyb3JNc2dcIiBjbGFzcz1cImFsZXJ0LWJveFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbGVydCBhbGVydC1kYW5nZXJcIj5cclxuICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cImFsZXJ0LWhlYWRpbmdcIj5BdXRoZW50aWNhdGlvbiBGYWlsZWQ8L2g1PlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gaWQ9XCJoY2ktbG9naW4tZXJyb3JcIiBjbGFzcz1cImFsZXJ0LXRleHRcIj57e19lcnJvck1zZ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgIFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYnRuLWJveFwiPlxyXG4gICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiBpZD1cImhjaS1sb2dpbi1mb3JtLXN1Ym1pdC1idXR0b25cIiB0eXBlPVwic3VibWl0XCIgW2Rpc2FibGVkXT1cIiFfbG9naW5Gb3JtLnZhbGlkXCI+TG9naW48L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICBgLFxyXG4gIHN0eWxlczogW2BcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmxvZ2luLWJveCB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAycHggI2NjYztcclxuICAgICAgcGFkZGluZzogMTVweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmxvZ2luLWJveCAubG9naW4taGVhZGluZyBoMyB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNTtcclxuICAgICAgbWFyZ2luOiAwIDAgMTBweFxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9naW4tYm94IC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9naW4tYm94IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9naW4tYm94IGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogLTFweDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5sb2dpbi1ib3ggLmFsZXJ0LWJveCB7XHJcbiAgICAgIG1hcmdpbjogMTBweCAwIC01cHggMFxyXG4gICAgfVxyXG4gICAgXHJcbiAgICAubG9naW4tYm94IC5hbGVydC10ZXh0IHtcclxuICAgICAgZm9udC1zaXplOiBzbWFsbDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmxvZ2luLWJveCAuYnRuLWJveCB7XHJcbiAgICAgIG1hcmdpbjogMTBweCAwIDBweCAwXHJcbiAgICB9XHJcbiAgYF1cclxufSlcclxuZXhwb3J0IGNsYXNzIERpcmVjdExvZ2luQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBwdWJsaWMgX2xvZ2luRm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuICBwdWJsaWMgX2Vycm9yTXNnOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2F1dGhlbnRpY2F0aW9uU2VydmljZTogQXV0aGVudGljYXRpb25TZXJ2aWNlLCBwcml2YXRlIF9mb3JtQnVpbGRlcjogVW50eXBlZEZvcm1CdWlsZGVyKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBJbml0aWFsaXplcyB0aGUgYXV0aGVudGljYXRpb24gZm9ybS5cclxuICAgKi9cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2xvZ2luRm9ybSA9IHRoaXMuX2Zvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgdXNlcm5hbWU6IFtcIlwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgcGFzc3dvcmQ6IFtcIlwiLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBIGZ1bmN0aW9uIHRvIHN1Ym1pdCB0aGUgbG9naW4gZm9ybSB0aGUgdGhlIHtAbGluayBVc2VyU2VydmljZX0uXHJcbiAgICovXHJcbiAgbG9naW4oKSB7XHJcbiAgICB0aGlzLl9hdXRoZW50aWNhdGlvblNlcnZpY2UubG9naW4odGhpcy5fbG9naW5Gb3JtLnZhbHVlLnVzZXJuYW1lLCB0aGlzLl9sb2dpbkZvcm0udmFsdWUucGFzc3dvcmQpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHJlcykgPT4ge1xyXG4gICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgIHRoaXMuX2Vycm9yTXNnID0gbnVsbDtcclxuICAgICAgICAgIHRoaXMuX2F1dGhlbnRpY2F0aW9uU2VydmljZS5yZXF1ZXN0QWNjZXNzVG9rZW4odHJ1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9LCAoZXJyb3I6IGFueSkgPT4ge1xyXG4gICAgICAgIHRoaXMuX2Vycm9yTXNnID0gXCJQbGVhc2UgY2hlY2sgeW91ciB1c2VybmFtZSBhbmQgcGFzc3dvcmQuXCI7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './index';
5
5
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHVudHNtYW4tY2FuY2VyLWluc3RpdHV0ZS1hdXRoZW50aWNhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2F1dGhlbnRpY2F0aW9uL3NyYy9odW50c21hbi1jYW5jZXItaW5zdGl0dXRlLWF1dGhlbnRpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
package/esm2022/index.mjs CHANGED
@@ -1,13 +1,13 @@
1
- export { AuthenticationModule } from "./authentication.module";
2
- /**
3
- * The injection tokens for service configuration.
4
- */
5
- export { AUTHENTICATION_LOGOUT_PATH, AUTHENTICATION_SERVER_URL, AUTHENTICATION_TOKEN_ENDPOINT, AUTHENTICATION_DIRECT_ENDPOINT, AUTHENTICATION_ROUTE, AUTHENTICATION_MAX_INACTIVITY_MINUTES, AUTHENTICATION_USER_COUNTDOWN_SECONDS, AUTHENTICATION_IDP_INACTIVITY_MINUTES } from "./authentication.service";
6
- export { AUTHENTICATION_TOKEN_KEY } from "./authentication.provider";
7
- export { AuthenticationComponent } from "./authentication.component";
8
- export { DirectLoginComponent } from "./directlogin.component";
9
- export { RouteGuardService } from "./route-guard.service";
10
- export { AuthenticationService } from "./authentication.service";
11
- export { TimeoutNotificationComponent } from "./timeout-notification.component";
12
- export { AuthorizationInterceptor } from "./authorization.interceptor";
1
+ export { AuthenticationModule } from "./authentication.module";
2
+ /**
3
+ * The injection tokens for service configuration.
4
+ */
5
+ export { AUTHENTICATION_LOGOUT_PATH, AUTHENTICATION_SERVER_URL, AUTHENTICATION_TOKEN_ENDPOINT, AUTHENTICATION_DIRECT_ENDPOINT, AUTHENTICATION_ROUTE, AUTHENTICATION_MAX_INACTIVITY_MINUTES, AUTHENTICATION_USER_COUNTDOWN_SECONDS, AUTHENTICATION_IDP_INACTIVITY_MINUTES } from "./authentication.service";
6
+ export { AUTHENTICATION_TOKEN_KEY } from "./authentication.provider";
7
+ export { AuthenticationComponent } from "./authentication.component";
8
+ export { DirectLoginComponent } from "./directlogin.component";
9
+ export { RouteGuardService } from "./route-guard.service";
10
+ export { AuthenticationService } from "./authentication.service";
11
+ export { TimeoutNotificationComponent } from "./timeout-notification.component";
12
+ export { AuthorizationInterceptor } from "./authorization.interceptor";
13
13
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9hdXRoZW50aWNhdGlvbi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFFN0Q7O0dBRUc7QUFDSCxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLHlCQUF5QixFQUN6Qiw2QkFBNkIsRUFDN0IsOEJBQThCLEVBQzlCLG9CQUFvQixFQUNwQixxQ0FBcUMsRUFDckMscUNBQXFDLEVBQ3JDLHFDQUFxQyxFQUN0QyxNQUFNLDBCQUEwQixDQUFDO0FBRWxDLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRW5FLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRCQUE0QixDQUFBO0FBQ2xFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlCQUF5QixDQUFBO0FBQzVELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHVCQUF1QixDQUFBO0FBQ3ZELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDBCQUEwQixDQUFBO0FBQzlELE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzlFLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHtBdXRoZW50aWNhdGlvbk1vZHVsZX0gZnJvbSBcIi4vYXV0aGVudGljYXRpb24ubW9kdWxlXCI7XHJcblxyXG4vKipcclxuICogVGhlIGluamVjdGlvbiB0b2tlbnMgZm9yIHNlcnZpY2UgY29uZmlndXJhdGlvbi5cclxuICovXHJcbmV4cG9ydCB7XHJcbiAgQVVUSEVOVElDQVRJT05fTE9HT1VUX1BBVEgsXHJcbiAgQVVUSEVOVElDQVRJT05fU0VSVkVSX1VSTCxcclxuICBBVVRIRU5USUNBVElPTl9UT0tFTl9FTkRQT0lOVCxcclxuICBBVVRIRU5USUNBVElPTl9ESVJFQ1RfRU5EUE9JTlQsXHJcbiAgQVVUSEVOVElDQVRJT05fUk9VVEUsXHJcbiAgQVVUSEVOVElDQVRJT05fTUFYX0lOQUNUSVZJVFlfTUlOVVRFUyxcclxuICBBVVRIRU5USUNBVElPTl9VU0VSX0NPVU5URE9XTl9TRUNPTkRTLFxyXG4gIEFVVEhFTlRJQ0FUSU9OX0lEUF9JTkFDVElWSVRZX01JTlVURVNcclxufSBmcm9tIFwiLi9hdXRoZW50aWNhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5leHBvcnQge0FVVEhFTlRJQ0FUSU9OX1RPS0VOX0tFWX0gZnJvbSBcIi4vYXV0aGVudGljYXRpb24ucHJvdmlkZXJcIjtcclxuXHJcbmV4cG9ydCB7QXV0aGVudGljYXRpb25Db21wb25lbnR9IGZyb20gXCIuL2F1dGhlbnRpY2F0aW9uLmNvbXBvbmVudFwiXHJcbmV4cG9ydCB7RGlyZWN0TG9naW5Db21wb25lbnR9IGZyb20gXCIuL2RpcmVjdGxvZ2luLmNvbXBvbmVudFwiXHJcbmV4cG9ydCB7Um91dGVHdWFyZFNlcnZpY2V9IGZyb20gXCIuL3JvdXRlLWd1YXJkLnNlcnZpY2VcIlxyXG5leHBvcnQge0F1dGhlbnRpY2F0aW9uU2VydmljZX0gZnJvbSBcIi4vYXV0aGVudGljYXRpb24uc2VydmljZVwiXHJcbmV4cG9ydCB7VGltZW91dE5vdGlmaWNhdGlvbkNvbXBvbmVudH0gZnJvbSBcIi4vdGltZW91dC1ub3RpZmljYXRpb24uY29tcG9uZW50XCI7XHJcbmV4cG9ydCB7QXV0aG9yaXphdGlvbkludGVyY2VwdG9yfSBmcm9tIFwiLi9hdXRob3JpemF0aW9uLmludGVyY2VwdG9yXCI7Il19
@@ -1,22 +1,22 @@
1
- /*
2
- * Copyright (c) 2016 Huntsman Cancer Institute at the University of Utah, Confidential and Proprietary
3
- */
4
- import { inject } from "@angular/core";
5
- import { Router, RouterStateSnapshot } from "@angular/router";
6
- import { AuthenticationService, AUTHENTICATION_ROUTE } from "./authentication.service";
7
- export const RouteGuardService = () => {
8
- const authenticationService = inject(AuthenticationService);
9
- const router = inject(Router);
10
- const state = inject(RouterStateSnapshot);
11
- const authenticationRoute = inject(AUTHENTICATION_ROUTE);
12
- if (authenticationService.isAuthenticated()) {
13
- return true;
14
- }
15
- else {
16
- // Store the attempted URL for redirecting
17
- authenticationService.redirectUrl = state.url;
18
- // Navigate to the login page
19
- return router.navigate([authenticationRoute]);
20
- }
21
- };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtZ3VhcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2F1dGhlbnRpY2F0aW9uL3NyYy9yb3V0ZS1ndWFyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNyQyxPQUFPLEVBQUMsTUFBTSxFQUEwQixtQkFBbUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBS3BGLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBR3JGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsRUFBRTtJQUNwQyxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzVELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLEtBQUssR0FBRSxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN6QyxNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRXpELElBQUkscUJBQXFCLENBQUMsZUFBZSxFQUFFLEVBQUU7UUFDM0MsT0FBTyxJQUFJLENBQUM7S0FDYjtTQUNJO1FBQ0gsMENBQTBDO1FBQzFDLHFCQUFxQixDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBRTlDLDZCQUE2QjtRQUM3QixPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7S0FDL0M7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYgSHVudHNtYW4gQ2FuY2VyIEluc3RpdHV0ZSBhdCB0aGUgVW5pdmVyc2l0eSBvZiBVdGFoLCBDb25maWRlbnRpYWwgYW5kIFByb3ByaWV0YXJ5XHJcbiAqL1xyXG5pbXBvcnQge2luamVjdH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtSb3V0ZXIsIEFjdGl2YXRlZFJvdXRlU25hcHNob3QsIFJvdXRlclN0YXRlU25hcHNob3R9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuXHJcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHttYXB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5cclxuaW1wb3J0IHtBdXRoZW50aWNhdGlvblNlcnZpY2UsIEFVVEhFTlRJQ0FUSU9OX1JPVVRFfSBmcm9tIFwiLi9hdXRoZW50aWNhdGlvbi5zZXJ2aWNlXCI7XHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IFJvdXRlR3VhcmRTZXJ2aWNlID0gKCkgPT4ge1xyXG4gIGNvbnN0IGF1dGhlbnRpY2F0aW9uU2VydmljZSA9IGluamVjdChBdXRoZW50aWNhdGlvblNlcnZpY2UpO1xyXG4gIGNvbnN0IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xyXG4gIGNvbnN0IHN0YXRlID1pbmplY3QoUm91dGVyU3RhdGVTbmFwc2hvdCk7XHJcbiAgY29uc3QgYXV0aGVudGljYXRpb25Sb3V0ZSA9IGluamVjdChBVVRIRU5USUNBVElPTl9ST1VURSk7XHJcblxyXG4gIGlmIChhdXRoZW50aWNhdGlvblNlcnZpY2UuaXNBdXRoZW50aWNhdGVkKCkpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICBlbHNlIHtcclxuICAgIC8vIFN0b3JlIHRoZSBhdHRlbXB0ZWQgVVJMIGZvciByZWRpcmVjdGluZ1xyXG4gICAgYXV0aGVudGljYXRpb25TZXJ2aWNlLnJlZGlyZWN0VXJsID0gc3RhdGUudXJsO1xyXG5cclxuICAgIC8vIE5hdmlnYXRlIHRvIHRoZSBsb2dpbiBwYWdlXHJcbiAgICByZXR1cm4gcm91dGVyLm5hdmlnYXRlKFthdXRoZW50aWNhdGlvblJvdXRlXSk7XHJcbiAgfVxyXG59O1xyXG5cclxuXHJcbiJdfQ==
1
+ /*
2
+ * Copyright (c) 2016 Huntsman Cancer Institute at the University of Utah, Confidential and Proprietary
3
+ */
4
+ import { inject } from "@angular/core";
5
+ import { Router, RouterStateSnapshot } from "@angular/router";
6
+ import { AuthenticationService, AUTHENTICATION_ROUTE } from "./authentication.service";
7
+ export const RouteGuardService = () => {
8
+ const authenticationService = inject(AuthenticationService);
9
+ const router = inject(Router);
10
+ const state = inject(RouterStateSnapshot);
11
+ const authenticationRoute = inject(AUTHENTICATION_ROUTE);
12
+ if (authenticationService.isAuthenticated()) {
13
+ return true;
14
+ }
15
+ else {
16
+ // Store the attempted URL for redirecting
17
+ authenticationService.redirectUrl = state.url;
18
+ // Navigate to the login page
19
+ return router.navigate([authenticationRoute]);
20
+ }
21
+ };
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtZ3VhcmQuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2F1dGhlbnRpY2F0aW9uL3NyYy9yb3V0ZS1ndWFyZC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNyQyxPQUFPLEVBQUMsTUFBTSxFQUEwQixtQkFBbUIsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBS3BGLE9BQU8sRUFBQyxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBR3JGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsRUFBRTtJQUNwQyxNQUFNLHFCQUFxQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQzVELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM5QixNQUFNLEtBQUssR0FBRSxNQUFNLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN6QyxNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRXpELElBQUkscUJBQXFCLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQztRQUM1QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7U0FDSSxDQUFDO1FBQ0osMENBQTBDO1FBQzFDLHFCQUFxQixDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBRTlDLDZCQUE2QjtRQUM3QixPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztBQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNiBIdW50c21hbiBDYW5jZXIgSW5zdGl0dXRlIGF0IHRoZSBVbml2ZXJzaXR5IG9mIFV0YWgsIENvbmZpZGVudGlhbCBhbmQgUHJvcHJpZXRhcnlcclxuICovXHJcbmltcG9ydCB7aW5qZWN0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1JvdXRlciwgQWN0aXZhdGVkUm91dGVTbmFwc2hvdCwgUm91dGVyU3RhdGVTbmFwc2hvdH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5cclxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge21hcH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG5pbXBvcnQge0F1dGhlbnRpY2F0aW9uU2VydmljZSwgQVVUSEVOVElDQVRJT05fUk9VVEV9IGZyb20gXCIuL2F1dGhlbnRpY2F0aW9uLnNlcnZpY2VcIjtcclxuXHJcblxyXG5leHBvcnQgY29uc3QgUm91dGVHdWFyZFNlcnZpY2UgPSAoKSA9PiB7XHJcbiAgY29uc3QgYXV0aGVudGljYXRpb25TZXJ2aWNlID0gaW5qZWN0KEF1dGhlbnRpY2F0aW9uU2VydmljZSk7XHJcbiAgY29uc3Qgcm91dGVyID0gaW5qZWN0KFJvdXRlcik7XHJcbiAgY29uc3Qgc3RhdGUgPWluamVjdChSb3V0ZXJTdGF0ZVNuYXBzaG90KTtcclxuICBjb25zdCBhdXRoZW50aWNhdGlvblJvdXRlID0gaW5qZWN0KEFVVEhFTlRJQ0FUSU9OX1JPVVRFKTtcclxuXHJcbiAgaWYgKGF1dGhlbnRpY2F0aW9uU2VydmljZS5pc0F1dGhlbnRpY2F0ZWQoKSkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG4gIGVsc2Uge1xyXG4gICAgLy8gU3RvcmUgdGhlIGF0dGVtcHRlZCBVUkwgZm9yIHJlZGlyZWN0aW5nXHJcbiAgICBhdXRoZW50aWNhdGlvblNlcnZpY2UucmVkaXJlY3RVcmwgPSBzdGF0ZS51cmw7XHJcblxyXG4gICAgLy8gTmF2aWdhdGUgdG8gdGhlIGxvZ2luIHBhZ2VcclxuICAgIHJldHVybiByb3V0ZXIubmF2aWdhdGUoW2F1dGhlbnRpY2F0aW9uUm91dGVdKTtcclxuICB9XHJcbn07XHJcblxyXG5cclxuIl19