@igo2/auth 1.11.1 → 1.13.0-alpha.0
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/{esm2015/igo2-auth.js → esm2020/igo2-auth.mjs} +0 -0
- package/{esm2015/lib/auth-form/auth-facebook.component.js → esm2020/lib/auth-form/auth-facebook.component.mjs} +2 -7
- package/esm2020/lib/auth-form/auth-form.component.mjs +277 -0
- package/{esm2015/lib/auth-form/auth-google.component.js → esm2020/lib/auth-form/auth-google.component.mjs} +2 -7
- package/esm2020/lib/auth-form/auth-intern.component.mjs +119 -0
- package/esm2020/lib/auth-form/auth-microsoft.component.mjs +94 -0
- package/esm2020/lib/auth-form/auth-microsoftb2c.component.mjs +93 -0
- package/{esm2015/lib/auth-form/index.js → esm2020/lib/auth-form/index.mjs} +1 -1
- package/{esm2015/lib/auth-routing.module.js → esm2020/lib/auth-routing.module.mjs} +2 -2
- package/{esm2015/lib/auth.module.js → esm2020/lib/auth.module.mjs} +9 -11
- package/{esm2015/lib/shared/admin.guard.js → esm2020/lib/shared/admin.guard.mjs} +1 -1
- package/{esm2015/lib/shared/auth-microsoft.provider.js → esm2020/lib/shared/auth-microsoft.provider.mjs} +1 -1
- package/{esm2015/lib/shared/auth-msalBroadcastServiceb2c.service.js → esm2020/lib/shared/auth-msalBroadcastServiceb2c.service.mjs} +1 -1
- package/esm2020/lib/shared/auth-msalServiceb2c.service..mjs +80 -0
- package/{esm2015/lib/shared/auth.guard.js → esm2020/lib/shared/auth.guard.mjs} +1 -1
- package/{esm2015/lib/shared/auth.interceptor.js → esm2020/lib/shared/auth.interceptor.mjs} +1 -1
- package/esm2020/lib/shared/auth.interface.mjs +2 -0
- package/{esm2015/lib/shared/auth.service.js → esm2020/lib/shared/auth.service.mjs} +1 -1
- package/{esm2015/lib/shared/logged.guard.js → esm2020/lib/shared/logged.guard.mjs} +1 -1
- package/{esm2015/lib/shared/profils.guard.js → esm2020/lib/shared/profils.guard.mjs} +1 -1
- package/{esm2015/lib/shared/protected.directive.js → esm2020/lib/shared/protected.directive.mjs} +1 -1
- package/{esm2015/lib/shared/storage.interface.js → esm2020/lib/shared/storage.interface.mjs} +1 -1
- package/{esm2015/lib/shared/storage.service.js → esm2020/lib/shared/storage.service.mjs} +1 -1
- package/{esm2015/lib/shared/token.service.js → esm2020/lib/shared/token.service.mjs} +1 -1
- package/{esm2015/public_api.js → esm2020/public_api.mjs} +1 -1
- package/fesm2015/igo2-auth.mjs +1655 -0
- package/fesm2015/igo2-auth.mjs.map +1 -0
- package/{fesm2015/igo2-auth.js → fesm2020/igo2-auth.mjs} +215 -254
- package/fesm2020/igo2-auth.mjs.map +1 -0
- package/{igo2-auth.d.ts → index.d.ts} +0 -0
- package/lib/auth-form/auth-facebook.component.d.ts +1 -1
- package/lib/auth-form/auth-form.component.d.ts +1 -1
- package/lib/auth-form/auth-google.component.d.ts +1 -1
- package/lib/auth-form/auth-intern.component.d.ts +4 -4
- package/lib/auth-form/auth-microsoft.component.d.ts +1 -1
- package/lib/auth-form/auth-microsoftb2c.component.d.ts +1 -1
- package/lib/shared/auth-msalServiceb2c.service..d.ts +1 -0
- package/lib/shared/protected.directive.d.ts +1 -1
- package/package.json +27 -14
- package/bundles/igo2-auth.umd.js +0 -2203
- package/bundles/igo2-auth.umd.js.map +0 -1
- package/esm2015/lib/auth-form/auth-form.component.js +0 -286
- package/esm2015/lib/auth-form/auth-intern.component.js +0 -129
- package/esm2015/lib/auth-form/auth-microsoft.component.js +0 -100
- package/esm2015/lib/auth-form/auth-microsoftb2c.component.js +0 -99
- package/esm2015/lib/shared/auth-msalServiceb2c.service..js +0 -77
- package/esm2015/lib/shared/auth.interface.js +0 -2
- package/fesm2015/igo2-auth.js.map +0 -1
|
File without changes
|
|
@@ -54,13 +54,8 @@ AuthFacebookComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AuthF
|
|
|
54
54
|
} }, styles: ["[_nghost-%COMP%]{padding:10px 10px 10px 0;display:inline-block;position:relative;top:-3px}"], changeDetection: 0 });
|
|
55
55
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthFacebookComponent, [{
|
|
56
56
|
type: Component,
|
|
57
|
-
args: [{
|
|
58
|
-
selector: 'igo-auth-facebook',
|
|
59
|
-
templateUrl: './auth-facebook.component.html',
|
|
60
|
-
styleUrls: ['./auth-facebook.component.scss'],
|
|
61
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
62
|
-
}]
|
|
57
|
+
args: [{ selector: 'igo-auth-facebook', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div scope=\"public_profile,email\"\r\n class=\"fb-login-button\" data-max-rows=\"1\" data-size=\"large\"\r\n data-button-type=\"login_with\" data-show-faces=\"false\"\r\n data-auto-logout-link=\"false\" data-use-continue-as=\"false\">\r\n</div>\r\n", styles: [":host{padding:10px 10px 10px 0;display:inline-block;position:relative;top:-3px}\n"] }]
|
|
63
58
|
}], function () { return [{ type: i1.AuthService }, { type: i2.ConfigService }, { type: i0.ApplicationRef }]; }, { login: [{
|
|
64
59
|
type: Output
|
|
65
60
|
}] }); })();
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1mYWNlYm9vay5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2F1dGgtZmFjZWJvb2suY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYXV0aC9zcmMvbGliL2F1dGgtZm9ybS9hdXRoLWZhY2Vib29rLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBRXZCLE1BQU0sRUFDTixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7Ozs7QUFZdkIsTUFBTSxPQUFPLHFCQUFxQjtJQUtoQyxZQUNVLFdBQXdCLEVBQ3hCLE1BQXFCLEVBQ3JCLE1BQXNCO1FBRnRCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFMdEIsVUFBSyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO1FBT25FLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTVELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1NBQ3hCO2FBQU07WUFDTCxPQUFPLENBQUMsSUFBSSxDQUFDLGdEQUFnRCxDQUFDLENBQUM7U0FDaEU7SUFDSCxDQUFDO0lBRU8sZUFBZTtRQUNwQixNQUFjLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLEVBQUU7WUFDNUQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG9CQUFvQixDQUFDLFFBQVE7UUFDbkMsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLFdBQVcsRUFBRTtZQUNuQyxNQUFNLFdBQVcsR0FBRyxRQUFRLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQztZQUN0RCxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQztJQUVPLGFBQWEsQ0FBQyxLQUFLO1FBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDeEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZTtRQUNyQixJQUFJLFFBQVEsQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsRUFBRTtZQUM3QyxPQUFPO1NBQ1I7UUFFRCxNQUFNLE1BQU0sR0FDVixnRUFBZ0UsQ0FBQztRQUVuRSxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsb0JBQW9CLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkQsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUM1QyxFQUFFLENBQUMsRUFBRSxHQUFHLGdCQUFnQixDQUFDO1FBQ3pCLEVBQUUsQ0FBQyxHQUFHLEdBQUcsR0FBRyxNQUFNLFVBQVUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNqRCxFQUFFLENBQUMsTUFBTSxHQUFHLEdBQUcsRUFBRTtZQUNmLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN6QixDQUFDLENBQUM7UUFDRixHQUFHLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQzs7MEZBdkRVLHFCQUFxQjt3RUFBckIscUJBQXFCO1FDbEJsQyx5QkFJTTs7dUZEY08scUJBQXFCO2NBTmpDLFNBQVM7MkJBQ0UsbUJBQW1CLG1CQUdaLHVCQUF1QixDQUFDLE1BQU07dUhBS3JDLEtBQUs7a0JBQWQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIEFwcGxpY2F0aW9uUmVmLFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXJcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHsgQXV0aEZhY2Vib29rT3B0aW9ucyB9IGZyb20gJy4uL3NoYXJlZC9hdXRoLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGguc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1hdXRoLWZhY2Vib29rJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYXV0aC1mYWNlYm9vay5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYXV0aC1mYWNlYm9vay5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoRmFjZWJvb2tDb21wb25lbnQge1xyXG4gIHByaXZhdGUgb3B0aW9uczogQXV0aEZhY2Vib29rT3B0aW9ucztcclxuXHJcbiAgQE91dHB1dCgpIGxvZ2luOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgYXBwUmVmOiBBcHBsaWNhdGlvblJlZlxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKCdhdXRoLmZhY2Vib29rJykgfHwge307XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5hcHBJZCkge1xyXG4gICAgICB0aGlzLmxvYWRTREtGYWNlYm9vaygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS53YXJuKCdGYWNlYm9vayBhdXRoZW50aWZpY2F0aW9uIG5lZWRzIFwiYXBwSWRcIiBvcHRpb24nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3Vic2NyaWJlRXZlbnRzKCkge1xyXG4gICAgKHdpbmRvdyBhcyBhbnkpLkZCLkV2ZW50LnN1YnNjcmliZSgnYXV0aC5zdGF0dXNDaGFuZ2UnLCByZXAgPT4ge1xyXG4gICAgICB0aGlzLnN0YXR1c0NoYW5nZUNhbGxiYWNrKHJlcCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdHVzQ2hhbmdlQ2FsbGJhY2socmVzcG9uc2UpIHtcclxuICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09ICdjb25uZWN0ZWQnKSB7XHJcbiAgICAgIGNvbnN0IGFjY2Vzc1Rva2VuID0gcmVzcG9uc2UuYXV0aFJlc3BvbnNlLmFjY2Vzc1Rva2VuO1xyXG4gICAgICB0aGlzLmxvZ2luRmFjZWJvb2soYWNjZXNzVG9rZW4pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2dpbkZhY2Vib29rKHRva2VuKSB7XHJcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ2luV2l0aFRva2VuKHRva2VuLCAnZmFjZWJvb2snKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLmFwcFJlZi50aWNrKCk7XHJcbiAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkU0RLRmFjZWJvb2soKSB7XHJcbiAgICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZhY2Vib29rLWpzc2RrJykpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IHVybFNESyA9XHJcbiAgICAgICdodHRwczovL2Nvbm5lY3QuZmFjZWJvb2submV0L2ZyX0NBL3Nkay5qcyN4ZmJtbD0xJnZlcnNpb249djIuOSc7XHJcblxyXG4gICAgY29uc3QgZmpzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdO1xyXG4gICAgY29uc3QganMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcclxuICAgIGpzLmlkID0gJ2ZhY2Vib29rLWpzc2RrJztcclxuICAgIGpzLnNyYyA9IGAke3VybFNES30mYXBwSWQ9JHt0aGlzLm9wdGlvbnMuYXBwSWR9YDtcclxuICAgIGpzLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgdGhpcy5zdWJzY3JpYmVFdmVudHMoKTtcclxuICAgIH07XHJcbiAgICBmanMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoanMsIGZqcyk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgc2NvcGU9XCJwdWJsaWNfcHJvZmlsZSxlbWFpbFwiXHJcbiAgICAgY2xhc3M9XCJmYi1sb2dpbi1idXR0b25cIiBkYXRhLW1heC1yb3dzPVwiMVwiIGRhdGEtc2l6ZT1cImxhcmdlXCJcclxuICAgICBkYXRhLWJ1dHRvbi10eXBlPVwibG9naW5fd2l0aFwiIGRhdGEtc2hvdy1mYWNlcz1cImZhbHNlXCJcclxuICAgICBkYXRhLWF1dG8tbG9nb3V0LWxpbms9XCJmYWxzZVwiIGRhdGEtdXNlLWNvbnRpbnVlLWFzPVwiZmFsc2VcIj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, Input, Optional, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { NavigationStart } from '@angular/router';
|
|
3
|
+
import { filter } from 'rxjs/operators';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "../shared/auth.service";
|
|
6
|
+
import * as i2 from "@igo2/core";
|
|
7
|
+
import * as i3 from "@angular/router";
|
|
8
|
+
import * as i4 from "@angular/common";
|
|
9
|
+
import * as i5 from "@angular/material/button";
|
|
10
|
+
import * as i6 from "./auth-google.component";
|
|
11
|
+
import * as i7 from "./auth-intern.component";
|
|
12
|
+
import * as i8 from "./auth-facebook.component";
|
|
13
|
+
import * as i9 from "./auth-microsoft.component";
|
|
14
|
+
import * as i10 from "./auth-microsoftb2c.component";
|
|
15
|
+
import * as i11 from "@ngx-translate/core";
|
|
16
|
+
function AuthFormComponent_div_0_div_1_Template(rf, ctx) { if (rf & 1) {
|
|
17
|
+
i0.ɵɵelement(0, "div", 3);
|
|
18
|
+
} }
|
|
19
|
+
function AuthFormComponent_div_0_div_2_igo_auth_google_4_Template(rf, ctx) { if (rf & 1) {
|
|
20
|
+
const _r11 = i0.ɵɵgetCurrentView();
|
|
21
|
+
i0.ɵɵelementStart(0, "igo-auth-google", 7);
|
|
22
|
+
i0.ɵɵlistener("login", function AuthFormComponent_div_0_div_2_igo_auth_google_4_Template_igo_auth_google_login_0_listener() { i0.ɵɵrestoreView(_r11); const ctx_r10 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r10.onLogin()); });
|
|
23
|
+
i0.ɵɵelementEnd();
|
|
24
|
+
} }
|
|
25
|
+
function AuthFormComponent_div_0_div_2_igo_auth_microsoft_5_Template(rf, ctx) { if (rf & 1) {
|
|
26
|
+
const _r13 = i0.ɵɵgetCurrentView();
|
|
27
|
+
i0.ɵɵelementStart(0, "igo-auth-microsoft", 7);
|
|
28
|
+
i0.ɵɵlistener("login", function AuthFormComponent_div_0_div_2_igo_auth_microsoft_5_Template_igo_auth_microsoft_login_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r12 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r12.onLogin()); });
|
|
29
|
+
i0.ɵɵelementEnd();
|
|
30
|
+
} }
|
|
31
|
+
function AuthFormComponent_div_0_div_2_igo_auth_microsoftb2c_6_Template(rf, ctx) { if (rf & 1) {
|
|
32
|
+
const _r15 = i0.ɵɵgetCurrentView();
|
|
33
|
+
i0.ɵɵelementStart(0, "igo-auth-microsoftb2c", 7);
|
|
34
|
+
i0.ɵɵlistener("login", function AuthFormComponent_div_0_div_2_igo_auth_microsoftb2c_6_Template_igo_auth_microsoftb2c_login_0_listener() { i0.ɵɵrestoreView(_r15); const ctx_r14 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r14.onLogin()); });
|
|
35
|
+
i0.ɵɵelementEnd();
|
|
36
|
+
} }
|
|
37
|
+
function AuthFormComponent_div_0_div_2_igo_auth_facebook_7_Template(rf, ctx) { if (rf & 1) {
|
|
38
|
+
const _r17 = i0.ɵɵgetCurrentView();
|
|
39
|
+
i0.ɵɵelementStart(0, "igo-auth-facebook", 7);
|
|
40
|
+
i0.ɵɵlistener("login", function AuthFormComponent_div_0_div_2_igo_auth_facebook_7_Template_igo_auth_facebook_login_0_listener() { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r16.onLogin()); });
|
|
41
|
+
i0.ɵɵelementEnd();
|
|
42
|
+
} }
|
|
43
|
+
function AuthFormComponent_div_0_div_2_igo_auth_intern_8_Template(rf, ctx) { if (rf & 1) {
|
|
44
|
+
const _r19 = i0.ɵɵgetCurrentView();
|
|
45
|
+
i0.ɵɵelementStart(0, "igo-auth-intern", 8);
|
|
46
|
+
i0.ɵɵlistener("login", function AuthFormComponent_div_0_div_2_igo_auth_intern_8_Template_igo_auth_intern_login_0_listener() { i0.ɵɵrestoreView(_r19); const ctx_r18 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r18.onLogin()); });
|
|
47
|
+
i0.ɵɵelementEnd();
|
|
48
|
+
} if (rf & 2) {
|
|
49
|
+
const ctx_r9 = i0.ɵɵnextContext(3);
|
|
50
|
+
i0.ɵɵproperty("allowAnonymous", ctx_r9.options.allowAnonymous);
|
|
51
|
+
} }
|
|
52
|
+
function AuthFormComponent_div_0_div_2_Template(rf, ctx) { if (rf & 1) {
|
|
53
|
+
i0.ɵɵelementStart(0, "div", 4)(1, "h1");
|
|
54
|
+
i0.ɵɵtext(2);
|
|
55
|
+
i0.ɵɵpipe(3, "translate");
|
|
56
|
+
i0.ɵɵelementEnd();
|
|
57
|
+
i0.ɵɵtemplate(4, AuthFormComponent_div_0_div_2_igo_auth_google_4_Template, 1, 0, "igo-auth-google", 5);
|
|
58
|
+
i0.ɵɵtemplate(5, AuthFormComponent_div_0_div_2_igo_auth_microsoft_5_Template, 1, 0, "igo-auth-microsoft", 5);
|
|
59
|
+
i0.ɵɵtemplate(6, AuthFormComponent_div_0_div_2_igo_auth_microsoftb2c_6_Template, 1, 0, "igo-auth-microsoftb2c", 5);
|
|
60
|
+
i0.ɵɵtemplate(7, AuthFormComponent_div_0_div_2_igo_auth_facebook_7_Template, 1, 0, "igo-auth-facebook", 5);
|
|
61
|
+
i0.ɵɵtemplate(8, AuthFormComponent_div_0_div_2_igo_auth_intern_8_Template, 1, 1, "igo-auth-intern", 6);
|
|
62
|
+
i0.ɵɵelementEnd();
|
|
63
|
+
} if (rf & 2) {
|
|
64
|
+
const ctx_r2 = i0.ɵɵnextContext(2);
|
|
65
|
+
i0.ɵɵadvance(2);
|
|
66
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 6, "igo.auth.connection"));
|
|
67
|
+
i0.ɵɵadvance(2);
|
|
68
|
+
i0.ɵɵproperty("ngIf", ctx_r2.options.google && ctx_r2.options.google.enabled !== false);
|
|
69
|
+
i0.ɵɵadvance(1);
|
|
70
|
+
i0.ɵɵproperty("ngIf", ctx_r2.options.microsoft && ctx_r2.options.microsoft.enabled !== false);
|
|
71
|
+
i0.ɵɵadvance(1);
|
|
72
|
+
i0.ɵɵproperty("ngIf", ctx_r2.options.microsoftb2c && ctx_r2.options.microsoftb2c.enabled !== false);
|
|
73
|
+
i0.ɵɵadvance(1);
|
|
74
|
+
i0.ɵɵproperty("ngIf", ctx_r2.options.facebook && ctx_r2.options.facebook.enabled !== false);
|
|
75
|
+
i0.ɵɵadvance(1);
|
|
76
|
+
i0.ɵɵproperty("ngIf", !ctx_r2.options.intern || ctx_r2.options.intern.enabled !== false);
|
|
77
|
+
} }
|
|
78
|
+
function AuthFormComponent_div_0_div_3_Template(rf, ctx) { if (rf & 1) {
|
|
79
|
+
const _r21 = i0.ɵɵgetCurrentView();
|
|
80
|
+
i0.ɵɵelementStart(0, "div", 4)(1, "p");
|
|
81
|
+
i0.ɵɵtext(2);
|
|
82
|
+
i0.ɵɵpipe(3, "translate");
|
|
83
|
+
i0.ɵɵelementEnd();
|
|
84
|
+
i0.ɵɵelementStart(4, "button", 9);
|
|
85
|
+
i0.ɵɵlistener("click", function AuthFormComponent_div_0_div_3_Template_button_click_4_listener() { i0.ɵɵrestoreView(_r21); const ctx_r20 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r20.logout()); });
|
|
86
|
+
i0.ɵɵtext(5);
|
|
87
|
+
i0.ɵɵpipe(6, "translate");
|
|
88
|
+
i0.ɵɵelementEnd()();
|
|
89
|
+
} if (rf & 2) {
|
|
90
|
+
const ctx_r3 = i0.ɵɵnextContext(2);
|
|
91
|
+
i0.ɵɵadvance(2);
|
|
92
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind2(3, 2, "igo.auth.welcome", ctx_r3.user));
|
|
93
|
+
i0.ɵɵadvance(3);
|
|
94
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(6, 5, "igo.auth.signOut"));
|
|
95
|
+
} }
|
|
96
|
+
function AuthFormComponent_div_0_div_4_button_4_Template(rf, ctx) { if (rf & 1) {
|
|
97
|
+
const _r24 = i0.ɵɵgetCurrentView();
|
|
98
|
+
i0.ɵɵelementStart(0, "button", 9);
|
|
99
|
+
i0.ɵɵlistener("click", function AuthFormComponent_div_0_div_4_button_4_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r24); const ctx_r23 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r23.home()); });
|
|
100
|
+
i0.ɵɵtext(1);
|
|
101
|
+
i0.ɵɵpipe(2, "translate");
|
|
102
|
+
i0.ɵɵelementEnd();
|
|
103
|
+
} if (rf & 2) {
|
|
104
|
+
i0.ɵɵadvance(1);
|
|
105
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, "igo.auth.home"));
|
|
106
|
+
} }
|
|
107
|
+
function AuthFormComponent_div_0_div_4_Template(rf, ctx) { if (rf & 1) {
|
|
108
|
+
i0.ɵɵelementStart(0, "div", 4)(1, "p");
|
|
109
|
+
i0.ɵɵtext(2);
|
|
110
|
+
i0.ɵɵpipe(3, "translate");
|
|
111
|
+
i0.ɵɵelementEnd();
|
|
112
|
+
i0.ɵɵtemplate(4, AuthFormComponent_div_0_div_4_button_4_Template, 3, 3, "button", 10);
|
|
113
|
+
i0.ɵɵelementEnd();
|
|
114
|
+
} if (rf & 2) {
|
|
115
|
+
const ctx_r4 = i0.ɵɵnextContext(2);
|
|
116
|
+
i0.ɵɵadvance(2);
|
|
117
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(3, 2, "igo.auth.deconnection"));
|
|
118
|
+
i0.ɵɵadvance(2);
|
|
119
|
+
i0.ɵɵproperty("ngIf", ctx_r4.options.homeRoute);
|
|
120
|
+
} }
|
|
121
|
+
function AuthFormComponent_div_0_Template(rf, ctx) { if (rf & 1) {
|
|
122
|
+
i0.ɵɵelementStart(0, "div");
|
|
123
|
+
i0.ɵɵtemplate(1, AuthFormComponent_div_0_div_1_Template, 1, 0, "div", 1);
|
|
124
|
+
i0.ɵɵtemplate(2, AuthFormComponent_div_0_div_2_Template, 9, 8, "div", 2);
|
|
125
|
+
i0.ɵɵtemplate(3, AuthFormComponent_div_0_div_3_Template, 7, 7, "div", 2);
|
|
126
|
+
i0.ɵɵtemplate(4, AuthFormComponent_div_0_div_4_Template, 5, 4, "div", 2);
|
|
127
|
+
i0.ɵɵelementEnd();
|
|
128
|
+
} if (rf & 2) {
|
|
129
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
130
|
+
i0.ɵɵadvance(1);
|
|
131
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.auth.logged && ctx_r0.backgroundDisable);
|
|
132
|
+
i0.ɵɵadvance(1);
|
|
133
|
+
i0.ɵɵproperty("ngIf", !ctx_r0.auth.logged && ctx_r0.showLoginDiv);
|
|
134
|
+
i0.ɵɵadvance(1);
|
|
135
|
+
i0.ɵɵproperty("ngIf", ctx_r0.auth.logged && ctx_r0.showAlreadyConnectedDiv);
|
|
136
|
+
i0.ɵɵadvance(1);
|
|
137
|
+
i0.ɵɵproperty("ngIf", ctx_r0.showLogoutDiv);
|
|
138
|
+
} }
|
|
139
|
+
export class AuthFormComponent {
|
|
140
|
+
constructor(auth, config, router) {
|
|
141
|
+
this.auth = auth;
|
|
142
|
+
this.config = config;
|
|
143
|
+
this.router = router;
|
|
144
|
+
this._backgroundDisable = true;
|
|
145
|
+
this._hasAlreadyConnectedDiv = true;
|
|
146
|
+
this._hasLogoutDiv = true;
|
|
147
|
+
this._showAlreadyConnectedDiv = false;
|
|
148
|
+
this._showLogoutDiv = false;
|
|
149
|
+
this.login = new EventEmitter();
|
|
150
|
+
this.visible = true;
|
|
151
|
+
this.options = this.config.getConfig('auth') || {};
|
|
152
|
+
this.visible = Object.getOwnPropertyNames(this.options).length !== 0;
|
|
153
|
+
}
|
|
154
|
+
get backgroundDisable() {
|
|
155
|
+
if (this.isLogoutRoute || this.isLogoutRoute) {
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
158
|
+
return this._backgroundDisable;
|
|
159
|
+
}
|
|
160
|
+
set backgroundDisable(value) {
|
|
161
|
+
this._backgroundDisable = value.toString() === 'true';
|
|
162
|
+
}
|
|
163
|
+
get hasAlreadyConnectedDiv() {
|
|
164
|
+
return this._hasAlreadyConnectedDiv;
|
|
165
|
+
}
|
|
166
|
+
set hasAlreadyConnectedDiv(value) {
|
|
167
|
+
this._hasAlreadyConnectedDiv = value.toString() === 'true';
|
|
168
|
+
}
|
|
169
|
+
get hasLogoutDiv() {
|
|
170
|
+
return this._hasLogoutDiv;
|
|
171
|
+
}
|
|
172
|
+
set hasLogoutDiv(value) {
|
|
173
|
+
this._hasLogoutDiv = value.toString() === 'true';
|
|
174
|
+
}
|
|
175
|
+
get showAlreadyConnectedDiv() {
|
|
176
|
+
if (this.isLogoutRoute) {
|
|
177
|
+
return this.hasAlreadyConnectedDiv;
|
|
178
|
+
}
|
|
179
|
+
return this._showAlreadyConnectedDiv;
|
|
180
|
+
}
|
|
181
|
+
set showAlreadyConnectedDiv(value) {
|
|
182
|
+
this._showAlreadyConnectedDiv = value.toString() === 'true';
|
|
183
|
+
}
|
|
184
|
+
get showLogoutDiv() {
|
|
185
|
+
if (this.isLogoutRoute) {
|
|
186
|
+
return this.hasLogoutDiv;
|
|
187
|
+
}
|
|
188
|
+
return this._showLogoutDiv;
|
|
189
|
+
}
|
|
190
|
+
set showLogoutDiv(value) {
|
|
191
|
+
this._showLogoutDiv = value.toString() === 'true';
|
|
192
|
+
}
|
|
193
|
+
get showLoginDiv() {
|
|
194
|
+
if (!this.isLogoutRoute) {
|
|
195
|
+
return true;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
ngOnInit() {
|
|
199
|
+
this.analyzeRoute();
|
|
200
|
+
this.getName();
|
|
201
|
+
}
|
|
202
|
+
onLogin() {
|
|
203
|
+
this.auth.goToRedirectUrl();
|
|
204
|
+
this.getName();
|
|
205
|
+
this.login.emit(true);
|
|
206
|
+
}
|
|
207
|
+
logout() {
|
|
208
|
+
this.auth.logout().subscribe(() => {
|
|
209
|
+
this.user = undefined;
|
|
210
|
+
if (this.router) {
|
|
211
|
+
if (this.options.logoutRoute) {
|
|
212
|
+
this.router.navigate([this.options.logoutRoute]);
|
|
213
|
+
}
|
|
214
|
+
else if (this.options.homeRoute) {
|
|
215
|
+
this.router.navigate([this.options.homeRoute]);
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
home() {
|
|
221
|
+
if (this.router && this.options.homeRoute) {
|
|
222
|
+
this.router.navigate([this.options.homeRoute]);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
getName() {
|
|
226
|
+
const tokenDecoded = this.auth.decodeToken();
|
|
227
|
+
if (tokenDecoded) {
|
|
228
|
+
this.user = {
|
|
229
|
+
name: tokenDecoded.user.firstName || tokenDecoded.user.sourceId
|
|
230
|
+
};
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
analyzeRoute() {
|
|
234
|
+
if (!this.router) {
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
237
|
+
this.router.events
|
|
238
|
+
.pipe(filter((event) => event instanceof NavigationStart))
|
|
239
|
+
.subscribe((changeEvent) => {
|
|
240
|
+
if (changeEvent.url) {
|
|
241
|
+
const currentRoute = changeEvent.url;
|
|
242
|
+
const logoutRoute = this.options.logoutRoute;
|
|
243
|
+
const loginRoute = this.options.loginRoute;
|
|
244
|
+
this.isLogoutRoute = currentRoute === logoutRoute;
|
|
245
|
+
this.isLoginRoute = currentRoute === loginRoute;
|
|
246
|
+
if (this.isLogoutRoute) {
|
|
247
|
+
this.auth.logout();
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
AuthFormComponent.ɵfac = function AuthFormComponent_Factory(t) { return new (t || AuthFormComponent)(i0.ɵɵdirectiveInject(i1.AuthService), i0.ɵɵdirectiveInject(i2.ConfigService), i0.ɵɵdirectiveInject(i3.Router, 8)); };
|
|
254
|
+
AuthFormComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AuthFormComponent, selectors: [["igo-auth-form"]], inputs: { backgroundDisable: "backgroundDisable", hasAlreadyConnectedDiv: "hasAlreadyConnectedDiv", hasLogoutDiv: "hasLogoutDiv", showAlreadyConnectedDiv: "showAlreadyConnectedDiv", showLogoutDiv: "showLogoutDiv" }, outputs: { login: "login" }, decls: 1, vars: 1, consts: [[4, "ngIf"], ["class", "backgroundDisable", 4, "ngIf"], ["class", "login center-block", 4, "ngIf"], [1, "backgroundDisable"], [1, "login", "center-block"], [3, "login", 4, "ngIf"], [3, "allowAnonymous", "login", 4, "ngIf"], [3, "login"], [3, "allowAnonymous", "login"], ["mat-raised-button", "", "type", "button", 3, "click"], ["mat-raised-button", "", "type", "button", 3, "click", 4, "ngIf"]], template: function AuthFormComponent_Template(rf, ctx) { if (rf & 1) {
|
|
255
|
+
i0.ɵɵtemplate(0, AuthFormComponent_div_0_Template, 5, 4, "div", 0);
|
|
256
|
+
} if (rf & 2) {
|
|
257
|
+
i0.ɵɵproperty("ngIf", ctx.visible);
|
|
258
|
+
} }, dependencies: [i4.NgIf, i5.MatButton, i6.AuthGoogleComponent, i7.AuthInternComponent, i8.AuthFacebookComponent, i9.AuthMicrosoftComponent, i10.AuthMicrosoftb2cComponent, i11.TranslatePipe], styles: ["[_nghost-%COMP%]{z-index:999}div.login[_ngcontent-%COMP%]{z-index:200;width:90%;min-width:360px;max-width:600px;padding:25px 50px;border:1px solid;background-color:#fff;border-color:#888}.center-block[_ngcontent-%COMP%]{position:fixed;top:20%;left:50%;transform:translate(-50%)}.backgroundDisable[_ngcontent-%COMP%]{position:fixed;top:0;left:0;background:#000;opacity:.8;z-index:100;height:100%;width:100%}"] });
|
|
259
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthFormComponent, [{
|
|
260
|
+
type: Component,
|
|
261
|
+
args: [{ selector: 'igo-auth-form', changeDetection: ChangeDetectionStrategy.Default, template: "<div *ngIf=\"visible\">\r\n <div *ngIf=\"!auth.logged && backgroundDisable\" class=\"backgroundDisable\"></div>\r\n\r\n <div *ngIf=\"!auth.logged && showLoginDiv\" class=\"login center-block\">\r\n <h1>{{'igo.auth.connection' | translate}}</h1>\r\n\r\n <igo-auth-google\r\n *ngIf=\"options.google && options.google.enabled !== false\"\r\n (login)=\"onLogin()\">\r\n </igo-auth-google>\r\n <igo-auth-microsoft\r\n *ngIf=\"options.microsoft && options.microsoft.enabled !== false\"\r\n (login)=\"onLogin()\">\r\n </igo-auth-microsoft>\r\n <igo-auth-microsoftb2c\r\n *ngIf=\"options.microsoftb2c && options.microsoftb2c.enabled !== false\"\r\n (login)=\"onLogin()\">\r\n </igo-auth-microsoftb2c>\r\n <igo-auth-facebook\r\n *ngIf=\"options.facebook && options.facebook.enabled !== false\"\r\n (login)=\"onLogin()\">\r\n </igo-auth-facebook>\r\n <igo-auth-intern\r\n *ngIf=\"!options.intern || options.intern.enabled !== false\"\r\n [allowAnonymous]=\"options.allowAnonymous\"\r\n (login)=\"onLogin()\">\r\n </igo-auth-intern>\r\n </div>\r\n\r\n <div *ngIf=\"auth.logged && showAlreadyConnectedDiv\" class=\"login center-block\">\r\n <p>{{'igo.auth.welcome' |\u00A0translate: user}}</p>\r\n <button mat-raised-button type=\"button\" (click)=\"logout()\">{{'igo.auth.signOut' |\u00A0translate}}</button>\r\n </div>\r\n\r\n <div *ngIf=\"showLogoutDiv\" class=\"login center-block\">\r\n <p>{{'igo.auth.deconnection' |\u00A0translate}}</p>\r\n <button *ngIf=\"options.homeRoute\" mat-raised-button type=\"button\" (click)=\"home()\">{{'igo.auth.home' |\u00A0translate}}</button>\r\n </div>\r\n\r\n</div>\r\n", styles: [":host{z-index:999}div.login{z-index:200;width:90%;min-width:360px;max-width:600px;padding:25px 50px;border:1px solid;background-color:#fff;border-color:#888}.center-block{position:fixed;top:20%;left:50%;transform:translate(-50%)}.backgroundDisable{position:fixed;top:0;left:0;background:#000;opacity:.8;z-index:100;height:100%;width:100%}\n"] }]
|
|
262
|
+
}], function () { return [{ type: i1.AuthService }, { type: i2.ConfigService }, { type: i3.Router, decorators: [{
|
|
263
|
+
type: Optional
|
|
264
|
+
}] }]; }, { backgroundDisable: [{
|
|
265
|
+
type: Input
|
|
266
|
+
}], hasAlreadyConnectedDiv: [{
|
|
267
|
+
type: Input
|
|
268
|
+
}], hasLogoutDiv: [{
|
|
269
|
+
type: Input
|
|
270
|
+
}], showAlreadyConnectedDiv: [{
|
|
271
|
+
type: Input
|
|
272
|
+
}], showLogoutDiv: [{
|
|
273
|
+
type: Input
|
|
274
|
+
}], login: [{
|
|
275
|
+
type: Output
|
|
276
|
+
}] }); })();
|
|
277
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1mb3JtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2F1dGgvc3JjL2xpYi9hdXRoLWZvcm0vYXV0aC1mb3JtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2F1dGgvc3JjL2xpYi9hdXRoLWZvcm0vYXV0aC1mb3JtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBRXZCLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7OztJQ1R0Qyx5QkFBK0U7Ozs7SUFLN0UsMENBRXNCO0lBQXBCLGtNQUFTLGVBQUEsaUJBQVMsQ0FBQSxJQUFDO0lBQ3JCLGlCQUFrQjs7OztJQUNsQiw2Q0FFc0I7SUFBcEIsd01BQVMsZUFBQSxpQkFBUyxDQUFBLElBQUM7SUFDckIsaUJBQXFCOzs7O0lBQ3JCLGdEQUVzQjtJQUFwQiw4TUFBUyxlQUFBLGlCQUFTLENBQUEsSUFBQztJQUNyQixpQkFBd0I7Ozs7SUFDeEIsNENBRXNCO0lBQXBCLHNNQUFTLGVBQUEsaUJBQVMsQ0FBQSxJQUFDO0lBQ3JCLGlCQUFvQjs7OztJQUNwQiwwQ0FHc0I7SUFBcEIsa01BQVMsZUFBQSxpQkFBUyxDQUFBLElBQUM7SUFDckIsaUJBQWtCOzs7SUFGaEIsOERBQXlDOzs7SUFyQjdDLDhCQUFxRSxTQUFBO0lBQy9ELFlBQXFDOztJQUFBLGlCQUFLO0lBRTlDLHNHQUdrQjtJQUNsQiw0R0FHcUI7SUFDckIsa0hBR3dCO0lBQ3hCLDBHQUdvQjtJQUNwQixzR0FJa0I7SUFDcEIsaUJBQU07OztJQXZC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QkFDbkIsTUFBTSxZQUFZLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQztnQkFDckMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7Z0JBQzdDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO2dCQUUzQyxJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksS0FBSyxXQUFXLENBQUM7Z0JBQ2xELElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxLQUFLLFVBQVUsQ0FBQztnQkFFaEQsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO29CQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2lCQUNwQjthQUNGO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztrRkE1SVUsaUJBQWlCO29FQUFqQixpQkFBaUI7UUN0QjlCLGtFQXVDTTs7UUF2Q0Esa0NBQWE7O3VGRHNCTixpQkFBaUI7Y0FON0IsU0FBUzsyQkFDRSxlQUFlLG1CQUdSLHVCQUF1QixDQUFDLE9BQU87O3NCQTRFN0MsUUFBUTt3QkF4RVAsaUJBQWlCO2tCQURwQixLQUFLO1lBYUYsc0JBQXNCO2tCQUR6QixLQUFLO1lBVUYsWUFBWTtrQkFEZixLQUFLO1lBVUYsdUJBQXVCO2tCQUQxQixLQUFLO1lBYUYsYUFBYTtrQkFEaEIsS0FBSztZQWtCSSxLQUFLO2tCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPbkluaXQsXHJcbiAgSW5wdXQsXHJcbiAgT3B0aW9uYWwsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlclxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIsIE5hdmlnYXRpb25TdGFydCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuaW1wb3J0IHsgQXV0aE9wdGlvbnMgfSBmcm9tICcuLi9zaGFyZWQvYXV0aC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9hdXRoLnNlcnZpY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tYXV0aC1mb3JtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYXV0aC1mb3JtLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hdXRoLWZvcm0uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LkRlZmF1bHRcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dGhGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKVxyXG4gIGdldCBiYWNrZ3JvdW5kRGlzYWJsZSgpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLmlzTG9nb3V0Um91dGUgfHwgdGhpcy5pc0xvZ291dFJvdXRlKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLl9iYWNrZ3JvdW5kRGlzYWJsZTtcclxuICB9XHJcbiAgc2V0IGJhY2tncm91bmREaXNhYmxlKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9iYWNrZ3JvdW5kRGlzYWJsZSA9IHZhbHVlLnRvU3RyaW5nKCkgPT09ICd0cnVlJztcclxuICB9XHJcbiAgcHJpdmF0ZSBfYmFja2dyb3VuZERpc2FibGUgPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCBoYXNBbHJlYWR5Q29ubmVjdGVkRGl2KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2hhc0FscmVhZHlDb25uZWN0ZWREaXY7XHJcbiAgfVxyXG4gIHNldCBoYXNBbHJlYWR5Q29ubmVjdGVkRGl2KHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9oYXNBbHJlYWR5Q29ubmVjdGVkRGl2ID0gdmFsdWUudG9TdHJpbmcoKSA9PT0gJ3RydWUnO1xyXG4gIH1cclxuICBwcml2YXRlIF9oYXNBbHJlYWR5Q29ubmVjdGVkRGl2ID0gdHJ1ZTtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgaGFzTG9nb3V0RGl2KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2hhc0xvZ291dERpdjtcclxuICB9XHJcbiAgc2V0IGhhc0xvZ291dERpdih2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5faGFzTG9nb3V0RGl2ID0gdmFsdWUudG9TdHJpbmcoKSA9PT0gJ3RydWUnO1xyXG4gIH1cclxuICBwcml2YXRlIF9oYXNMb2dvdXREaXYgPSB0cnVlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGdldCBzaG93QWxyZWFkeUNvbm5lY3RlZERpdigpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLmlzTG9nb3V0Um91dGUpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaGFzQWxyZWFkeUNvbm5lY3RlZERpdjtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLl9zaG93QWxyZWFkeUNvbm5lY3RlZERpdjtcclxuICB9XHJcbiAgc2V0IHNob3dBbHJlYWR5Q29ubmVjdGVkRGl2KHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9zaG93QWxyZWFkeUNvbm5lY3RlZERpdiA9IHZhbHVlLnRvU3RyaW5nKCkgPT09ICd0cnVlJztcclxuICB9XHJcbiAgcHJpdmF0ZSBfc2hvd0FscmVhZHlDb25uZWN0ZWREaXYgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBnZXQgc2hvd0xvZ291dERpdigpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLmlzTG9nb3V0Um91dGUpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuaGFzTG9nb3V0RGl2O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMuX3Nob3dMb2dvdXREaXY7XHJcbiAgfVxyXG4gIHNldCBzaG93TG9nb3V0RGl2KHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9zaG93TG9nb3V0RGl2ID0gdmFsdWUudG9TdHJpbmcoKSA9PT0gJ3RydWUnO1xyXG4gIH1cclxuICBwcml2YXRlIF9zaG93TG9nb3V0RGl2ID0gZmFsc2U7XHJcblxyXG4gIGdldCBzaG93TG9naW5EaXYoKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoIXRoaXMuaXNMb2dvdXRSb3V0ZSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBPdXRwdXQoKSBsb2dpbjogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBwdWJsaWMgb3B0aW9uczogQXV0aE9wdGlvbnM7XHJcbiAgcHVibGljIHVzZXI7XHJcblxyXG4gIHB1YmxpYyB2aXNpYmxlID0gdHJ1ZTtcclxuXHJcbiAgcHJpdmF0ZSBpc0xvZ2luUm91dGU6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSBpc0xvZ291dFJvdXRlOiBib29sZWFuO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBhdXRoOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWdTZXJ2aWNlLFxyXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKCdhdXRoJykgfHwge307XHJcbiAgICB0aGlzLnZpc2libGUgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0aGlzLm9wdGlvbnMpLmxlbmd0aCAhPT0gMDtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuYW5hbHl6ZVJvdXRlKCk7XHJcbiAgICB0aGlzLmdldE5hbWUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvbkxvZ2luKCkge1xyXG4gICAgdGhpcy5hdXRoLmdvVG9SZWRpcmVjdFVybCgpO1xyXG4gICAgdGhpcy5nZXROYW1lKCk7XHJcbiAgICB0aGlzLmxvZ2luLmVtaXQodHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbG9nb3V0KCkge1xyXG4gICAgdGhpcy5hdXRoLmxvZ291dCgpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMudXNlciA9IHVuZGVmaW5lZDtcclxuICAgICAgaWYgKHRoaXMucm91dGVyKSB7XHJcbiAgICAgICAgaWYgKHRoaXMub3B0aW9ucy5sb2dvdXRSb3V0ZSkge1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMub3B0aW9ucy5sb2dvdXRSb3V0ZV0pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5vcHRpb25zLmhvbWVSb3V0ZSkge1xyXG4gICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMub3B0aW9ucy5ob21lUm91dGVdKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGhvbWUoKSB7XHJcbiAgICBpZiAodGhpcy5yb3V0ZXIgJiYgdGhpcy5vcHRpb25zLmhvbWVSb3V0ZSkge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5vcHRpb25zLmhvbWVSb3V0ZV0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXROYW1lKCkge1xyXG4gICAgY29uc3QgdG9rZW5EZWNvZGVkID0gdGhpcy5hdXRoLmRlY29kZVRva2VuKCk7XHJcbiAgICBpZiAodG9rZW5EZWNvZGVkKSB7XHJcbiAgICAgIHRoaXMudXNlciA9IHtcclxuICAgICAgICBuYW1lOiB0b2tlbkRlY29kZWQudXNlci5maXJzdE5hbWUgfHwgdG9rZW5EZWNvZGVkLnVzZXIuc291cmNlSWRcclxuICAgICAgfTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYW5hbHl6ZVJvdXRlKCkge1xyXG4gICAgaWYgKCF0aGlzLnJvdXRlcikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzXHJcbiAgICAgIC5waXBlKGZpbHRlcigoZXZlbnQpID0+IGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0KSlcclxuICAgICAgLnN1YnNjcmliZSgoY2hhbmdlRXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChjaGFuZ2VFdmVudC51cmwpIHtcclxuICAgICAgICAgIGNvbnN0IGN1cnJlbnRSb3V0ZSA9IGNoYW5nZUV2ZW50LnVybDtcclxuICAgICAgICAgIGNvbnN0IGxvZ291dFJvdXRlID0gdGhpcy5vcHRpb25zLmxvZ291dFJvdXRlO1xyXG4gICAgICAgICAgY29uc3QgbG9naW5Sb3V0ZSA9IHRoaXMub3B0aW9ucy5sb2dpblJvdXRlO1xyXG5cclxuICAgICAgICAgIHRoaXMuaXNMb2dvdXRSb3V0ZSA9IGN1cnJlbnRSb3V0ZSA9PT0gbG9nb3V0Um91dGU7XHJcbiAgICAgICAgICB0aGlzLmlzTG9naW5Sb3V0ZSA9IGN1cnJlbnRSb3V0ZSA9PT0gbG9naW5Sb3V0ZTtcclxuXHJcbiAgICAgICAgICBpZiAodGhpcy5pc0xvZ291dFJvdXRlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYXV0aC5sb2dvdXQoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2ICpuZ0lmPVwidmlzaWJsZVwiPlxyXG4gIDxkaXYgKm5nSWY9XCIhYXV0aC5sb2dnZWQgJiYgYmFja2dyb3VuZERpc2FibGVcIiBjbGFzcz1cImJhY2tncm91bmREaXNhYmxlXCI+PC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCIhYXV0aC5sb2dnZWQgJiYgc2hvd0xvZ2luRGl2XCIgY2xhc3M9XCJsb2dpbiBjZW50ZXItYmxvY2tcIj5cclxuICAgIDxoMT57eydpZ28uYXV0aC5jb25uZWN0aW9uJyB8IHRyYW5zbGF0ZX19PC9oMT5cclxuXHJcbiAgICA8aWdvLWF1dGgtZ29vZ2xlXHJcbiAgICAgICpuZ0lmPVwib3B0aW9ucy5nb29nbGUgJiYgb3B0aW9ucy5nb29nbGUuZW5hYmxlZCAhPT0gZmFsc2VcIlxyXG4gICAgICAobG9naW4pPVwib25Mb2dpbigpXCI+XHJcbiAgICA8L2lnby1hdXRoLWdvb2dsZT5cclxuICAgIDxpZ28tYXV0aC1taWNyb3NvZnRcclxuICAgICAgKm5nSWY9XCJvcHRpb25zLm1pY3Jvc29mdCAmJiBvcHRpb25zLm1pY3Jvc29mdC5lbmFibGVkICE9PSBmYWxzZVwiXHJcbiAgICAgIChsb2dpbik9XCJvbkxvZ2luKClcIj5cclxuICAgIDwvaWdvLWF1dGgtbWljcm9zb2Z0PlxyXG4gICAgPGlnby1hdXRoLW1pY3Jvc29mdGIyY1xyXG4gICAgICAqbmdJZj1cIm9wdGlvbnMubWljcm9zb2Z0YjJjICYmIG9wdGlvbnMubWljcm9zb2Z0YjJjLmVuYWJsZWQgIT09IGZhbHNlXCJcclxuICAgICAgKGxvZ2luKT1cIm9uTG9naW4oKVwiPlxyXG4gICAgPC9pZ28tYXV0aC1taWNyb3NvZnRiMmM+XHJcbiAgICA8aWdvLWF1dGgtZmFjZWJvb2tcclxuICAgICAgKm5nSWY9XCJvcHRpb25zLmZhY2Vib29rICYmIG9wdGlvbnMuZmFjZWJvb2suZW5hYmxlZCAhPT0gZmFsc2VcIlxyXG4gICAgICAobG9naW4pPVwib25Mb2dpbigpXCI+XHJcbiAgICA8L2lnby1hdXRoLWZhY2Vib29rPlxyXG4gICAgPGlnby1hdXRoLWludGVyblxyXG4gICAgICAqbmdJZj1cIiFvcHRpb25zLmludGVybiB8fCBvcHRpb25zLmludGVybi5lbmFibGVkICE9PSBmYWxzZVwiXHJcbiAgICAgIFthbGxvd0Fub255bW91c109XCJvcHRpb25zLmFsbG93QW5vbnltb3VzXCJcclxuICAgICAgKGxvZ2luKT1cIm9uTG9naW4oKVwiPlxyXG4gICAgPC9pZ28tYXV0aC1pbnRlcm4+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJhdXRoLmxvZ2dlZCAmJiBzaG93QWxyZWFkeUNvbm5lY3RlZERpdlwiIGNsYXNzPVwibG9naW4gY2VudGVyLWJsb2NrXCI+XHJcbiAgICA8cD57eydpZ28uYXV0aC53ZWxjb21lJyB8wqB0cmFuc2xhdGU6IHVzZXJ9fTwvcD5cclxuICAgIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJsb2dvdXQoKVwiPnt7J2lnby5hdXRoLnNpZ25PdXQnIHzCoHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXYgKm5nSWY9XCJzaG93TG9nb3V0RGl2XCIgY2xhc3M9XCJsb2dpbiBjZW50ZXItYmxvY2tcIj5cclxuICAgIDxwPnt7J2lnby5hdXRoLmRlY29ubmVjdGlvbicgfMKgdHJhbnNsYXRlfX08L3A+XHJcbiAgICA8YnV0dG9uICpuZ0lmPVwib3B0aW9ucy5ob21lUm91dGVcIiBtYXQtcmFpc2VkLWJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImhvbWUoKVwiPnt7J2lnby5hdXRoLmhvbWUnIHzCoHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgPC9kaXY+XHJcblxyXG48L2Rpdj5cclxuIl19
|
|
@@ -92,13 +92,8 @@ AuthGoogleComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AuthGoo
|
|
|
92
92
|
} }, styles: ["[_nghost-%COMP%]{padding:10px 10px 10px 0;display:inline-block}.google-login-button[_ngcontent-%COMP%] .abcRioButton{color:#000000de}"], changeDetection: 0 });
|
|
93
93
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthGoogleComponent, [{
|
|
94
94
|
type: Component,
|
|
95
|
-
args: [{
|
|
96
|
-
selector: 'igo-auth-google',
|
|
97
|
-
templateUrl: './auth-google.component.html',
|
|
98
|
-
styleUrls: ['./auth-google.component.scss'],
|
|
99
|
-
changeDetection: ChangeDetectionStrategy.OnPush
|
|
100
|
-
}]
|
|
95
|
+
args: [{ selector: 'igo-auth-google', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"g-signin2 google-login-button\" data-height=\"40\" data-width=\"265\" data-longtitle=\"true\">\r\n", styles: [":host{padding:10px 10px 10px 0;display:inline-block}.google-login-button ::ng-deep .abcRioButton{color:#000000de}\n"] }]
|
|
101
96
|
}], function () { return [{ type: i1.AuthService }, { type: i2.ConfigService }, { type: i2.LanguageService }, { type: i0.ApplicationRef }]; }, { login: [{
|
|
102
97
|
type: Output
|
|
103
98
|
}] }); })();
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1nb29nbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYXV0aC9zcmMvbGliL2F1dGgtZm9ybS9hdXRoLWdvb2dsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2F1dGgtZ29vZ2xlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBRXZCLE1BQU0sRUFDTixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7Ozs7QUFZdkIsTUFBTSxPQUFPLG1CQUFtQjtJQUs5QixZQUNVLFdBQXdCLEVBQ3hCLE1BQXFCLEVBQ3JCLGVBQWdDLEVBQ2hDLE1BQXNCO1FBSHRCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBTnRCLFVBQUssR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQVFuRSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUUxRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFO1lBQ2hELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDckI7YUFBTTtZQUNMLE9BQU8sQ0FBQyxJQUFJLENBQUMsK0RBQStELENBQUMsQ0FBQztTQUMvRTtJQUNILENBQUM7SUFFTSxpQkFBaUI7UUFDckIsTUFBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUMsTUFBTSxFQUFF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QUFDLENBQUM7UUFDRixHQUFHLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVPLFlBQVk7UUFDbEIsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUMsRUFBRSxDQUFDLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQztRQUMxQixFQUFFLENBQUMsR0FBRyxHQUFHLHdDQUF3QyxDQUFDO1FBQ2xELEdBQUcsQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN2QyxDQUFDOztzRkE5RlUsbUJBQW1CO3NFQUFuQixtQkFBbUI7UUNsQmhDLHlCQUFtRzs7dUZEa0J0RixtQkFBbUI7Y0FOL0IsU0FBUzsyQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsTUFBTTtxSkFLckMsS0FBSztrQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQXBwbGljYXRpb25SZWYsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlclxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQ29uZmlnU2VydmljZSwgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7IEF1dGhHb29nbGVPcHRpb25zIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGguaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvYXV0aC5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLWF1dGgtZ29vZ2xlJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYXV0aC1nb29nbGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2F1dGgtZ29vZ2xlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEF1dGhHb29nbGVDb21wb25lbnQge1xyXG4gIHByaXZhdGUgb3B0aW9uczogQXV0aEdvb2dsZU9wdGlvbnM7XHJcblxyXG4gIEBPdXRwdXQoKSBsb2dpbjogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmXHJcbiAgKSB7XHJcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ2F1dGguZ29vZ2xlJykgfHwge307XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucy5hcGlLZXkgJiYgdGhpcy5vcHRpb25zLmNsaWVudElkKSB7XHJcbiAgICAgIHRoaXMubG9hZFNES0dvb2dsZSgpO1xyXG4gICAgICB0aGlzLmxvYWRQbGF0Zm9ybSgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc29sZS53YXJuKCdHb29nbGUgYXV0aGVudGlmaWNhdGlvbiBuZWVkcyBcImFwaUtleVwiIGFuZCBcImNsaWVudElkXCIgb3B0aW9ucycpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGhhbmRsZVNpZ25JbkNsaWNrKCkge1xyXG4gICAgKHdpbmRvdyBhcyBhbnkpLmdhcGkuYXV0aDIuZ2V0QXV0aEluc3RhbmNlKCkuc2lnbkluKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaGFuZGxlU2lnbk91dENsaWNrKCkge1xyXG4gICAgKHdpbmRvdyBhcyBhbnkpLmdhcGkuYXV0aDIuZ2V0QXV0aEluc3RhbmNlKCkuc2lnbk91dCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBoYW5kbGVDbGllbnRMb2FkKCkge1xyXG4gICAgKHdpbmRvdyBhcyBhbnkpLmdhcGkubG9hZCgnY2xpZW50OmF1dGgyJywgKCkgPT4gdGhpcy5pbml0Q2xpZW50KCkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0Q2xpZW50KCkge1xyXG4gICAgKHdpbmRvdyBhcyBhbnkpLmdhcGkuY2xpZW50XHJcbiAgICAgIC5pbml0KHtcclxuICAgICAgICBhcGlLZXk6IHRoaXMub3B0aW9ucy5hcGlLZXksXHJcbiAgICAgICAgY2xpZW50SWQ6IHRoaXMub3B0aW9ucy5jbGllbnRJZCxcclxuICAgICAgICBkaXNjb3ZlcnlEb2NzOiBbXHJcbiAgICAgICAgICAnaHR0cHM6Ly9wZW9wbGUuZ29vZ2xlYXBpcy5jb20vJGRpc2NvdmVyeS9yZXN0P3ZlcnNpb249djEnXHJcbiAgICAgICAgXSxcclxuICAgICAgICBzY29wZTogJ3Byb2ZpbGUnXHJcbiAgICAgIH0pXHJcbiAgICAgIC50aGVuKCgpID0+IHtcclxuICAgICAgICB0aGlzLmhhbmRsZVNpZ25PdXRDbGljaygpO1xyXG4gICAgICAgIHRoaXMudXBkYXRlVGV4dEJ1dHRvbigpO1xyXG4gICAgICAgICh3aW5kb3cgYXMgYW55KS5nYXBpLmF1dGgyLmdldEF1dGhJbnN0YW5jZSgpLmlzU2lnbmVkSW4ubGlzdGVuKHJlcCA9PiB7XHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZVNpZ25pblN0YXR1cyhyZXApO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlU2lnbmluU3RhdHVzKGlzU2lnbmVkSW4pIHtcclxuICAgIHRoaXMudXBkYXRlVGV4dEJ1dHRvbigpO1xyXG4gICAgaWYgKGlzU2lnbmVkSW4pIHtcclxuICAgICAgdGhpcy5sb2dpbkdvb2dsZSgod2luZG93IGFzIGFueSkuZ2FwaS5jbGllbnQuZ2V0VG9rZW4oKS5hY2Nlc3NfdG9rZW4pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVUZXh0QnV0dG9uKCkge1xyXG4gICAgY29uc3QgYnRuID0gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcignc3BhbltpZF49XCJub3Rfc2lnbmVkX1wiXScpO1xyXG4gICAgaWYgKGJ0biAmJiB0aGlzLmxhbmd1YWdlU2VydmljZS5nZXRMYW5ndWFnZSgpICE9PSAnZW4nKSB7XHJcbiAgICAgIGlmIChidG4uaW5uZXJIVE1MID09PSAnU2lnbiBpbiB3aXRoIEdvb2dsZScpIHtcclxuICAgICAgICBidG4uaW5uZXJIVE1MID0gdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlLmluc3RhbnQoJ2lnby5hdXRoLmdvb2dsZS5sb2dpbicpO1xyXG4gICAgICB9IGVsc2UgaWYgKGJ0bi5pbm5lckhUTUwgPT09ICdTaWduZWQgaW4gd2l0aCBHb29nbGUnKSB7XHJcbiAgICAgICAgYnRuLmlubmVySFRNTCA9IHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZS5pbnN0YW50KCdpZ28uYXV0aC5nb29nbGUubG9nZ2VkJyk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbG9naW5Hb29nbGUodG9rZW4pIHtcclxuICAgIHRoaXMuYXV0aFNlcnZpY2UubG9naW5XaXRoVG9rZW4odG9rZW4sICdnb29nbGUnKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB0aGlzLmFwcFJlZi50aWNrKCk7XHJcbiAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkU0RLR29vZ2xlKCkge1xyXG4gICAgY29uc3QgZmpzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdO1xyXG4gICAgY29uc3QganMgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcclxuICAgIGpzLmlkID0gJ2dvb2dsZS1qc3Nkayc7XHJcbiAgICBqcy5zcmMgPSAnaHR0cHM6Ly9hcGlzLmdvb2dsZS5jb20vanMvYXBpLmpzJztcclxuICAgIGpzLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgdGhpcy5oYW5kbGVDbGllbnRMb2FkKCk7XHJcbiAgICB9O1xyXG4gICAgZmpzLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGpzLCBmanMpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsb2FkUGxhdGZvcm0oKSB7XHJcbiAgICBjb25zdCBmanMgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnc2NyaXB0JylbMF07XHJcbiAgICBjb25zdCBqcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xyXG4gICAganMuaWQgPSAnZ29vZ2xlLXBsYXRmb3JtJztcclxuICAgIGpzLnNyYyA9ICdodHRwczovL2FwaXMuZ29vZ2xlLmNvbS9qcy9wbGF0Zm9ybS5qcyc7XHJcbiAgICBmanMucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoanMsIGZqcyk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJnLXNpZ25pbjIgZ29vZ2xlLWxvZ2luLWJ1dHRvblwiIGRhdGEtaGVpZ2h0PVwiNDBcIiBkYXRhLXdpZHRoPVwiMjY1XCIgZGF0YS1sb25ndGl0bGU9XCJ0cnVlXCI+XHJcbiJdfQ==
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { Validators } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../shared/auth.service";
|
|
5
|
+
import * as i2 from "@igo2/core";
|
|
6
|
+
import * as i3 from "@angular/forms";
|
|
7
|
+
import * as i4 from "@angular/common";
|
|
8
|
+
import * as i5 from "@angular/material/form-field";
|
|
9
|
+
import * as i6 from "@angular/material/input";
|
|
10
|
+
import * as i7 from "@angular/material/button";
|
|
11
|
+
import * as i8 from "@ngx-translate/core";
|
|
12
|
+
function AuthInternComponent_button_12_Template(rf, ctx) { if (rf & 1) {
|
|
13
|
+
const _r3 = i0.ɵɵgetCurrentView();
|
|
14
|
+
i0.ɵɵelementStart(0, "button", 7);
|
|
15
|
+
i0.ɵɵlistener("click", function AuthInternComponent_button_12_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.loginAnonymous()); });
|
|
16
|
+
i0.ɵɵtext(1);
|
|
17
|
+
i0.ɵɵpipe(2, "translate");
|
|
18
|
+
i0.ɵɵelementEnd();
|
|
19
|
+
} if (rf & 2) {
|
|
20
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
21
|
+
i0.ɵɵproperty("disabled", ctx_r0.loading);
|
|
22
|
+
i0.ɵɵadvance(1);
|
|
23
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, "igo.auth.accessAnonymous"), " ");
|
|
24
|
+
} }
|
|
25
|
+
function AuthInternComponent_div_13_Template(rf, ctx) { if (rf & 1) {
|
|
26
|
+
i0.ɵɵelementStart(0, "div");
|
|
27
|
+
i0.ɵɵelement(1, "br");
|
|
28
|
+
i0.ɵɵelementStart(2, "font", 8);
|
|
29
|
+
i0.ɵɵtext(3);
|
|
30
|
+
i0.ɵɵelementEnd()();
|
|
31
|
+
} if (rf & 2) {
|
|
32
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
33
|
+
i0.ɵɵadvance(3);
|
|
34
|
+
i0.ɵɵtextInterpolate(ctx_r1.error);
|
|
35
|
+
} }
|
|
36
|
+
export class AuthInternComponent {
|
|
37
|
+
constructor(auth, languageService, fb) {
|
|
38
|
+
this.auth = auth;
|
|
39
|
+
this.languageService = languageService;
|
|
40
|
+
this._allowAnonymous = true;
|
|
41
|
+
this.error = '';
|
|
42
|
+
this.loading = false;
|
|
43
|
+
this.login = new EventEmitter();
|
|
44
|
+
this.form = fb.group({
|
|
45
|
+
username: ['', Validators.required],
|
|
46
|
+
password: ['', Validators.required]
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
get allowAnonymous() {
|
|
50
|
+
return this._allowAnonymous;
|
|
51
|
+
}
|
|
52
|
+
set allowAnonymous(value) {
|
|
53
|
+
this._allowAnonymous = value;
|
|
54
|
+
}
|
|
55
|
+
loginUser(values) {
|
|
56
|
+
this.loading = true;
|
|
57
|
+
this.auth.login(values.username, values.password).subscribe(() => {
|
|
58
|
+
this.login.emit(true);
|
|
59
|
+
this.loading = false;
|
|
60
|
+
}, (error) => {
|
|
61
|
+
try {
|
|
62
|
+
this.languageService.translate
|
|
63
|
+
.get('igo.auth.error.' + error.error.message)
|
|
64
|
+
.subscribe(errorMsg => (this.error = errorMsg));
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
this.error = error.error.message;
|
|
68
|
+
}
|
|
69
|
+
this.loading = false;
|
|
70
|
+
});
|
|
71
|
+
return false;
|
|
72
|
+
}
|
|
73
|
+
loginAnonymous() {
|
|
74
|
+
this.auth.loginAnonymous().subscribe(() => {
|
|
75
|
+
this.login.emit(true);
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
AuthInternComponent.ɵfac = function AuthInternComponent_Factory(t) { return new (t || AuthInternComponent)(i0.ɵɵdirectiveInject(i1.AuthService), i0.ɵɵdirectiveInject(i2.LanguageService), i0.ɵɵdirectiveInject(i3.UntypedFormBuilder)); };
|
|
80
|
+
AuthInternComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AuthInternComponent, selectors: [["igo-auth-intern"]], inputs: { allowAnonymous: "allowAnonymous" }, outputs: { login: "login" }, decls: 14, vars: 12, consts: [["role", "form", 3, "formGroup", "ngSubmit"], [1, "full-width"], ["matInput", "", "required", "", "formControlName", "username", 3, "placeholder"], ["matInput", "", "required", "", "type", "password", "formControlName", "password", 3, "placeholder"], ["mat-raised-button", "", "type", "submit"], ["mat-raised-button", "", "class", "anonymous", "type", "button", 3, "disabled", "click", 4, "ngIf"], [4, "ngIf"], ["mat-raised-button", "", "type", "button", 1, "anonymous", 3, "disabled", "click"], ["size", "3", "color", "red"]], template: function AuthInternComponent_Template(rf, ctx) { if (rf & 1) {
|
|
81
|
+
i0.ɵɵelementStart(0, "form", 0);
|
|
82
|
+
i0.ɵɵlistener("ngSubmit", function AuthInternComponent_Template_form_ngSubmit_0_listener() { return ctx.loginUser(ctx.form.value); });
|
|
83
|
+
i0.ɵɵelementStart(1, "div")(2, "mat-form-field", 1);
|
|
84
|
+
i0.ɵɵelement(3, "input", 2);
|
|
85
|
+
i0.ɵɵpipe(4, "translate");
|
|
86
|
+
i0.ɵɵelementEnd()();
|
|
87
|
+
i0.ɵɵelementStart(5, "div")(6, "mat-form-field", 1);
|
|
88
|
+
i0.ɵɵelement(7, "input", 3);
|
|
89
|
+
i0.ɵɵpipe(8, "translate");
|
|
90
|
+
i0.ɵɵelementEnd()();
|
|
91
|
+
i0.ɵɵelementStart(9, "button", 4);
|
|
92
|
+
i0.ɵɵtext(10);
|
|
93
|
+
i0.ɵɵpipe(11, "translate");
|
|
94
|
+
i0.ɵɵelementEnd();
|
|
95
|
+
i0.ɵɵtemplate(12, AuthInternComponent_button_12_Template, 3, 4, "button", 5);
|
|
96
|
+
i0.ɵɵtemplate(13, AuthInternComponent_div_13_Template, 4, 1, "div", 6);
|
|
97
|
+
i0.ɵɵelementEnd();
|
|
98
|
+
} if (rf & 2) {
|
|
99
|
+
i0.ɵɵproperty("formGroup", ctx.form);
|
|
100
|
+
i0.ɵɵadvance(3);
|
|
101
|
+
i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(4, 6, "igo.auth.user"));
|
|
102
|
+
i0.ɵɵadvance(4);
|
|
103
|
+
i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(8, 8, "igo.auth.password"));
|
|
104
|
+
i0.ɵɵadvance(3);
|
|
105
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(11, 10, "igo.auth.login"));
|
|
106
|
+
i0.ɵɵadvance(2);
|
|
107
|
+
i0.ɵɵproperty("ngIf", ctx.allowAnonymous);
|
|
108
|
+
i0.ɵɵadvance(1);
|
|
109
|
+
i0.ɵɵproperty("ngIf", ctx.error);
|
|
110
|
+
} }, dependencies: [i4.NgIf, i3.ɵNgNoValidate, i3.DefaultValueAccessor, i3.NgControlStatus, i3.NgControlStatusGroup, i3.RequiredValidator, i3.FormGroupDirective, i3.FormControlName, i5.MatFormField, i6.MatInput, i7.MatButton, i8.TranslatePipe], styles: [".full-width[_ngcontent-%COMP%]{width:100%}.anonymous[_ngcontent-%COMP%]{margin-left:10px}"] });
|
|
111
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthInternComponent, [{
|
|
112
|
+
type: Component,
|
|
113
|
+
args: [{ selector: 'igo-auth-intern', changeDetection: ChangeDetectionStrategy.Default, template: "<form [formGroup]=\"form\" role=\"form\" (ngSubmit)=\"loginUser(form.value)\">\r\n <div>\r\n <mat-form-field class=\"full-width\">\r\n <input matInput required placeholder=\"{{'igo.auth.user' | translate}}\" formControlName=\"username\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <mat-form-field class=\"full-width\">\r\n <input matInput required type=\"password\" placeholder=\"{{'igo.auth.password' | translate}}\" formControlName=\"password\">\r\n </mat-form-field>\r\n </div>\r\n\r\n <button mat-raised-button type=\"submit\">{{'igo.auth.login' | translate}}</button>\r\n <button *ngIf=\"allowAnonymous\" mat-raised-button class=\"anonymous\" type=\"button\" [disabled]=\"loading\" (click)=\"loginAnonymous()\">\r\n {{'igo.auth.accessAnonymous' | translate }}\r\n </button>\r\n <div *ngIf=\"error\">\r\n <br/>\r\n <font size=\"3\" color=\"red\">{{error}}</font>\r\n </div>\r\n</form>\r\n\r\n<!--\r\nThis part was removed from the below line to fix Angular issue 30616 : [disabled]=\"!form.valid || loading\r\n <button mat-raised-button type=\"submit\" [disabled]=\"!form.valid || loading\">{{'igo.auth.login' | translate}}</button>*/\r\n-->\r\n", styles: [".full-width{width:100%}.anonymous{margin-left:10px}\n"] }]
|
|
114
|
+
}], function () { return [{ type: i1.AuthService }, { type: i2.LanguageService }, { type: i3.UntypedFormBuilder }]; }, { allowAnonymous: [{
|
|
115
|
+
type: Input
|
|
116
|
+
}], login: [{
|
|
117
|
+
type: Output
|
|
118
|
+
}] }); })();
|
|
119
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1pbnRlcm4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYXV0aC9zcmMvbGliL2F1dGgtZm9ybS9hdXRoLWludGVybi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2F1dGgtaW50ZXJuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxVQUFVLEVBQXdDLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7Ozs7OztJQ09oRixpQ0FBaUk7SUFBM0Isb0tBQVMsZUFBQSx1QkFBZ0IsQ0FBQSxJQUFDO0lBQzlILFlBQ0Y7O0lBQUEsaUJBQVM7OztJQUZ3RSx5Q0FBb0I7SUFDbkcsZUFDRjtJQURFLGlGQUNGOzs7SUFDQSwyQkFBbUI7SUFDakIscUJBQUs7SUFDTCwrQkFBMkI7SUFBQSxZQUFTO0lBQUEsaUJBQU8sRUFBQTs7O0lBQWhCLGVBQVM7SUFBVCxrQ0FBUzs7QUREeEMsTUFBTSxPQUFPLG1CQUFtQjtJQWdCOUIsWUFDUyxJQUFpQixFQUNoQixlQUFnQyxFQUN4QyxFQUFzQjtRQUZmLFNBQUksR0FBSixJQUFJLENBQWE7UUFDaEIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBVmxDLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBRXhCLFVBQUssR0FBRyxFQUFFLENBQUM7UUFFWCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRWIsVUFBSyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO1FBT25FLElBQUksQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNuQixRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNuQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBeEJELElBQ0ksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUNELElBQUksY0FBYyxDQUFDLEtBQWM7UUFDL0IsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQW9CRCxTQUFTLENBQUMsTUFBVztRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQ3pELEdBQUcsRUFBRTtZQUNILElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsRUFDRCxDQUFDLEtBQVUsRUFBRSxFQUFFO1lBQ2IsSUFBSTtnQkFDRixJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVM7cUJBQzNCLEdBQUcsQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztxQkFDNUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUM7YUFDbkQ7WUFBQyxPQUFPLENBQUMsRUFBRTtnQkFDVixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO2FBQ2xDO1lBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxDQUNGLENBQUM7UUFDRixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxjQUFjO1FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3hDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7c0ZBcERVLG1CQUFtQjtzRUFBbkIsbUJBQW1CO1FDbEJoQywrQkFBd0U7UUFBbkMsb0dBQVksNkJBQXFCLElBQUM7UUFDckUsMkJBQUssd0JBQUE7UUFFRCwyQkFBa0c7O1FBQ3BHLGlCQUFpQixFQUFBO1FBR25CLDJCQUFLLHdCQUFBO1FBRUQsMkJBQXNIOztRQUN4SCxpQkFBaUIsRUFBQTtRQUduQixpQ0FBd0M7UUFBQSxhQUFnQzs7UUFBQSxpQkFBUztRQUNqRiw0RUFFUztRQUNULHNFQUdNO1FBQ1IsaUJBQU87O1FBckJELG9DQUFrQjtRQUdPLGVBQTZDO1FBQTdDLDhFQUE2QztRQU03QixlQUFpRDtRQUFqRCxrRkFBaUQ7UUFJdEQsZUFBZ0M7UUFBaEMsOERBQWdDO1FBQy9ELGVBQW9CO1FBQXBCLHlDQUFvQjtRQUd2QixlQUFXO1FBQVgsZ0NBQVc7O3VGRENOLG1CQUFtQjtjQU4vQixTQUFTOzJCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxPQUFPOzZIQUk1QyxjQUFjO2tCQURqQixLQUFLO1lBYUksS0FBSztrQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlclxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBWYWxpZGF0b3JzLCBVbnR5cGVkRm9ybUdyb3VwLCBVbnR5cGVkRm9ybUJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uL3NoYXJlZC9hdXRoLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLWF1dGgtaW50ZXJuJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYXV0aC1pbnRlcm4uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2F1dGgtaW50ZXJuLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoSW50ZXJuQ29tcG9uZW50IHtcclxuICBASW5wdXQoKVxyXG4gIGdldCBhbGxvd0Fub255bW91cygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9hbGxvd0Fub255bW91cztcclxuICB9XHJcbiAgc2V0IGFsbG93QW5vbnltb3VzKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl9hbGxvd0Fub255bW91cyA9IHZhbHVlO1xyXG4gIH1cclxuICBwcml2YXRlIF9hbGxvd0Fub255bW91cyA9IHRydWU7XHJcblxyXG4gIHB1YmxpYyBlcnJvciA9ICcnO1xyXG4gIHB1YmxpYyBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG4gIHB1YmxpYyBsb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKSBsb2dpbjogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBhdXRoOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgbGFuZ3VhZ2VTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2UsXHJcbiAgICBmYjogVW50eXBlZEZvcm1CdWlsZGVyXHJcbiAgKSB7XHJcbiAgICB0aGlzLmZvcm0gPSBmYi5ncm91cCh7XHJcbiAgICAgIHVzZXJuYW1lOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICBwYXNzd29yZDogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBsb2dpblVzZXIodmFsdWVzOiBhbnkpIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICB0aGlzLmF1dGgubG9naW4odmFsdWVzLnVzZXJuYW1lLCB2YWx1ZXMucGFzc3dvcmQpLnN1YnNjcmliZShcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgKGVycm9yOiBhbnkpID0+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgdGhpcy5sYW5ndWFnZVNlcnZpY2UudHJhbnNsYXRlXHJcbiAgICAgICAgICAgIC5nZXQoJ2lnby5hdXRoLmVycm9yLicgKyBlcnJvci5lcnJvci5tZXNzYWdlKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGVycm9yTXNnID0+ICh0aGlzLmVycm9yID0gZXJyb3JNc2cpKTtcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICB0aGlzLmVycm9yID0gZXJyb3IuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBsb2dpbkFub255bW91cygpIHtcclxuICAgIHRoaXMuYXV0aC5sb2dpbkFub255bW91cygpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiByb2xlPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJsb2dpblVzZXIoZm9ybS52YWx1ZSlcIj5cclxuICA8ZGl2PlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZnVsbC13aWR0aFwiPlxyXG4gICAgICA8aW5wdXQgbWF0SW5wdXQgcmVxdWlyZWQgcGxhY2Vob2xkZXI9XCJ7eydpZ28uYXV0aC51c2VyJyB8IHRyYW5zbGF0ZX19XCIgZm9ybUNvbnRyb2xOYW1lPVwidXNlcm5hbWVcIj5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXY+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmdWxsLXdpZHRoXCI+XHJcbiAgICAgIDxpbnB1dCBtYXRJbnB1dCByZXF1aXJlZCB0eXBlPVwicGFzc3dvcmRcIiBwbGFjZWhvbGRlcj1cInt7J2lnby5hdXRoLnBhc3N3b3JkJyB8IHRyYW5zbGF0ZX19XCIgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIj5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gdHlwZT1cInN1Ym1pdFwiPnt7J2lnby5hdXRoLmxvZ2luJyB8IHRyYW5zbGF0ZX19PC9idXR0b24+XHJcbiAgPGJ1dHRvbiAqbmdJZj1cImFsbG93QW5vbnltb3VzXCIgbWF0LXJhaXNlZC1idXR0b24gY2xhc3M9XCJhbm9ueW1vdXNcIiB0eXBlPVwiYnV0dG9uXCIgW2Rpc2FibGVkXT1cImxvYWRpbmdcIiAoY2xpY2spPVwibG9naW5Bbm9ueW1vdXMoKVwiPlxyXG4gICAge3snaWdvLmF1dGguYWNjZXNzQW5vbnltb3VzJyB8IHRyYW5zbGF0ZSB9fVxyXG4gIDwvYnV0dG9uPlxyXG4gIDxkaXYgKm5nSWY9XCJlcnJvclwiPlxyXG4gICAgPGJyLz5cclxuICAgIDxmb250IHNpemU9XCIzXCIgY29sb3I9XCJyZWRcIj57e2Vycm9yfX08L2ZvbnQ+XHJcbiAgPC9kaXY+XHJcbjwvZm9ybT5cclxuXHJcbjwhLS1cclxuVGhpcyBwYXJ0IHdhcyByZW1vdmVkIGZyb20gdGhlIGJlbG93IGxpbmUgdG8gZml4IEFuZ3VsYXIgaXNzdWUgMzA2MTYgOiBbZGlzYWJsZWRdPVwiIWZvcm0udmFsaWQgfHwgbG9hZGluZ1xyXG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gdHlwZT1cInN1Ym1pdFwiIFtkaXNhYmxlZF09XCIhZm9ybS52YWxpZCB8fCBsb2FkaW5nXCI+e3snaWdvLmF1dGgubG9naW4nIHwgdHJhbnNsYXRlfX08L2J1dHRvbj4qL1xyXG4tLT5cclxuIl19
|