@osovitny/anatoly 3.16.15 → 3.16.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/anatoly.module.mjs +15 -1
- package/esm2022/lib/core/interceptors/httpInterceptor.mjs +4 -4
- package/esm2022/lib/core/localization/localization.service.mjs +15 -8
- package/esm2022/lib/core/localization/utils.mjs +2 -2
- package/esm2022/lib/core/logging/globalErrorHandler.mjs +3 -3
- package/esm2022/lib/core/logging/logging.service.mjs +2 -2
- package/esm2022/lib/core/services/appcontext.service.mjs +14 -2
- package/esm2022/lib/core/services/dm.service.mjs +3 -3
- package/esm2022/lib/core/services/google-analytics.service.mjs +2 -2
- package/esm2022/lib/core/services/starter.service.mjs +9 -4
- package/esm2022/lib/iam/b2c/b2c.mjs +43 -0
- package/esm2022/lib/iam/b2c/consts.mjs +25 -0
- package/esm2022/lib/iam/b2c/index.mjs +21 -0
- package/esm2022/lib/iam/configs.mjs +107 -0
- package/esm2022/lib/iam/consts.mjs +23 -0
- package/esm2022/lib/iam/guards/admin.guard.mjs +47 -0
- package/esm2022/lib/iam/guards/authentication.guard.mjs +31 -0
- package/esm2022/lib/iam/guards/index.mjs +20 -0
- package/esm2022/lib/iam/iam-pages.module.mjs +54 -0
- package/esm2022/lib/iam/iam-pages.routes.mjs +45 -0
- package/esm2022/lib/iam/iam.module.mjs +100 -0
- package/esm2022/lib/iam/index.mjs +18 -0
- package/esm2022/lib/iam/pages/signin.page.mjs +40 -0
- package/esm2022/lib/iam/pages/signout.page.mjs +40 -0
- package/esm2022/lib/iam/pages/signup.page.mjs +39 -0
- package/esm2022/lib/iam/redirect.mjs +29 -0
- package/esm2022/lib/iam/services/auth.service.mjs +246 -0
- package/esm2022/lib/iam/storage.mjs +39 -0
- package/esm2022/lib/ui/components/base/base.component.mjs +8 -4
- package/esm2022/lib/ui/components/billing/buyaccess-button.component.mjs +2 -2
- package/esm2022/lib/ui/components/billing/subscribe-plan-button.component.mjs +3 -3
- package/esm2022/lib/ui/components/html-editor/base-html-editor.component.mjs +3 -3
- package/esm2022/lib/ui/components/spinners/loading/loading.component.mjs +7 -12
- package/esm2022/lib/ui/components/spinners/pagespinner/pagespinner.component.mjs +2 -2
- package/esm2022/lib/ui/forms/components/urlslug/urlslug.component.mjs +1 -1
- package/esm2022/lib/ui/pipes/filesize.pipe.mjs +2 -2
- package/esm2022/lib/ui/pipes/replace-text.pipe.mjs +2 -2
- package/esm2022/lib/ui/pipes/safeHtml.pipe.mjs +2 -2
- package/esm2022/lib/ui/validation/form-validation-summary.component.mjs +3 -3
- package/esm2022/lib/ui/validation/item-validation-summary.component.mjs +4 -4
- package/esm2022/lib/ui/validation/validation-summary.component.mjs +3 -3
- package/esm2022/public-api.mjs +5 -1
- package/fesm2022/osovitny-anatoly.mjs +1074 -142
- package/fesm2022/osovitny-anatoly.mjs.map +1 -1
- package/lib/anatoly.module.d.ts +4 -2
- package/lib/core/localization/localization.service.d.ts +8 -5
- package/lib/core/services/appcontext.service.d.ts +2 -0
- package/lib/iam/b2c/b2c.d.ts +5 -0
- package/lib/iam/b2c/consts.d.ts +6 -0
- package/lib/iam/b2c/index.d.ts +2 -0
- package/lib/iam/configs.d.ts +5 -0
- package/lib/iam/consts.d.ts +3 -0
- package/lib/iam/guards/admin.guard.d.ts +13 -0
- package/lib/iam/guards/authentication.guard.d.ts +13 -0
- package/lib/iam/guards/index.d.ts +2 -0
- package/lib/iam/iam-pages.module.d.ts +12 -0
- package/lib/iam/iam-pages.routes.d.ts +6 -0
- package/lib/iam/iam.module.d.ts +9 -0
- package/lib/iam/index.d.ts +1 -0
- package/lib/iam/pages/signin.page.d.ts +11 -0
- package/lib/iam/pages/signout.page.d.ts +11 -0
- package/lib/iam/pages/signup.page.d.ts +11 -0
- package/lib/iam/redirect.d.ts +3 -0
- package/lib/iam/services/auth.service.d.ts +37 -0
- package/lib/iam/storage.d.ts +8 -0
- package/lib/ui/components/base/base.component.d.ts +2 -1
- package/lib/ui/components/spinners/loading/loading.component.d.ts +3 -4
- package/package.json +1 -1
- package/public-api.d.ts +3 -0
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*
|
|
2
|
+
<file>
|
|
3
|
+
Project:
|
|
4
|
+
@osovitny/anatoly
|
|
5
|
+
|
|
6
|
+
Authors:
|
|
7
|
+
Vadim Osovitny vadim@osovitny.com
|
|
8
|
+
Anatoly Osovitny anatoly@osovitny.com
|
|
9
|
+
|
|
10
|
+
Created:
|
|
11
|
+
20 Sep 2023
|
|
12
|
+
|
|
13
|
+
Description:
|
|
14
|
+
Identity and Access Management
|
|
15
|
+
|
|
16
|
+
Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
|
|
17
|
+
</file>
|
|
18
|
+
*/
|
|
19
|
+
//Node
|
|
20
|
+
import { Component } from '@angular/core';
|
|
21
|
+
import { BasePage } from '../../ui/components/base/base.page';
|
|
22
|
+
import * as i0 from "@angular/core";
|
|
23
|
+
import * as i1 from "../services/auth.service";
|
|
24
|
+
export class SignUpPage extends BasePage {
|
|
25
|
+
auth;
|
|
26
|
+
constructor(auth) {
|
|
27
|
+
super();
|
|
28
|
+
this.auth = auth;
|
|
29
|
+
}
|
|
30
|
+
ngOnInit() {
|
|
31
|
+
}
|
|
32
|
+
static ɵfac = function SignUpPage_Factory(t) { return new (t || SignUpPage)(i0.ɵɵdirectiveInject(i1.AuthService)); };
|
|
33
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SignUpPage, selectors: [["iam-signup-page"]], features: [i0.ɵɵInheritDefinitionFeature], decls: 0, vars: 0, template: function SignUpPage_Template(rf, ctx) { }, encapsulation: 2 });
|
|
34
|
+
}
|
|
35
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SignUpPage, [{
|
|
36
|
+
type: Component,
|
|
37
|
+
args: [{ selector: 'iam-signup-page', template: "" }]
|
|
38
|
+
}], function () { return [{ type: i1.AuthService }]; }, null); })();
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbnVwLnBhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvaWFtL3BhZ2VzL3NpZ251cC5wYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE1BQU07QUFDTixPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBSWxELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7O0FBTTlELE1BQU0sT0FBTyxVQUFXLFNBQVEsUUFBUTtJQUNsQjtJQUFwQixZQUFvQixJQUFpQjtRQUNuQyxLQUFLLEVBQUUsQ0FBQztRQURVLFNBQUksR0FBSixJQUFJLENBQWE7SUFFckMsQ0FBQztJQUVELFFBQVE7SUFDUixDQUFDO29FQU5VLFVBQVU7NkRBQVYsVUFBVTs7dUZBQVYsVUFBVTtjQUp0QixTQUFTOzJCQUNFLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW1Ab3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHlAb3Nvdml0bnkuY29tXHJcblxyXG5cdENyZWF0ZWQ6XHJcblx0XHQyMCBTZXAgMjAyM1xyXG5cclxuICBEZXNjcmlwdGlvbjpcclxuICAgIElkZW50aXR5IGFuZCBBY2Nlc3MgTWFuYWdlbWVudFxyXG5cclxuXHRDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCYXNlUGFnZSB9IGZyb20gJy4uLy4uL3VpL2NvbXBvbmVudHMvYmFzZS9iYXNlLnBhZ2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpYW0tc2lnbnVwLXBhZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWdudXAucGFnZS5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2lnblVwUGFnZSBleHRlbmRzIEJhc2VQYWdlIGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGF1dGg6IEF1dGhTZXJ2aWNlKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/*
|
|
2
|
+
<file>
|
|
3
|
+
Project:
|
|
4
|
+
@osovitny/anatoly
|
|
5
|
+
|
|
6
|
+
Authors:
|
|
7
|
+
Vadim Osovitny vadim@osovitny.com
|
|
8
|
+
Anatoly Osovitny anatoly@osovitny.com
|
|
9
|
+
|
|
10
|
+
Created:
|
|
11
|
+
20 Sep 2023
|
|
12
|
+
|
|
13
|
+
Description:
|
|
14
|
+
Identity and Access Management
|
|
15
|
+
|
|
16
|
+
Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
|
|
17
|
+
</file>
|
|
18
|
+
*/
|
|
19
|
+
import { MSALStorage } from './storage';
|
|
20
|
+
export class MSALRedirect {
|
|
21
|
+
static handle(router, calledBy) {
|
|
22
|
+
let redirectTo = MSALStorage.getRedirectState(calledBy);
|
|
23
|
+
if (redirectTo) {
|
|
24
|
+
MSALStorage.clearRedirectState(calledBy);
|
|
25
|
+
router.navigate([redirectTo]);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXJlY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvaWFtL3JlZGlyZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCRTtBQUVGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFeEMsTUFBTSxPQUFPLFlBQVk7SUFDaEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBZ0I7UUFDM0MsSUFBSSxVQUFVLEdBQUcsV0FBVyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3hELElBQUksVUFBVSxFQUFFO1lBQ2QsV0FBVyxDQUFDLGtCQUFrQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQ3pDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcblx0Q3JlYXRlZDpcclxuXHRcdDIwIFNlcCAyMDIzXHJcblxyXG4gIERlc2NyaXB0aW9uOlxyXG4gICAgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50XHJcblxyXG5cdENvcHlyaWdodCAoYykgMjAxNi0yMDIyIE9zb3ZpdG55IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuPC9maWxlPlxyXG4qL1xyXG5cclxuaW1wb3J0IHsgTVNBTFN0b3JhZ2UgfSBmcm9tICcuL3N0b3JhZ2UnO1xyXG5cclxuZXhwb3J0IGNsYXNzIE1TQUxSZWRpcmVjdCB7XHJcbiAgcHVibGljIHN0YXRpYyBoYW5kbGUocm91dGVyLCBjYWxsZWRCeTogc3RyaW5nKSB7XHJcbiAgICBsZXQgcmVkaXJlY3RUbyA9IE1TQUxTdG9yYWdlLmdldFJlZGlyZWN0U3RhdGUoY2FsbGVkQnkpO1xyXG4gICAgaWYgKHJlZGlyZWN0VG8pIHtcclxuICAgICAgTVNBTFN0b3JhZ2UuY2xlYXJSZWRpcmVjdFN0YXRlKGNhbGxlZEJ5KTtcclxuICAgICAgcm91dGVyLm5hdmlnYXRlKFtyZWRpcmVjdFRvXSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
import { Inject, Injectable } from '@angular/core';
|
|
2
|
+
import { Subject, catchError, filter, map, of, takeUntil } from 'rxjs';
|
|
3
|
+
import { MSAL_GUARD_CONFIG } from '@azure/msal-angular';
|
|
4
|
+
import { EventType, InteractionRequiredAuthError, InteractionStatus, InteractionType } from '@azure/msal-browser';
|
|
5
|
+
//App
|
|
6
|
+
import { ApiServiceBase } from '../../data/base/api.service';
|
|
7
|
+
import { MSALApiConfig } from '../consts';
|
|
8
|
+
import { MSALRedirect } from '../redirect';
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
import * as i1 from "@angular/common/http";
|
|
11
|
+
import * as i2 from "@angular/router";
|
|
12
|
+
import * as i3 from "../../core/services/appcontext.service";
|
|
13
|
+
import * as i4 from "@azure/msal-angular";
|
|
14
|
+
export class AuthService extends ApiServiceBase {
|
|
15
|
+
http;
|
|
16
|
+
router;
|
|
17
|
+
appContext;
|
|
18
|
+
msalGuardConfig;
|
|
19
|
+
msalService;
|
|
20
|
+
msalBroadcastService;
|
|
21
|
+
msalDestroying$ = new Subject();
|
|
22
|
+
initialized = false;
|
|
23
|
+
constructor(http, router, appContext, msalGuardConfig, msalService, msalBroadcastService) {
|
|
24
|
+
super(http);
|
|
25
|
+
this.http = http;
|
|
26
|
+
this.router = router;
|
|
27
|
+
this.appContext = appContext;
|
|
28
|
+
this.msalGuardConfig = msalGuardConfig;
|
|
29
|
+
this.msalService = msalService;
|
|
30
|
+
this.msalBroadcastService = msalBroadcastService;
|
|
31
|
+
this.init();
|
|
32
|
+
}
|
|
33
|
+
ngOnDestroy() {
|
|
34
|
+
this.msalDestroying$.next(undefined);
|
|
35
|
+
this.msalDestroying$.complete();
|
|
36
|
+
}
|
|
37
|
+
init() {
|
|
38
|
+
this.setDefaults();
|
|
39
|
+
this.msalService.initialize().subscribe(() => {
|
|
40
|
+
this.initialized = true;
|
|
41
|
+
console.log(`msal.app: initMSAL started`);
|
|
42
|
+
this.initMSAL();
|
|
43
|
+
console.log(`msal.app: initMSAL finished`);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
setDefaults() {
|
|
47
|
+
}
|
|
48
|
+
initMSAL() {
|
|
49
|
+
this.msalService.instance.enableAccountStorageEvents();
|
|
50
|
+
this.msalService.handleRedirectObservable().subscribe({
|
|
51
|
+
next: (result) => {
|
|
52
|
+
console.log(`msal.app: handleRedirectObservable`);
|
|
53
|
+
},
|
|
54
|
+
error: (error) => {
|
|
55
|
+
console.log(error);
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
this.msalBroadcastService.msalSubject$
|
|
59
|
+
.pipe(filter((msg) => msg.eventType === EventType.INITIALIZE_END ||
|
|
60
|
+
msg.eventType === EventType.ACCOUNT_ADDED ||
|
|
61
|
+
msg.eventType === EventType.ACCOUNT_REMOVED ||
|
|
62
|
+
msg.eventType === EventType.LOGIN_SUCCESS ||
|
|
63
|
+
msg.eventType === EventType.LOGIN_FAILURE ||
|
|
64
|
+
msg.eventType === EventType.LOGOUT_SUCCESS ||
|
|
65
|
+
msg.eventType === EventType.LOGOUT_FAILURE), takeUntil(this.msalDestroying$))
|
|
66
|
+
.subscribe((msg) => {
|
|
67
|
+
switch (msg.eventType) {
|
|
68
|
+
case EventType.INITIALIZE_END:
|
|
69
|
+
console.log(`msal.app: INITIALIZE_END fired`);
|
|
70
|
+
break;
|
|
71
|
+
case EventType.ACCOUNT_ADDED:
|
|
72
|
+
case EventType.LOGIN_SUCCESS:
|
|
73
|
+
let payload = msg.payload;
|
|
74
|
+
if (payload) {
|
|
75
|
+
this.msalService.instance.setActiveAccount(payload.account);
|
|
76
|
+
}
|
|
77
|
+
break;
|
|
78
|
+
case EventType.ACCOUNT_REMOVED:
|
|
79
|
+
if (this.msalService.instance.getAllAccounts().length === 0) {
|
|
80
|
+
window.location.pathname = "/";
|
|
81
|
+
}
|
|
82
|
+
break;
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
this.msalBroadcastService.inProgress$
|
|
86
|
+
.pipe(filter((status) => status === InteractionStatus.Startup ||
|
|
87
|
+
status === InteractionStatus.None), takeUntil(this.msalDestroying$))
|
|
88
|
+
.subscribe((status) => {
|
|
89
|
+
switch (status) {
|
|
90
|
+
/**
|
|
91
|
+
* Initial status before interaction occurs
|
|
92
|
+
*/
|
|
93
|
+
case InteractionStatus.Startup:
|
|
94
|
+
console.log(`msal.app: InteractionStatus.Startup`);
|
|
95
|
+
break;
|
|
96
|
+
/**
|
|
97
|
+
* Status set when interaction is complete
|
|
98
|
+
*/
|
|
99
|
+
case InteractionStatus.None:
|
|
100
|
+
console.log(`msal.app: InteractionStatus.None`);
|
|
101
|
+
MSALRedirect.handle(this.router, 'msalBroadcastService.inProgress$ InteractionStatus.None');
|
|
102
|
+
this.checkAndSetActiveAccount();
|
|
103
|
+
break;
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
getActiveAccount() {
|
|
108
|
+
this.checkAndSetActiveAccount();
|
|
109
|
+
return this.msalService.instance.getActiveAccount();
|
|
110
|
+
}
|
|
111
|
+
checkAndSetActiveAccount() {
|
|
112
|
+
let activeAccount = this.msalService.instance.getActiveAccount();
|
|
113
|
+
let accounts = this.msalService.instance.getAllAccounts();
|
|
114
|
+
if (!activeAccount && accounts.length > 0) {
|
|
115
|
+
this.msalService.instance.setActiveAccount(accounts[0]);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
isPopup(popup) {
|
|
119
|
+
if (typeof popup === "undefined") {
|
|
120
|
+
return this.msalGuardConfig.interactionType === InteractionType.Popup;
|
|
121
|
+
}
|
|
122
|
+
return popup;
|
|
123
|
+
}
|
|
124
|
+
acquireToken() {
|
|
125
|
+
let request = {
|
|
126
|
+
scopes: MSALApiConfig.scopes
|
|
127
|
+
};
|
|
128
|
+
if (this.isPopup()) {
|
|
129
|
+
return this.msalService.acquireTokenPopup(request).pipe(map(response => {
|
|
130
|
+
return response ? response.accessToken : null;
|
|
131
|
+
}));
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
return this.msalService.acquireTokenRedirect(request).pipe(map(() => {
|
|
135
|
+
return null;
|
|
136
|
+
}));
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
getUserEmail() {
|
|
140
|
+
let currentUser = this.appContext.currentUser;
|
|
141
|
+
let activeAccount = this.getActiveAccount();
|
|
142
|
+
if (activeAccount) {
|
|
143
|
+
return activeAccount.username;
|
|
144
|
+
}
|
|
145
|
+
return currentUser ? currentUser.Email : '';
|
|
146
|
+
}
|
|
147
|
+
getUserName() {
|
|
148
|
+
let currentUser = this.appContext.currentUser;
|
|
149
|
+
let activeAccount = this.getActiveAccount();
|
|
150
|
+
if (activeAccount) {
|
|
151
|
+
return activeAccount.name ? activeAccount.name : currentUser ? currentUser.displayNameOrFullName : '';
|
|
152
|
+
}
|
|
153
|
+
return currentUser ? currentUser.displayNameOrFullName : '';
|
|
154
|
+
}
|
|
155
|
+
/*
|
|
156
|
+
VadimOS:
|
|
157
|
+
WARNING to all developers! Be sure that you really need to directly call this method!
|
|
158
|
+
*/
|
|
159
|
+
getAccessToken(requestUrl) {
|
|
160
|
+
let activeAccount = this.getActiveAccount();
|
|
161
|
+
let silentRequest = {
|
|
162
|
+
scopes: MSALApiConfig.scopes,
|
|
163
|
+
account: activeAccount
|
|
164
|
+
};
|
|
165
|
+
if (activeAccount) {
|
|
166
|
+
return this.msalService.acquireTokenSilent(silentRequest).pipe(map(response => {
|
|
167
|
+
return response.accessToken;
|
|
168
|
+
}), catchError(error => {
|
|
169
|
+
console.log("Silent token acquisition fails.");
|
|
170
|
+
if (error instanceof InteractionRequiredAuthError) {
|
|
171
|
+
return this.acquireToken();
|
|
172
|
+
}
|
|
173
|
+
return of(null);
|
|
174
|
+
}));
|
|
175
|
+
}
|
|
176
|
+
return this.acquireToken();
|
|
177
|
+
}
|
|
178
|
+
login(popup) {
|
|
179
|
+
let authRequest = this.msalGuardConfig.authRequest;
|
|
180
|
+
if (this.isPopup(popup)) {
|
|
181
|
+
if (authRequest) {
|
|
182
|
+
return this.msalService.loginPopup({ ...authRequest }).pipe(map((response) => {
|
|
183
|
+
this.msalService.instance.setActiveAccount(response.account);
|
|
184
|
+
}));
|
|
185
|
+
}
|
|
186
|
+
else {
|
|
187
|
+
return this.msalService.loginPopup().pipe(map((response) => {
|
|
188
|
+
this.msalService.instance.setActiveAccount(response.account);
|
|
189
|
+
}));
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
if (authRequest) {
|
|
194
|
+
return this.msalService.loginRedirect({ ...authRequest });
|
|
195
|
+
}
|
|
196
|
+
else {
|
|
197
|
+
return this.msalService.loginRedirect();
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
logout(popup) {
|
|
202
|
+
let activeAccount = this.getActiveAccount();
|
|
203
|
+
if (!activeAccount) {
|
|
204
|
+
return of(null);
|
|
205
|
+
}
|
|
206
|
+
if (this.isPopup(popup)) {
|
|
207
|
+
return this.msalService.logoutPopup({ account: activeAccount, mainWindowRedirectUri: "/" }).pipe(map(() => {
|
|
208
|
+
this.appContext.clearWebStorage();
|
|
209
|
+
}));
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
return this.msalService.logoutRedirect({ account: activeAccount }).pipe(map(() => {
|
|
213
|
+
this.appContext.clearWebStorage();
|
|
214
|
+
}));
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
isUserAuthenticated() {
|
|
218
|
+
return this.msalService.instance.getActiveAccount() != null;
|
|
219
|
+
}
|
|
220
|
+
isUserSignedIn() {
|
|
221
|
+
if (!this.isUserAuthenticated()) {
|
|
222
|
+
return false;
|
|
223
|
+
}
|
|
224
|
+
let currentUser = this.appContext.currentUser;
|
|
225
|
+
return currentUser && currentUser.UserID;
|
|
226
|
+
}
|
|
227
|
+
isUserAdmin() {
|
|
228
|
+
if (!this.isUserSignedIn()) {
|
|
229
|
+
return false;
|
|
230
|
+
}
|
|
231
|
+
let currentUser = this.appContext.currentUser;
|
|
232
|
+
return currentUser && currentUser.isUserAdmin;
|
|
233
|
+
}
|
|
234
|
+
static ɵfac = function AuthService_Factory(t) { return new (t || AuthService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(i2.Router), i0.ɵɵinject(i3.AppContextService), i0.ɵɵinject(MSAL_GUARD_CONFIG), i0.ɵɵinject(i4.MsalService), i0.ɵɵinject(i4.MsalBroadcastService)); };
|
|
235
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: AuthService, factory: AuthService.ɵfac, providedIn: 'root' });
|
|
236
|
+
}
|
|
237
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthService, [{
|
|
238
|
+
type: Injectable,
|
|
239
|
+
args: [{
|
|
240
|
+
providedIn: 'root'
|
|
241
|
+
}]
|
|
242
|
+
}], function () { return [{ type: i1.HttpClient }, { type: i2.Router }, { type: i3.AppContextService }, { type: undefined, decorators: [{
|
|
243
|
+
type: Inject,
|
|
244
|
+
args: [MSAL_GUARD_CONFIG]
|
|
245
|
+
}] }, { type: i4.MsalService }, { type: i4.MsalBroadcastService }]; }, null); })();
|
|
246
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL2lhbS9zZXJ2aWNlcy9hdXRoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUJBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBRTlELE9BQU8sRUFBYyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNuRixPQUFPLEVBQUUsaUJBQWlCLEVBQTZELE1BQU0scUJBQXFCLENBQUM7QUFDbkgsT0FBTyxFQUFtRCxTQUFTLEVBQUUsNEJBQTRCLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUVwSSxNQUFNLHFCQUFxQixDQUFDO0FBRTdCLEtBQUs7QUFDTCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sYUFBYSxDQUFDOzs7Ozs7QUFLM0MsTUFBTSxPQUFPLFdBQVksU0FBUSxjQUFjO0lBS2pDO0lBQ0Y7SUFDQTtJQUdBO0lBQ0E7SUFDQTtJQVhPLGVBQWUsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQy9DLFdBQVcsR0FBWSxLQUFLLENBQUM7SUFFckMsWUFDWSxJQUFnQixFQUNsQixNQUFjLEVBQ2QsVUFBNkIsRUFHN0IsZUFBdUMsRUFDdkMsV0FBd0IsRUFDeEIsb0JBQTBDO1FBQ2xELEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQVJGLFNBQUksR0FBSixJQUFJLENBQVk7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLGVBQVUsR0FBVixVQUFVLENBQW1CO1FBRzdCLG9CQUFlLEdBQWYsZUFBZSxD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OUMsT0FBTyxXQUFXLElBQUksV0FBVyxDQUFDLFdBQVcsQ0FBQztJQUNoRCxDQUFDO3FFQWhSVSxXQUFXLHFHQVNaLGlCQUFpQjtnRUFUaEIsV0FBVyxXQUFYLFdBQVcsbUJBRlYsTUFBTTs7dUZBRVAsV0FBVztjQUh2QixVQUFVO2VBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7O3NCQVVJLE1BQU07dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiLypcclxuPGZpbGU+XHJcbiAgUHJvamVjdDpcclxuICAgIEBvc292aXRueS9hbmF0b2x5XHJcblxyXG4gIEF1dGhvcnM6XHJcbiAgICBWYWRpbSBPc292aXRueSB2YWRpbUBvc292aXRueS5jb21cclxuICAgIEFuYXRvbHkgT3Nvdml0bnkgYW5hdG9seUBvc292aXRueS5jb21cclxuXHJcbiAgQ3JlYXRlZDpcclxuICAgIDYgRGVjIDIwMThcclxuXHJcbiAgRGVzY3JpcHRpb246XHJcbiAgICBJZGVudGl0eSBhbmQgQWNjZXNzIE1hbmFnZW1lbnRcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgY2F0Y2hFcnJvciwgZmlsdGVyLCBtYXAsIG9mLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgTVNBTF9HVUFSRF9DT05GSUcsIE1zYWxCcm9hZGNhc3RTZXJ2aWNlLCBNc2FsR3VhcmRDb25maWd1cmF0aW9uLCBNc2FsU2VydmljZSB9IGZyb20gJ0BhenVyZS9tc2FsLWFuZ3VsYXInO1xyXG5pbXBvcnQgeyBBY2NvdW50SW5mbywgQXV0aGVudGljYXRpb25SZXN1bHQsIEV2ZW50TWVzc2FnZSwgRXZlbnRUeXBlLCBJbnRlcmFjdGlvblJlcXVpcmVkQXV0aEVycm9yLCBJbnRlcmFjdGlvblN0YXR1cywgSW50ZXJhY3Rpb25UeXBlLCBQb3B1cFJlcXVlc3QsXHJcbiAgUmVkaXJlY3RSZXF1ZXN0LCBTaWxlbnRSZXF1ZXN0XHJcbn0gZnJvbSAnQGF6dXJlL21zYWwtYnJvd3Nlcic7XHJcblxyXG4vL0FwcFxyXG5pbXBvcnQgeyBBcGlTZXJ2aWNlQmFzZSB9IGZyb20gJy4uLy4uL2RhdGEvYmFzZS9hcGkuc2VydmljZSc7XHJcbmltcG9ydCB7IEFwcENvbnRleHRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS9zZXJ2aWNlcy9hcHBjb250ZXh0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNU0FMQXBpQ29uZmlnIH0gZnJvbSAnLi4vY29uc3RzJztcclxuaW1wb3J0IHsgTVNBTFJlZGlyZWN0IH0gZnJvbSAnLi4vcmVkaXJlY3QnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aFNlcnZpY2UgZXh0ZW5kcyBBcGlTZXJ2aWNlQmFzZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBtc2FsRGVzdHJveWluZyQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIHByaXZhdGUgaW5pdGlhbGl6ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGFwcENvbnRleHQ6IEFwcENvbnRleHRTZXJ2aWNlLFxyXG5cclxuICAgIEBJbmplY3QoTVNBTF9HVUFSRF9DT05GSUcpXHJcbiAgICBwcml2YXRlIG1zYWxHdWFyZENvbmZpZzogTXNhbEd1YXJkQ29uZmlndXJhdGlvbixcclxuICAgIHByaXZhdGUgbXNhbFNlcnZpY2U6IE1zYWxTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBtc2FsQnJvYWRjYXN0U2VydmljZTogTXNhbEJyb2FkY2FzdFNlcnZpY2UpIHtcclxuICAgIHN1cGVyKGh0dHApO1xyXG4gICAgdGhpcy5pbml0KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMubXNhbERlc3Ryb3lpbmckLm5leHQodW5kZWZpbmVkKTtcclxuICAgIHRoaXMubXNhbERlc3Ryb3lpbmckLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXQoKSB7XHJcbiAgICB0aGlzLnNldERlZmF1bHRzKCk7XHJcblxyXG4gICAgdGhpcy5tc2FsU2VydmljZS5pbml0aWFsaXplKCkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XHJcblxyXG4gICAgICBjb25zb2xlLmxvZyhgbXNhbC5hcHA6IGluaXRNU0FMIHN0YXJ0ZWRgKTtcclxuICAgICAgdGhpcy5pbml0TVNBTCgpO1xyXG4gICAgICBjb25zb2xlLmxvZyhgbXNhbC5hcHA6IGluaXRNU0FMIGZpbmlzaGVkYCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0RGVmYXVsdHMoKSB7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRNU0FMKCkge1xyXG4gICAgdGhpcy5tc2FsU2VydmljZS5pbnN0YW5jZS5lbmFibGVBY2NvdW50U3RvcmFnZUV2ZW50cygpO1xyXG4gICAgdGhpcy5tc2FsU2VydmljZS5oYW5kbGVSZWRpcmVjdE9ic2VydmFibGUoKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzdWx0OiBBdXRoZW50aWNhdGlvblJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKGBtc2FsLmFwcDogaGFuZGxlUmVkaXJlY3RPYnNlcnZhYmxlYCk7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMubXNhbEJyb2FkY2FzdFNlcnZpY2UubXNhbFN1YmplY3QkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcigobXNnOiBFdmVudE1lc3NhZ2UpID0+XHJcbiAgICAgICAgICBtc2cuZXZlbnRUeXBlID09PSBFdmVudFR5cGUuSU5JVElBTElaRV9FTkQgfHxcclxuICAgICAgICAgIG1zZy5ldmVudFR5cGUgPT09IEV2ZW50VHlwZS5BQ0NPVU5UX0FEREVEIHx8XHJcbiAgICAgICAgICBtc2cuZXZlbnRUeXBlID09PSBFdmVudFR5cGUuQUNDT1VOVF9SRU1PVkVEIHx8XHJcbiAgICAgICAgICBtc2cuZXZlbnRUeXBlID09PSBFdmVudFR5cGUuTE9HSU5fU1VDQ0VTUyB8fFxyXG4gICAgICAgICAgbXNnLmV2ZW50VHlwZSA9PT0gRXZlbnRUeXBlLkxPR0lOX0ZBSUxVUkUgfHxcclxuICAgICAgICAgIG1zZy5ldmVudFR5cGUgPT09IEV2ZW50VHlwZS5MT0dPVVRfU1VDQ0VTUyB8fFxyXG4gICAgICAgICAgbXNnLmV2ZW50VHlwZSA9PT0gRXZlbnRUeXBlLkxPR09VVF9GQUlMVVJFXHJcbiAgICAgICAgKSxcclxuICAgICAgICB0YWtlVW50aWwodGhpcy5tc2FsRGVzdHJveWluZyQpXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZSgobXNnOiBFdmVudE1lc3NhZ2UpID0+IHtcclxuICAgICAgICBzd2l0Y2ggKG1zZy5ldmVudFR5cGUpIHtcclxuICAgICAgICAgIGNhc2UgRXZlbnRUeXBlLklOSVRJQUxJWkVfRU5EOlxyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgbXNhbC5hcHA6IElOSVRJQUxJWkVfRU5EIGZpcmVkYCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgIGNhc2UgRXZlbnRUeXBlLkFDQ09VTlRfQURERUQ6XHJcbiAgICAgICAgICBjYXNlIEV2ZW50VHlwZS5MT0dJTl9TVUNDRVNTOlxyXG4gICAgICAgICAgICBsZXQgcGF5bG9hZCA9IG1zZy5wYXlsb2FkIGFzIEF1dGhlbnRpY2F0aW9uUmVzdWx0O1xyXG4gICAgICAgICAgICBpZiAocGF5bG9hZCkge1xyXG4gICAgICAgICAgICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2Uuc2V0QWN0aXZlQWNjb3VudChwYXlsb2FkLmFjY291bnQpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgIGNhc2UgRXZlbnRUeXBlLkFDQ09VTlRfUkVNT1ZFRDpcclxuICAgICAgICAgICAgaWYgKHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2UuZ2V0QWxsQWNjb3VudHMoKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgICB3aW5kb3cubG9jYXRpb24ucGF0aG5hbWUgPSBcIi9cIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG5cclxuICAgIHRoaXMubXNhbEJyb2FkY2FzdFNlcnZpY2UuaW5Qcm9ncmVzcyRcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKChzdGF0dXM6IEludGVyYWN0aW9uU3RhdHVzKSA9PlxyXG4gICAgICAgICAgc3RhdHVzID09PSBJbnRlcmFjdGlvblN0YXR1cy5TdGFydHVwIHx8XHJcbiAgICAgICAgICBzdGF0dXMgPT09IEludGVyYWN0aW9uU3RhdHVzLk5vbmVcclxuICAgICAgICApLFxyXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm1zYWxEZXN0cm95aW5nJClcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKChzdGF0dXM6IEludGVyYWN0aW9uU3RhdHVzKSA9PiB7XHJcbiAgICAgICAgc3dpdGNoIChzdGF0dXMpIHtcclxuICAgICAgICAgIC8qKlxyXG4gICAgICAgICAgICogSW5pdGlhbCBzdGF0dXMgYmVmb3JlIGludGVyYWN0aW9uIG9jY3Vyc1xyXG4gICAgICAgICAgICovXHJcbiAgICAgICAgICBjYXNlIEludGVyYWN0aW9uU3RhdHVzLlN0YXJ0dXA6XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGBtc2FsLmFwcDogSW50ZXJhY3Rpb25TdGF0dXMuU3RhcnR1cGApO1xyXG4gICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICAvKipcclxuICAgICAgICAgICogU3RhdHVzIHNldCB3aGVuIGludGVyYWN0aW9uIGlzIGNvbXBsZXRlXHJcbiAgICAgICAgICAqL1xyXG4gICAgICAgICAgY2FzZSBJbnRlcmFjdGlvblN0YXR1cy5Ob25lOlxyXG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgbXNhbC5hcHA6IEludGVyYWN0aW9uU3RhdHVzLk5vbmVgKTtcclxuXHJcbiAgICAgICAgICAgIE1TQUxSZWRpcmVjdC5oYW5kbGUodGhpcy5yb3V0ZXIsICdtc2FsQnJvYWRjYXN0U2VydmljZS5pblByb2dyZXNzJCBJbnRlcmFjdGlvblN0YXR1cy5Ob25lJyk7XHJcbiAgICAgICAgICAgIHRoaXMuY2hlY2tBbmRTZXRBY3RpdmVBY2NvdW50KCk7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEFjdGl2ZUFjY291bnQoKTogQWNjb3VudEluZm8gfCBudWxsIHtcclxuICAgIHRoaXMuY2hlY2tBbmRTZXRBY3RpdmVBY2NvdW50KCk7XHJcbiAgICByZXR1cm4gdGhpcy5tc2FsU2VydmljZS5pbnN0YW5jZS5nZXRBY3RpdmVBY2NvdW50KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNoZWNrQW5kU2V0QWN0aXZlQWNjb3VudCgpIHtcclxuICAgIGxldCBhY3RpdmVBY2NvdW50ID0gdGhpcy5tc2FsU2VydmljZS5pbnN0YW5jZS5nZXRBY3RpdmVBY2NvdW50KCk7XHJcbiAgICBsZXQgYWNjb3VudHMgPSB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlLmdldEFsbEFjY291bnRzKCk7XHJcblxyXG4gICAgaWYgKCFhY3RpdmVBY2NvdW50ICYmIGFjY291bnRzLmxlbmd0aCA+IDApIHtcclxuICAgICAgdGhpcy5tc2FsU2VydmljZS5pbnN0YW5jZS5zZXRBY3RpdmVBY2NvdW50KGFjY291bnRzWzBdKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNQb3B1cChwb3B1cD86IGJvb2xlYW4pIHtcclxuICAgIGlmICh0eXBlb2YgcG9wdXAgPT09IFwidW5kZWZpbmVkXCIpIHtcclxuICAgICAgcmV0dXJuIHRoaXMubXNhbEd1YXJkQ29uZmlnLmludGVyYWN0aW9uVHlwZSA9PT0gSW50ZXJhY3Rpb25UeXBlLlBvcHVwO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBwb3B1cDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWNxdWlyZVRva2VuKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICBsZXQgcmVxdWVzdCA9IHtcclxuICAgICAgc2NvcGVzOiBNU0FMQXBpQ29uZmlnLnNjb3Blc1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmlzUG9wdXAoKSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5tc2FsU2VydmljZS5hY3F1aXJlVG9rZW5Qb3B1cChyZXF1ZXN0KS5waXBlKFxyXG4gICAgICAgIG1hcChyZXNwb25zZSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gcmVzcG9uc2UgPyByZXNwb25zZS5hY2Nlc3NUb2tlbiA6IG51bGw7XHJcbiAgICAgICAgfSlcclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICByZXR1cm4gdGhpcy5tc2FsU2VydmljZS5hY3F1aXJlVG9rZW5SZWRpcmVjdChyZXF1ZXN0KS5waXBlKFxyXG4gICAgICAgIG1hcCgoKSA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgICB9KVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0VXNlckVtYWlsKCkge1xyXG4gICAgbGV0IGN1cnJlbnRVc2VyID0gdGhpcy5hcHBDb250ZXh0LmN1cnJlbnRVc2VyO1xyXG4gICAgbGV0IGFjdGl2ZUFjY291bnQgPSB0aGlzLmdldEFjdGl2ZUFjY291bnQoKTtcclxuXHJcbiAgICBpZiAoYWN0aXZlQWNjb3VudCkge1xyXG4gICAgICByZXR1cm4gYWN0aXZlQWNjb3VudC51c2VybmFtZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gY3VycmVudFVzZXIgPyBjdXJyZW50VXNlci5FbWFpbCA6ICcnO1xyXG4gIH1cclxuXHJcbiAgZ2V0VXNlck5hbWUoKSB7XHJcbiAgICBsZXQgY3VycmVudFVzZXIgPSB0aGlzLmFwcENvbnRleHQuY3VycmVudFVzZXI7XHJcbiAgICBsZXQgYWN0aXZlQWNjb3VudCA9IHRoaXMuZ2V0QWN0aXZlQWNjb3VudCgpO1xyXG5cclxuICAgIGlmIChhY3RpdmVBY2NvdW50KSB7XHJcbiAgICAgIHJldHVybiBhY3RpdmVBY2NvdW50Lm5hbWUgPyBhY3RpdmVBY2NvdW50Lm5hbWUgOiBjdXJyZW50VXNlciA/IGN1cnJlbnRVc2VyLmRpc3BsYXlOYW1lT3JGdWxsTmFtZSA6ICcnO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjdXJyZW50VXNlciA/IGN1cnJlbnRVc2VyLmRpc3BsYXlOYW1lT3JGdWxsTmFtZSA6ICcnO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgIFZhZGltT1M6XHJcbiAgICBXQVJOSU5HIHRvIGFsbCBkZXZlbG9wZXJzISBCZSBzdXJlIHRoYXQgeW91IHJlYWxseSBuZWVkIHRvIGRpcmVjdGx5IGNhbGwgdGhpcyBtZXRob2QhXHJcbiAgKi9cclxuICBnZXRBY2Nlc3NUb2tlbihyZXF1ZXN0VXJsPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIGxldCBhY3RpdmVBY2NvdW50ID0gdGhpcy5nZXRBY3RpdmVBY2NvdW50KCk7XHJcbiAgICBsZXQgc2lsZW50UmVxdWVzdDogU2lsZW50UmVxdWVzdCA9IHtcclxuICAgICAgc2NvcGVzOiBNU0FMQXBpQ29uZmlnLnNjb3BlcyxcclxuICAgICAgYWNjb3VudDogYWN0aXZlQWNjb3VudFxyXG4gICAgfTtcclxuXHJcbiAgICBpZiAoYWN0aXZlQWNjb3VudCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5tc2FsU2VydmljZS5hY3F1aXJlVG9rZW5TaWxlbnQoc2lsZW50UmVxdWVzdCkucGlwZShcclxuICAgICAgICBtYXAocmVzcG9uc2UgPT4ge1xyXG4gICAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmFjY2Vzc1Rva2VuO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGNhdGNoRXJyb3IoZXJyb3IgPT4ge1xyXG4gICAgICAgICAgY29uc29sZS5sb2coXCJTaWxlbnQgdG9rZW4gYWNxdWlzaXRpb24gZmFpbHMuXCIpO1xyXG5cclxuICAgICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3IpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuYWNxdWlyZVRva2VuKCk7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuYWNxdWlyZVRva2VuKCk7XHJcbiAgfVxyXG5cclxuICBsb2dpbihwb3B1cD86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgbGV0IGF1dGhSZXF1ZXN0ID0gdGhpcy5tc2FsR3VhcmRDb25maWcuYXV0aFJlcXVlc3Q7XHJcblxyXG4gICAgaWYgKHRoaXMuaXNQb3B1cChwb3B1cCkpIHtcclxuICAgICAgaWYgKGF1dGhSZXF1ZXN0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubXNhbFNlcnZpY2UubG9naW5Qb3B1cCh7IC4uLmF1dGhSZXF1ZXN0IH0gYXMgUG9wdXBSZXF1ZXN0KS5waXBlKG1hcCgocmVzcG9uc2U6IEF1dGhlbnRpY2F0aW9uUmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlLnNldEFjdGl2ZUFjY291bnQocmVzcG9uc2UuYWNjb3VudCk7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1zYWxTZXJ2aWNlLmxvZ2luUG9wdXAoKS5waXBlKG1hcCgocmVzcG9uc2U6IEF1dGhlbnRpY2F0aW9uUmVzdWx0KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlLnNldEFjdGl2ZUFjY291bnQocmVzcG9uc2UuYWNjb3VudCk7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgaWYgKGF1dGhSZXF1ZXN0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMubXNhbFNlcnZpY2UubG9naW5SZWRpcmVjdCh7IC4uLmF1dGhSZXF1ZXN0IH0gYXMgUmVkaXJlY3RSZXF1ZXN0KTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5tc2FsU2VydmljZS5sb2dpblJlZGlyZWN0KCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGxvZ291dChwb3B1cD86IGJvb2xlYW4pOiBPYnNlcnZhYmxlPHZvaWQ+IHtcclxuICAgIGxldCBhY3RpdmVBY2NvdW50ID0gdGhpcy5nZXRBY3RpdmVBY2NvdW50KCk7XHJcbiAgICBpZiAoIWFjdGl2ZUFjY291bnQpIHtcclxuICAgICAgcmV0dXJuIG9mKG51bGwpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmlzUG9wdXAocG9wdXApKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLm1zYWxTZXJ2aWNlLmxvZ291dFBvcHVwKHsgYWNjb3VudDogYWN0aXZlQWNjb3VudCwgbWFpbldpbmRvd1JlZGlyZWN0VXJpOiBcIi9cIiB9KS5waXBlKG1hcCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5hcHBDb250ZXh0LmNsZWFyV2ViU3RvcmFnZSgpO1xyXG4gICAgICB9KSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMubXNhbFNlcnZpY2UubG9nb3V0UmVkaXJlY3QoeyBhY2NvdW50OiBhY3RpdmVBY2NvdW50IH0pLnBpcGUobWFwKCgpID0+IHtcclxuICAgICAgICB0aGlzLmFwcENvbnRleHQuY2xlYXJXZWJTdG9yYWdlKCk7XHJcbiAgICAgIH0pKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGlzVXNlckF1dGhlbnRpY2F0ZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5tc2FsU2VydmljZS5pbnN0YW5jZS5nZXRBY3RpdmVBY2NvdW50KCkgIT0gbnVsbDtcclxuICB9XHJcblxyXG4gIGlzVXNlclNpZ25lZEluKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmlzVXNlckF1dGhlbnRpY2F0ZWQoKSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGN1cnJlbnRVc2VyID0gdGhpcy5hcHBDb250ZXh0LmN1cnJlbnRVc2VyO1xyXG4gICAgcmV0dXJuIGN1cnJlbnRVc2VyICYmIGN1cnJlbnRVc2VyLlVzZXJJRDtcclxuICB9XHJcblxyXG4gIGlzVXNlckFkbWluKCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCF0aGlzLmlzVXNlclNpZ25lZEluKCkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBjdXJyZW50VXNlciA9IHRoaXMuYXBwQ29udGV4dC5jdXJyZW50VXNlcjtcclxuICAgIHJldHVybiBjdXJyZW50VXNlciAmJiBjdXJyZW50VXNlci5pc1VzZXJBZG1pbjtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*
|
|
2
|
+
<file>
|
|
3
|
+
Project:
|
|
4
|
+
@osovitny/anatoly
|
|
5
|
+
|
|
6
|
+
Authors:
|
|
7
|
+
Vadim Osovitny vadim@osovitny.com
|
|
8
|
+
Anatoly Osovitny anatoly@osovitny.com
|
|
9
|
+
|
|
10
|
+
Created:
|
|
11
|
+
20 Sep 2023
|
|
12
|
+
|
|
13
|
+
Description:
|
|
14
|
+
Identity and Access Management
|
|
15
|
+
|
|
16
|
+
Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
|
|
17
|
+
</file>
|
|
18
|
+
*/
|
|
19
|
+
export const MSALStorageKeys = {
|
|
20
|
+
//LocalStorage
|
|
21
|
+
redirectTo: 'msal.app.redirectTo'
|
|
22
|
+
//SessionStorage
|
|
23
|
+
};
|
|
24
|
+
export class MSALStorage {
|
|
25
|
+
static saveRedirectState(redirectTo, calledBy) {
|
|
26
|
+
localStorage.setItem(MSALStorageKeys.redirectTo, redirectTo);
|
|
27
|
+
console.log(`msal.app: redirect state saved: ${redirectTo}. Called by: ${calledBy}`);
|
|
28
|
+
}
|
|
29
|
+
static getRedirectState(calledBy) {
|
|
30
|
+
let redirectTo = localStorage.getItem(MSALStorageKeys.redirectTo);
|
|
31
|
+
console.log(`msal.app: redirect state requested: ${redirectTo}. Called by: ${calledBy}`);
|
|
32
|
+
return redirectTo;
|
|
33
|
+
}
|
|
34
|
+
static clearRedirectState(calledBy) {
|
|
35
|
+
localStorage.removeItem(MSALStorageKeys.redirectTo);
|
|
36
|
+
console.log(`msal.app: redirect state cleared. Called by: ${calledBy}`);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi9pYW0vc3RvcmFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQkU7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUc7SUFDN0IsY0FBYztJQUNkLFVBQVUsRUFBRSxxQkFBcUI7SUFFakMsZ0JBQWdCO0NBQ2pCLENBQUE7QUFFRCxNQUFNLE9BQU8sV0FBVztJQUNmLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsUUFBZ0I7UUFDMUQsWUFBWSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzdELE9BQU8sQ0FBQyxHQUFHLENBQUMsbUNBQW1DLFVBQVUsZ0JBQWdCLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDdkYsQ0FBQztJQUVNLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUM3QyxJQUFJLFVBQVUsR0FBRyxZQUFZLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsRSxPQUFPLENBQUMsR0FBRyxDQUFDLHVDQUF1QyxVQUFVLGdCQUFnQixRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBRXpGLE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFFTSxNQUFNLENBQUMsa0JBQWtCLENBQUMsUUFBZ0I7UUFDL0MsWUFBWSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxnREFBZ0QsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuXHRDcmVhdGVkOlxyXG5cdFx0MjAgU2VwIDIwMjNcclxuXHJcbiAgRGVzY3JpcHRpb246XHJcbiAgICBJZGVudGl0eSBhbmQgQWNjZXNzIE1hbmFnZW1lbnRcclxuXHJcblx0Q29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG5leHBvcnQgY29uc3QgTVNBTFN0b3JhZ2VLZXlzID0ge1xyXG4gIC8vTG9jYWxTdG9yYWdlXHJcbiAgcmVkaXJlY3RUbzogJ21zYWwuYXBwLnJlZGlyZWN0VG8nXHJcblxyXG4gIC8vU2Vzc2lvblN0b3JhZ2VcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIE1TQUxTdG9yYWdlIHtcclxuICBwdWJsaWMgc3RhdGljIHNhdmVSZWRpcmVjdFN0YXRlKHJlZGlyZWN0VG8sIGNhbGxlZEJ5OiBzdHJpbmcpIHtcclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKE1TQUxTdG9yYWdlS2V5cy5yZWRpcmVjdFRvLCByZWRpcmVjdFRvKTtcclxuICAgIGNvbnNvbGUubG9nKGBtc2FsLmFwcDogcmVkaXJlY3Qgc3RhdGUgc2F2ZWQ6ICR7cmVkaXJlY3RUb30uIENhbGxlZCBieTogJHtjYWxsZWRCeX1gKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzdGF0aWMgZ2V0UmVkaXJlY3RTdGF0ZShjYWxsZWRCeTogc3RyaW5nKSB7XHJcbiAgICBsZXQgcmVkaXJlY3RUbyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKE1TQUxTdG9yYWdlS2V5cy5yZWRpcmVjdFRvKTtcclxuICAgIGNvbnNvbGUubG9nKGBtc2FsLmFwcDogcmVkaXJlY3Qgc3RhdGUgcmVxdWVzdGVkOiAke3JlZGlyZWN0VG99LiBDYWxsZWQgYnk6ICR7Y2FsbGVkQnl9YCk7XHJcblxyXG4gICAgcmV0dXJuIHJlZGlyZWN0VG87XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGNsZWFyUmVkaXJlY3RTdGF0ZShjYWxsZWRCeTogc3RyaW5nKSB7XHJcbiAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShNU0FMU3RvcmFnZUtleXMucmVkaXJlY3RUbyk7XHJcbiAgICBjb25zb2xlLmxvZyhgbXNhbC5hcHA6IHJlZGlyZWN0IHN0YXRlIGNsZWFyZWQuIENhbGxlZCBieTogJHtjYWxsZWRCeX1gKTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
</file>
|
|
15
15
|
*/
|
|
16
16
|
//Node
|
|
17
|
-
import { Component } from "@angular/core";
|
|
17
|
+
import { Component, Input } from "@angular/core";
|
|
18
18
|
//App
|
|
19
19
|
import { Utils, Subs } from "../../../core";
|
|
20
20
|
import * as i0 from "@angular/core";
|
|
@@ -24,6 +24,8 @@ export class BaseComponent {
|
|
|
24
24
|
dataLoading = true;
|
|
25
25
|
dataLoaded = false;
|
|
26
26
|
dataFound = false;
|
|
27
|
+
//Inputs
|
|
28
|
+
classes;
|
|
27
29
|
ngOnDestroy() {
|
|
28
30
|
this.subs.unsubscribe();
|
|
29
31
|
}
|
|
@@ -50,12 +52,14 @@ export class BaseComponent {
|
|
|
50
52
|
this.dataFound = found;
|
|
51
53
|
}
|
|
52
54
|
static ɵfac = function BaseComponent_Factory(t) { return new (t || BaseComponent)(); };
|
|
53
|
-
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseComponent, selectors: [["ng-component"]], decls: 0, vars: 0, template: function BaseComponent_Template(rf, ctx) { }, encapsulation: 2 });
|
|
55
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: BaseComponent, selectors: [["ng-component"]], inputs: { classes: "classes" }, decls: 0, vars: 0, template: function BaseComponent_Template(rf, ctx) { }, encapsulation: 2 });
|
|
54
56
|
}
|
|
55
57
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(BaseComponent, [{
|
|
56
58
|
type: Component,
|
|
57
59
|
args: [{
|
|
58
60
|
template: ''
|
|
59
61
|
}]
|
|
60
|
-
}], null,
|
|
61
|
-
|
|
62
|
+
}], null, { classes: [{
|
|
63
|
+
type: Input
|
|
64
|
+
}] }); })();
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9iYXNlL2Jhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQWEsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVELEtBQUs7QUFDTCxPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLNUMsTUFBTSxPQUFnQixhQUFhO0lBQ3ZCLElBQUksR0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO0lBRWxDLDRDQUE0QztJQUNsQyxXQUFXLEdBQVksSUFBSSxDQUFDO0lBQzVCLFVBQVUsR0FBWSxLQUFLLENBQUM7SUFDNUIsU0FBUyxHQUFZLEtBQUssQ0FBQztJQUVyQyxRQUFRO0lBQ0MsT0FBTyxDQUFTO0lBRXpCLFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxrQkFBa0IsQ0FBQyxJQUFJO1FBQzVCLElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxJQUFJLE9BQU8sS0FBSyxLQUFLLFdBQVcsSUFBSSxLQUFLLElBQUksRUFBRTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRTdELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUN4QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBRU0seUJBQXlCO1FBQzlCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU0sa0JBQWtCLENBQUMsUUFBaUIsSUFBSTtRQUM3QyxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO3VFQXhDbUIsYUFBYTs2REFBYixhQUFhOzt1RkFBYixhQUFhO2NBSGxDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsRUFBRTthQUNiO2dCQVVVLE9BQU87a0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbjxmaWxlPlxyXG4gIFByb2plY3Q6XHJcbiAgICBAb3Nvdml0bnkvYW5hdG9seVxyXG5cclxuICBBdXRob3JzOlxyXG4gICAgVmFkaW0gT3Nvdml0bnkgdmFkaW1Ab3Nvdml0bnkuY29tXHJcbiAgICBBbmF0b2x5IE9zb3ZpdG55IGFuYXRvbHlAb3Nvdml0bnkuY29tXHJcblxyXG4gIENyZWF0ZWQ6XHJcbiAgICAyOCBBdWcgMjAxOFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uRGVzdHJveSwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuLy9BcHBcclxuaW1wb3J0IHsgVXRpbHMsIFN1YnMgfSBmcm9tIFwiLi4vLi4vLi4vY29yZVwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6ICcnXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICBwcm90ZWN0ZWQgc3ViczogU3VicyA9IG5ldyBTdWJzKCk7XHJcblxyXG4gIC8vQ29tcG9uZW50IERhdGEgPT4gdXN1YWxseSBsb2FkaW5nIGZyb20gQVBJXHJcbiAgcHJvdGVjdGVkIGRhdGFMb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcclxuICBwcm90ZWN0ZWQgZGF0YUxvYWRlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByb3RlY3RlZCBkYXRhRm91bmQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLy9JbnB1dHNcclxuICBASW5wdXQoKSBjbGFzc2VzOiBzdHJpbmc7XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5zdWJzLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0RW50aXR5SWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXRWYWx1ZUJ5TmFtZUluUVMoXCJpZFwiKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRWYWx1ZUJ5TmFtZUluUVMobmFtZSkge1xyXG4gICAgbGV0IHZhbHVlID0gVXRpbHMuZ2V0VmFsdWVCeU5hbWVJblFTKG5hbWUpO1xyXG4gICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gXCJ1bmRlZmluZWRcIiB8fCB2YWx1ZSA9PSBcIlwiKSByZXR1cm4gbnVsbDtcclxuXHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGF0YVN0YXJ0ZWRMb2FkaW5nKCkge1xyXG4gICAgdGhpcy5kYXRhTG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmRhdGFMb2FkZWQgPSBmYWxzZTtcclxuICAgIHRoaXMuZGF0YUZvdW5kID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZGF0YUxvYWRlZEFuZE5vdGhpbmdGb3VuZCgpIHtcclxuICAgIHRoaXMuZGF0YUxvYWRlZEFuZEZvdW5kKGZhbHNlKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBkYXRhTG9hZGVkQW5kRm91bmQoZm91bmQ6IGJvb2xlYW4gPSB0cnVlKSB7XHJcbiAgICB0aGlzLmRhdGFMb2FkaW5nID0gZmFsc2U7XHJcbiAgICB0aGlzLmRhdGFMb2FkZWQgPSB0cnVlO1xyXG4gICAgdGhpcy5kYXRhRm91bmQgPSBmb3VuZDtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
|
|
14
14
|
</file>
|
|
15
15
|
*/
|
|
16
|
-
//
|
|
16
|
+
//Node
|
|
17
17
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
18
18
|
import * as i0 from "@angular/core";
|
|
19
19
|
import * as i1 from "../../../core/services/appcontext.service";
|
|
@@ -106,4 +106,4 @@ export class BuyAccessButtonComponent {
|
|
|
106
106
|
}], planselect: [{
|
|
107
107
|
type: Output
|
|
108
108
|
}] }); })();
|
|
109
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9iaWxsaW5nL2J1eWFjY2Vzcy1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5hdG9seS9zcmMvbGliL3VpL2NvbXBvbmVudHMvYmlsbGluZy9idXlhY2Nlc3MtYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7OztJQ2hCM0UsMkJBQTZCO0lBQzNCLDJDQUFvRjtJQUN0RixpQkFBTTs7O0lBR0osaUNBQ29DO0lBQ2xDLDJCQUNGO0lBQUEsaUJBQVM7Ozs7SUFFVCxpQ0FFaUM7SUFBekIscUxBQVMsZUFBQSxxQkFBYyxDQUFBLElBQUM7SUFDOUIseUJBQ0Y7SUFBQSxpQkFBUzs7O0lBVlgsMkJBQXFEO0lBQ25ELDJGQUdTO0lBRVQsMkZBSVM7SUFDWCxpQkFBTTs7O0lBVEssZUFBeUI7SUFBekIsd0RBQXlCO0lBS3pCLGVBQTZDO0lBQTdDLG1GQUE2Qzs7O0lBWjFELDJCQUE0QjtJQUMxQiwrRUFFTTtJQUVOLCtFQVdNO0lBQ1IsaUJBQU07OztJQWhCRSxlQUFxQjtJQUFyQiw2Q0FBcUI7SUFJckIsZUFBNkM7SUFBN0MsNEVBQTZDOztBRHFCckQsTUFBTSxPQUFPLHdCQUF3QjtJQVlmO0lBWHBCLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUN2QixXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDakIsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBRWIsSUFBSSxDQUFTO0lBQ2IsU0FBUyxDQUFTO0lBQ2xCLHFCQUFxQixHQUFZLEtBQUssQ0FBQztJQUV0QyxVQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFN0QsWUFBb0IsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7SUFDakQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUU3QyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDO2FBQzdEO1lBRUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtJQUNSLFlBQVk7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztrRkEvQlUsd0JBQXdCOzZEQUF4Qix3QkFBd0I7WUMxQnJDLHlFQWlCTTs7WUFqQkEseUNBQW9COzs7dUZEMEJiLHdCQUF3QjtjQUpwQyxTQUFTOzJCQUNFLDBCQUEwQjtvRUFTM0IsSUFBSTtrQkFBWixLQUFLO1lBQ0csU0FBUztrQkFBakIsS0FBSztZQUNHLHFCQUFxQjtrQkFBN0IsS0FBSztZQUVJLFVBQVU7a0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTQgQXVnIDIwMThcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7QXBwQ29udGV4dFNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL2NvcmUvc2VydmljZXMvYXBwY29udGV4dC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYW5hdG9seS1idXlhY2Nlc3MtYnV0dG9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnV5YWNjZXNzLWJ1dHRvbi5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCdXlBY2Nlc3NCdXR0b25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIGNvbnRleHRVcGRhdGVkID0gZmFsc2U7XHJcbiAgaXNVc2VyU2lnbmVkSW4gPSBmYWxzZTtcclxuICBjdXJyZW50UGxhbiA9IC0xO1xyXG4gIGN1cnJlbnRQbGFuVGl0bGUgPSAnJztcclxuXHJcbiAgQElucHV0KCkgcGxhbjogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHBsYW5UaXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHZpc2libGVJZlVzZXJTaWduZWRJbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgcGxhbnNlbGVjdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29udGV4dDogQXBwQ29udGV4dFNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hcHBDb250ZXh0LmdldEN1cnJlbnQoKGN1cnJlbnQpID0+IHtcclxuICAgICAgdGhpcy5pc1VzZXJTaWduZWRJbiA9IGN1cnJlbnQuaXNVc2VyU2lnbmVkSW47XHJcblxyXG4gICAgICBpZiAodGhpcy5pc1VzZXJTaWduZWRJbikge1xyXG4gICAgICAgIHRoaXMuY3VycmVudFBsYW4gPSBjdXJyZW50LmFjY291bnQuYmlsbGluZ1BsYW47XHJcbiAgICAgICAgdGhpcy5jdXJyZW50UGxhblRpdGxlID0gY3VycmVudC5hY2NvdW50LmJpbGxpbmdQbGFuQXNTdHJpbmc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29udGV4dFVwZGF0ZWQgPSB0cnVlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0V2ZW50c1xyXG4gIG9uUGxhblNlbGVjdCgpIHtcclxuICAgIHRoaXMucGxhbnNlbGVjdC5lbWl0KHRoaXMucGxhbik7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgKm5nSWY9XCJjb250ZXh0VXBkYXRlZFwiPlxyXG4gIDxkaXYgKm5nSWY9XCIhaXNVc2VyU2lnbmVkSW5cIj5cclxuICAgIDxhbmF0b2x5LXNpZ251cC1idXR0b24gY2xhc3NidG49XCJidG4gYnRuLWJsb2NrIGJ0bi1wcmltYXJ5XCI+PC9hbmF0b2x5LXNpZ251cC1idXR0b24+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJpc1VzZXJTaWduZWRJbiAmJiB2aXNpYmxlSWZVc2VyU2lnbmVkSW5cIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWJsb2NrIGJ0bi1zdWNjZXNzIHNlbGVjdFBsYW5cIiBcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuID09IGN1cnJlbnRQbGFuXCI+XHJcbiAgICAgIFlvdXIgUGxhblxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tYmxvY2sgIGJ0bi13YXJuaW5nIHNlbGVjdFBsYW5cIiBcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuICE9IGN1cnJlbnRQbGFuICYmIGN1cnJlbnRQbGFuID09IDFcIiBcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uUGxhblNlbGVjdCgpXCI+XHJcbiAgICAgIEJ1eSBOb3dcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
|
|
10
10
|
Created:
|
|
11
11
|
1 Jun 2018
|
|
12
|
-
|
|
12
|
+
|
|
13
13
|
Copyright (c) 2016-2022 Osovitny Inc. All rights reserved.
|
|
14
14
|
</file>
|
|
15
15
|
*/
|
|
16
|
-
//
|
|
16
|
+
//Node
|
|
17
17
|
import { Component, EventEmitter, Input, Output } from "@angular/core";
|
|
18
18
|
import * as i0 from "@angular/core";
|
|
19
19
|
import * as i1 from "../../../core/services/appcontext.service";
|
|
@@ -118,4 +118,4 @@ export class SubscribePlanButtonComponent {
|
|
|
118
118
|
}], planselect: [{
|
|
119
119
|
type: Output
|
|
120
120
|
}] }); })();
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2JpbGxpbmcvc3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuYXRvbHkvc3JjL2xpYi91aS9jb21wb25lbnRzL2JpbGxpbmcvc3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7OztFQWNFO0FBRUYsTUFBTTtBQUNOLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7OztJQ2hCN0UsMkJBQTZCO0lBQzNCLDJDQUFvRjtJQUN0RixpQkFBTTs7O0lBR0osaUNBQ29DO0lBQ2xDLDJCQUNGO0lBQUEsaUJBQVM7OztJQUVULGlDQUNzQztJQUNwQywyQkFDRjtJQUFBLGlCQUFTOzs7O0lBRVQsaUNBRWlDO0lBQXpCLHlMQUFTLGVBQUEscUJBQWMsQ0FBQSxJQUFDO0lBQzlCLDJCQUNGO0lBQUEsaUJBQVM7OztJQWZYLDJCQUFxRDtJQUNuRCwrRkFHUztJQUVULCtGQUdTO0lBRVQsK0ZBSVM7SUFDWCxpQkFBTTs7O0lBZEssZUFBeUI7SUFBekIsd0RBQXlCO0lBS3pCLGVBQTJCO0lBQTNCLDBEQUEyQjtJQUszQixlQUFrRDtJQUFsRCwrRkFBa0Q7OztJQWpCL0QsMkJBQTRCO0lBQzFCLG1GQUVNO0lBRU4sbUZBZ0JNO0lBQ1IsaUJBQU07OztJQXJCRSxlQUFxQjtJQUFyQiw2Q0FBcUI7SUFJckIsZUFBNkM7SUFBN0MsNEVBQTZDOztBRHFCckQsTUFBTSxPQUFPLDRCQUE0QjtJQWNuQjtJQWJwQixjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztJQUN0QixhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkIsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0lBRWYsSUFBSSxDQUFTO0lBQ2IsU0FBUyxDQUFTO0lBQ2xCLHFCQUFxQixHQUFZLEtBQUssQ0FBQztJQUV0QyxVQUFVLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFN0QsWUFBb0IsVUFBNkI7UUFBN0IsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7SUFDakQsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3JDLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQztZQUU3QyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDO2dCQUM1RCxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsb0JBQW9CLENBQUM7Z0JBQzFELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLDRCQUE0QixDQUFDO2FBQ3hFO1lBRUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUTtJQUNSLFlBQVk7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEMsQ0FBQztzRkFuQ1UsNEJBQTRCOzZEQUE1Qiw0QkFBNEI7WUMxQnpDLDZFQXNCTTs7WUF0QkEseUNBQW9COzs7dUZEMEJiLDRCQUE0QjtjQUp4QyxTQUFTOzJCQUNFLCtCQUErQjtvRUFXaEMsSUFBSTtrQkFBWixLQUFLO1lBQ0csU0FBUztrQkFBakIsS0FBSztZQUNHLHFCQUFxQjtrQkFBN0IsS0FBSztZQUVJLFVBQVU7a0JBQW5CLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMSBKdW4gMjAxOFxyXG5cclxuICBDb3B5cmlnaHQgKGMpIDIwMTYtMjAyMiBPc292aXRueSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbjwvZmlsZT5cclxuKi9cclxuXHJcbi8vTm9kZVxyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEFwcENvbnRleHRTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uLy4uL2NvcmUvc2VydmljZXMvYXBwY29udGV4dC5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhbmF0b2x5LXN1YnNjcmliZS1wbGFuLWJ1dHRvblwiLFxyXG4gIHRlbXBsYXRlVXJsOiBcIi4vc3Vic2NyaWJlLXBsYW4tYnV0dG9uLmNvbXBvbmVudC5odG1sXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdWJzY3JpYmVQbGFuQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBjb250ZXh0VXBkYXRlZCA9IGZhbHNlO1xyXG4gIGlzVXNlclNpZ25lZEluID0gZmFsc2U7XHJcbiAgY3VycmVudFBsYW4gPSAtMTtcclxuICBjdXJyZW50UGxhblRpdGxlID0gXCJcIjtcclxuICByZXF1ZXN0ZWRQbGFuID0gLTE7XHJcbiAgcmVxdWVzdGVkUGxhblRpdGxlID0gXCJcIjtcclxuXHJcbiAgQElucHV0KCkgcGxhbjogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIHBsYW5UaXRsZTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHZpc2libGVJZlVzZXJTaWduZWRJbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgcGxhbnNlbGVjdDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYXBwQ29udGV4dDogQXBwQ29udGV4dFNlcnZpY2UpIHtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5hcHBDb250ZXh0LmdldEN1cnJlbnQoKGN1cnJlbnQpID0+IHtcclxuICAgICAgdGhpcy5pc1VzZXJTaWduZWRJbiA9IGN1cnJlbnQuaXNVc2VyU2lnbmVkSW47XHJcblxyXG4gICAgICBpZiAodGhpcy5pc1VzZXJTaWduZWRJbikge1xyXG4gICAgICAgIHRoaXMuY3VycmVudFBsYW4gPSBjdXJyZW50LmFjY291bnQuYmlsbGluZ1BsYW47XHJcbiAgICAgICAgdGhpcy5jdXJyZW50UGxhblRpdGxlID0gY3VycmVudC5hY2NvdW50LmJpbGxpbmdQbGFuQXNTdHJpbmc7XHJcbiAgICAgICAgdGhpcy5yZXF1ZXN0ZWRQbGFuID0gY3VycmVudC5hY2NvdW50LnJlcXVlc3RlZEJpbGxpbmdQbGFuO1xyXG4gICAgICAgIHRoaXMucmVxdWVzdGVkUGxhblRpdGxlID0gY3VycmVudC5hY2NvdW50LnJlcXVlc3RlZEJpbGxpbmdQbGFuQXNTdHJpbmc7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY29udGV4dFVwZGF0ZWQgPSB0cnVlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvL0V2ZW50c1xyXG4gIG9uUGxhblNlbGVjdCgpIHtcclxuICAgIHRoaXMucGxhbnNlbGVjdC5lbWl0KHRoaXMucGxhbik7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgKm5nSWY9XCJjb250ZXh0VXBkYXRlZFwiPlxyXG4gIDxkaXYgKm5nSWY9XCIhaXNVc2VyU2lnbmVkSW5cIj5cclxuICAgIDxhbmF0b2x5LXNpZ251cC1idXR0b24gY2xhc3NidG49XCJidG4gYnRuLWJsb2NrIGJ0bi1wcmltYXJ5XCI+PC9hbmF0b2x5LXNpZ251cC1idXR0b24+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJpc1VzZXJTaWduZWRJbiAmJiB2aXNpYmxlSWZVc2VyU2lnbmVkSW5cIj5cclxuICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWJsb2NrIGJ0bi1zdWNjZXNzIHNlbGVjdFBsYW5cIiBcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuID09IGN1cnJlbnRQbGFuXCI+XHJcbiAgICAgIFlvdXIgUGxhblxyXG4gICAgPC9idXR0b24+XHJcblxyXG4gICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tYmxvY2sgIGJ0bi13YXJuaW5nIHNlbGVjdFBsYW5cIiBcclxuICAgICAgICAgICAgKm5nSWY9XCJwbGFuID09IHJlcXVlc3RlZFBsYW5cIj5cclxuICAgICAgUmVxdWVzdGVkXHJcbiAgICA8L2J1dHRvbj5cclxuXHJcbiAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1ibG9jayAgYnRuLXdhcm5pbmcgc2VsZWN0UGxhblwiIFxyXG4gICAgICAgICAgICAqbmdJZj1cInBsYW4gIT0gY3VycmVudFBsYW4gJiYgcGxhbiAhPSByZXF1ZXN0ZWRQbGFuXCIgXHJcbiAgICAgICAgICAgIChjbGljayk9XCJvblBsYW5TZWxlY3QoKVwiPlxyXG4gICAgICBTdWJzY3JpYmVcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
//
|
|
1
|
+
//Node
|
|
2
2
|
import { Component, Input } from "@angular/core";
|
|
3
|
-
//
|
|
3
|
+
//App
|
|
4
4
|
import { AppCoreSettings } from "../../../core/consts/settings";
|
|
5
5
|
import { BaseEditComponent } from "../base/base-edit.component";
|
|
6
6
|
import { DefaultEditorOptions } from "./html-editor.defaultoptions";
|
|
@@ -93,4 +93,4 @@ export class BaseHtmlEditorComponent extends BaseEditComponent {
|
|
|
93
93
|
}], editorOptions: [{
|
|
94
94
|
type: Input
|
|
95
95
|
}] }); })();
|
|
96
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1odG1sLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmF0b2x5L3NyYy9saWIvdWkvY29tcG9uZW50cy9odG1sLWVkaXRvci9iYXNlLWh0bWwtZWRpdG9yLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQkEsTUFBTTtBQUNOLE9BQU8sRUFBaUIsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxLQUFLO0FBQ0wsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQUtwRSxNQUFNLE9BQWdCLHVCQUF3QixTQUFRLGlCQUFpQjtJQUUzRCxZQUFZLENBQUM7SUFFdkIsaUJBQWlCO0lBQ1YsT0FBTyxDQUFDO0lBQ1IsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO0lBQ2hDLHVCQUF1QixHQUFHLEVBQUUsQ0FBQztJQUVwQyxTQUFTO0lBQ0EsZUFBZSxHQUFHLE1BQU0sQ0FBQztJQUN6QixhQUFhLEdBQVcsRUFBRSxDQUFDO0lBRXBDO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUM7UUFDN0IsSUFBSSxPQUFPLElBQUksQ0FBQyxhQUFhLElBQUksUUFBUSxFQUFFO1lBQ3pDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztTQUN0QztRQUVELElBQUksVUFBVSxHQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLG9CQUFvQixFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQzlELE1BQU0sR0FBRyxHQUFHLGVBQWUsQ0FBQyxlQUFlLENBQUM7UUFFNUMsSUFBSSxHQUFHLEVBQUU7WUFDUCxVQUFVLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDbkIsRUFBRSxFQUNGLFVBQVUsRUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksR0FBRyxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQ3ZDLENBQUM7U0FDSDtRQUVELElBQUksVUFBVSxDQUFDLE1BQU0sSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRTtZQUN0RCxVQUFVLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1NBQ2xEO1FBRUQsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUM7SUFDNUIsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLElBQUksR0FBRyxJQUFJLENBQUM7UUFDbEIsVUFBVSxDQUFDO1lBQ1QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQztZQUNwQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ1YsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBRTNDLGdCQUFnQjtRQUNoQixJQUFJLENBQUMsdUJBQXVCLEdBQUcsRUFBRSxDQUFDO1FBRWxDLElBQUksT0FBTyxFQUFFO1lBQ1gsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ3ZDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQ2Q7U0FDRjtJQUNILENBQUM7SUFFUyxTQUFTO1FBQ2pCLElBQUksSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUM7UUFFNUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsZUFBZTtJQUNSLGtCQUFrQixDQUFDLE1BQU07UUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBRWxCLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDakMsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3JDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNmLENBQUMsQ0FBQyxDQUFDO1NBQ0o7YUFBTTtZQUNMLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVNLGlCQUFpQixDQUFDLE9BQU87UUFDOUIsSUFBSSxDQUFDLFlBQVksR0FBRyxPQUFPLENBQUM7UUFDNUIsSUFBSSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sZUFBZSxDQUFDLFVBQVUsRUFBRSxjQUFjO1FBQy9DLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLElBQUk7WUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2hDLElBQUksT0FBTyxNQUFNLElBQUksV0FBVyxJQUFJLE1BQU0sSUFBSSxJQUFJLEVBQUU7Z0JBQ2xELE9BQU87YUFDUjtZQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztZQUN0RCxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUM7UUFDaEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO2lGQWhHbUIsdUJBQXVCOzZEQUF2Qix1QkFBdUI7O3VGQUF2Qix1QkFBdUI7Y0FINUMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxFQUFFO2FBQ2I7c0NBV1UsZUFBZTtrQkFBdkIsS0FBSztZQUNHLGFBQWE7a0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxyXG48ZmlsZT5cclxuICBQcm9qZWN0OlxyXG4gICAgQG9zb3ZpdG55L2FuYXRvbHlcclxuXHJcbiAgQXV0aG9yczpcclxuICAgIFZhZGltIE9zb3ZpdG55IHZhZGltQG9zb3ZpdG55LmNvbVxyXG4gICAgQW5hdG9seSBPc292aXRueSBhbmF0b2x5QG9zb3ZpdG55LmNvbVxyXG5cclxuICBDcmVhdGVkOlxyXG4gICAgMTIgRGVjIDIwMTdcclxuXHJcbiAgQ29weXJpZ2h0IChjKSAyMDE2LTIwMjIgT3Nvdml0bnkgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG48L2ZpbGU+XHJcbiovXHJcblxyXG4vL0dsb2JhbFxyXG5kZWNsYXJlIGxldCAkOiBhbnk7XHJcblxyXG4vL05vZGVcclxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8vQXBwXHJcbmltcG9ydCB7IEFwcENvcmVTZXR0aW5ncyB9IGZyb20gXCIuLi8uLi8uLi9jb3JlL2NvbnN0cy9zZXR0aW5nc1wiO1xyXG5pbXBvcnQgeyBCYXNlRWRpdENvbXBvbmVudCB9IGZyb20gXCIuLi9iYXNlL2Jhc2UtZWRpdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRGVmYXVsdEVkaXRvck9wdGlvbnMgfSBmcm9tIFwiLi9odG1sLWVkaXRvci5kZWZhdWx0b3B0aW9uc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgdGVtcGxhdGU6IFwiXCIsXHJcbn0pXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlSHRtbEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VFZGl0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0XHJcbntcclxuICBwcm90ZWN0ZWQgZnJvYWxhRWRpdG9yO1xyXG5cclxuICAvLyBQdWJsaWMgbWVtYmVyc1xyXG4gIHB1YmxpYyBvcHRpb25zO1xyXG4gIHB1YmxpYyBmcm9hbGFFZGl0b3JJbml0aWFsaXplZCA9IGZhbHNlO1xyXG4gIHB1YmxpYyBhZnRlckluaXRpYWxpemVkQWN0aW9ucyA9IFtdO1xyXG5cclxuICAvLyBJbnB1dHNcclxuICBASW5wdXQoKSBlZGl0b3JMYWJlbFRleHQgPSBcIkh0bWxcIjtcclxuICBASW5wdXQoKSBlZGl0b3JPcHRpb25zOiBPYmplY3QgPSB7fTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBsZXQgb3B0ID0gdGhpcy5lZGl0b3JPcHRpb25zO1xyXG4gICAgaWYgKHR5cGVvZiB0aGlzLmVkaXRvck9wdGlvbnMgPT0gXCJzdHJpbmdcIikge1xyXG4gICAgICBvcHQgPSBKU09OLnBhcnNlKHRoaXMuZWRpdG9yT3B0aW9ucyk7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IG5ld09wdGlvbnM6IGFueSA9ICQuZXh0ZW5kKHt9LCBEZWZhdWx0RWRpdG9yT3B0aW9ucywgb3B0KTtcclxuICAgIGNvbnN0IGtleSA9IEFwcENvcmVTZXR0aW5ncy5mcm9hbGFFZGl0b3JLZXk7XHJcblxyXG4gICAgaWYgKGtleSkge1xyXG4gICAgICBuZXdPcHRpb25zID0gJC5leHRlbmQoXHJcbiAgICAgICAge30sXHJcbiAgICAgICAgbmV3T3B0aW9ucyxcclxuICAgICAgICBKU09OLnBhcnNlKCd7IFwia2V5XCI6IFwiJyArIGtleSArICdcIiB9JylcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAobmV3T3B0aW9ucy5ldmVudHMgJiYgbmV3T3B0aW9ucy5ldmVudHMuaW5pdGlhbGl6ZWQpIHtcclxuICAgICAgbmV3T3B0aW9ucy5ldmVudHMuaW5pdGlhbGl6ZWQub3ZlcnJpZGRlbiA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMub3B0aW9ucyA9IG5ld09wdGlvbnM7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKSB7XHJcbiAgICBjb25zdCB0aGF0ID0gdGhpcztcclxuICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xyXG4gICAgICB0aGF0LmZyb2FsYUVkaXRvckluaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgICAgdGhhdC5vbkluaXRpYWxpemVkKCk7XHJcbiAgICB9LCAzMDApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkluaXRpYWxpemVkKCkge1xyXG4gICAgbGV0IGFjdGlvbnMgPSB0aGlzLmFmdGVySW5pdGlhbGl6ZWRBY3Rpb25zO1xyXG5cclxuICAgIC8vIENsZWFyIGFjdGlvbnNcclxuICAgIHRoaXMuYWZ0ZXJJbml0aWFsaXplZEFjdGlvbnMgPSBbXTtcclxuXHJcbiAgICBpZiAoYWN0aW9ucykge1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFjdGlvbnMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgICBhY3Rpb25zW2ldKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBnZXRFZGl0b3IoKSB7XHJcbiAgICBpZiAodGhpcy5mcm9hbGFFZGl0b3IpIHJldHVybiB0aGlzLmZyb2FsYUVkaXRvci5nZXRFZGl0b3IoKTtcclxuXHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIFB1YmxpYyBGdW5jc1xyXG4gIHB1YmxpYyBkb0FmdGVySW5pdGlhbGl6ZWQoYWN0aW9uKSB7XHJcbiAgICBjb25zdCB0aGF0ID0gdGhpcztcclxuXHJcbiAgICBpZiAoIXRoaXMuZnJvYWxhRWRpdG9ySW5pdGlhbGl6ZWQpIHtcclxuICAgICAgdGhpcy5hZnRlckluaXRpYWxpemVkQWN0aW9ucy5wdXNoKCgpID0+IHtcclxuICAgICAgICBhY3Rpb24odGhhdCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgYWN0aW9uKHRoYXQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGluaXRpYWxpemVDb250cm9sKGNvbnRyb2wpIHtcclxuICAgIHRoaXMuZnJvYWxhRWRpdG9yID0gY29udHJvbDtcclxuICAgIHRoaXMuZnJvYWxhRWRpdG9yLmluaXRpYWxpemUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzZXRVcGxvYWRQYXJhbXModXBsb2FkVHlwZSwgdXBsb2FkUGFyZW50SWQpIHtcclxuICAgIHRoaXMuZG9BZnRlckluaXRpYWxpemVkKGZ1bmN0aW9uICh0aGF0KSB7XHJcbiAgICAgIGNvbnN0IGVkaXRvciA9IHRoYXQuZ2V0RWRpdG9yKCk7XHJcbiAgICAgIGlmICh0eXBlb2YgZWRpdG9yID09IFwidW5kZWZpbmVkXCIgfHwgZWRpdG9yID09IG51bGwpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGVkaXRvci5vcHRzLmltYWdlVXBsb2FkUGFyYW1zLnVwbG9hZFR5cGUgPSB1cGxvYWRUeXBlO1xyXG4gICAgICBlZGl0b3Iub3B0cy5pbWFnZVVwbG9hZFBhcmFtcy51cGxvYWRQYXJlbnRJZCA9IHVwbG9hZFBhcmVudElkO1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|