@igo2/auth 1.15.4 → 16.0.0-rc.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/{esm2020 → esm2022}/igo2-auth.mjs +4 -4
- package/esm2022/lib/auth-form/auth-facebook.component.mjs +67 -0
- package/esm2022/lib/auth-form/auth-form.component.mjs +286 -0
- package/esm2022/lib/auth-form/auth-google.component.mjs +108 -0
- package/esm2022/lib/auth-form/auth-intern.component.mjs +134 -0
- package/esm2022/lib/auth-form/auth-microsoft.component.mjs +107 -0
- package/esm2022/lib/auth-form/auth-microsoftb2c.component.mjs +105 -0
- package/{esm2020 → esm2022}/lib/auth-form/index.mjs +5 -5
- package/{esm2020 → esm2022}/lib/auth-routing.module.mjs +24 -24
- package/{esm2020 → esm2022}/lib/auth.module.mjs +91 -91
- package/esm2022/lib/shared/admin.guard.mjs +39 -0
- package/esm2022/lib/shared/auth-microsoft.provider.mjs +86 -0
- package/esm2022/lib/shared/auth-msalBroadcastServiceb2c.service.mjs +47 -0
- package/esm2022/lib/shared/auth-msalServiceb2c.service..mjs +85 -0
- package/esm2022/lib/shared/auth.guard.mjs +38 -0
- package/esm2022/lib/shared/auth.interceptor.mjs +164 -0
- package/{esm2020 → esm2022}/lib/shared/auth.interface.mjs +2 -2
- package/esm2022/lib/shared/auth.service.mjs +168 -0
- package/esm2022/lib/shared/logged.guard.mjs +38 -0
- package/esm2022/lib/shared/profils.guard.mjs +43 -0
- package/esm2022/lib/shared/protected.directive.mjs +20 -0
- package/{esm2020 → esm2022}/lib/shared/storage.interface.mjs +1 -1
- package/esm2022/lib/shared/storage.service.mjs +99 -0
- package/esm2022/lib/shared/token.service.mjs +48 -0
- package/{esm2020 → esm2022}/public_api.mjs +18 -18
- package/{fesm2020 → fesm2022}/igo2-auth.mjs +1573 -1477
- package/fesm2022/igo2-auth.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/auth-form/auth-facebook.component.d.ts +18 -18
- package/lib/auth-form/auth-form.component.d.ts +42 -42
- package/lib/auth-form/auth-google.component.d.ts +24 -24
- package/lib/auth-form/auth-intern.component.d.ts +21 -21
- package/lib/auth-form/auth-microsoft.component.d.ts +23 -23
- package/lib/auth-form/auth-microsoftb2c.component.d.ts +23 -23
- package/lib/auth-form/index.d.ts +4 -4
- package/lib/auth-routing.module.d.ts +7 -7
- package/lib/auth.module.d.ts +23 -23
- package/lib/shared/admin.guard.d.ts +13 -13
- package/lib/shared/auth-microsoft.provider.d.ts +30 -30
- package/lib/shared/auth-msalBroadcastServiceb2c.service.d.ts +15 -15
- package/lib/shared/auth-msalServiceb2c.service..d.ts +33 -33
- package/lib/shared/auth.guard.d.ts +13 -13
- package/lib/shared/auth.interceptor.d.ts +24 -24
- package/lib/shared/auth.interface.d.ts +99 -99
- package/lib/shared/auth.service.d.ts +44 -44
- package/lib/shared/logged.guard.d.ts +13 -13
- package/lib/shared/profils.guard.d.ts +13 -13
- package/lib/shared/protected.directive.d.ts +8 -8
- package/lib/shared/storage.interface.d.ts +4 -4
- package/lib/shared/storage.service.d.ts +17 -18
- package/lib/shared/token.service.d.ts +15 -15
- package/locale/en.auth.json +28 -0
- package/locale/fr.auth.json +32 -0
- package/package.json +18 -25
- package/public_api.d.ts +15 -15
- package/esm2020/lib/auth-form/auth-facebook.component.mjs +0 -61
- package/esm2020/lib/auth-form/auth-form.component.mjs +0 -277
- package/esm2020/lib/auth-form/auth-google.component.mjs +0 -99
- package/esm2020/lib/auth-form/auth-intern.component.mjs +0 -119
- package/esm2020/lib/auth-form/auth-microsoft.component.mjs +0 -94
- package/esm2020/lib/auth-form/auth-microsoftb2c.component.mjs +0 -93
- package/esm2020/lib/shared/admin.guard.mjs +0 -33
- package/esm2020/lib/shared/auth-microsoft.provider.mjs +0 -84
- package/esm2020/lib/shared/auth-msalBroadcastServiceb2c.service.mjs +0 -38
- package/esm2020/lib/shared/auth-msalServiceb2c.service..mjs +0 -80
- package/esm2020/lib/shared/auth.guard.mjs +0 -32
- package/esm2020/lib/shared/auth.interceptor.mjs +0 -155
- package/esm2020/lib/shared/auth.service.mjs +0 -158
- package/esm2020/lib/shared/logged.guard.mjs +0 -32
- package/esm2020/lib/shared/profils.guard.mjs +0 -37
- package/esm2020/lib/shared/protected.directive.mjs +0 -19
- package/esm2020/lib/shared/storage.service.mjs +0 -91
- package/esm2020/lib/shared/token.service.mjs +0 -47
- package/fesm2015/igo2-auth.mjs +0 -1655
- package/fesm2015/igo2-auth.mjs.map +0 -1
- package/fesm2020/igo2-auth.mjs.map +0 -1
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import { Validators, UntypedFormBuilder } from '@angular/forms';
|
|
3
|
+
import { AuthService } from '../shared/auth.service';
|
|
4
|
+
import { LanguageService } from '@igo2/core';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "../shared/auth.service";
|
|
7
|
+
import * as i2 from "@igo2/core";
|
|
8
|
+
import * as i3 from "@angular/forms";
|
|
9
|
+
import * as i4 from "@angular/common";
|
|
10
|
+
import * as i5 from "@angular/material/form-field";
|
|
11
|
+
import * as i6 from "@angular/material/input";
|
|
12
|
+
import * as i7 from "@angular/material/button";
|
|
13
|
+
import * as i8 from "@ngx-translate/core";
|
|
14
|
+
function AuthInternComponent_button_18_Template(rf, ctx) { if (rf & 1) {
|
|
15
|
+
const _r3 = i0.ɵɵgetCurrentView();
|
|
16
|
+
i0.ɵɵelementStart(0, "button", 7);
|
|
17
|
+
i0.ɵɵlistener("click", function AuthInternComponent_button_18_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r3); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.loginAnonymous()); });
|
|
18
|
+
i0.ɵɵtext(1);
|
|
19
|
+
i0.ɵɵpipe(2, "translate");
|
|
20
|
+
i0.ɵɵelementEnd();
|
|
21
|
+
} if (rf & 2) {
|
|
22
|
+
const ctx_r0 = i0.ɵɵnextContext();
|
|
23
|
+
i0.ɵɵproperty("disabled", ctx_r0.loading);
|
|
24
|
+
i0.ɵɵadvance(1);
|
|
25
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(2, 2, "igo.auth.accessAnonymous"), " ");
|
|
26
|
+
} }
|
|
27
|
+
function AuthInternComponent_div_19_Template(rf, ctx) { if (rf & 1) {
|
|
28
|
+
i0.ɵɵelementStart(0, "div");
|
|
29
|
+
i0.ɵɵelement(1, "br");
|
|
30
|
+
i0.ɵɵelementStart(2, "font", 8);
|
|
31
|
+
i0.ɵɵtext(3);
|
|
32
|
+
i0.ɵɵelementEnd()();
|
|
33
|
+
} if (rf & 2) {
|
|
34
|
+
const ctx_r1 = i0.ɵɵnextContext();
|
|
35
|
+
i0.ɵɵadvance(3);
|
|
36
|
+
i0.ɵɵtextInterpolate(ctx_r1.error);
|
|
37
|
+
} }
|
|
38
|
+
export class AuthInternComponent {
|
|
39
|
+
auth;
|
|
40
|
+
languageService;
|
|
41
|
+
get allowAnonymous() {
|
|
42
|
+
return this._allowAnonymous;
|
|
43
|
+
}
|
|
44
|
+
set allowAnonymous(value) {
|
|
45
|
+
this._allowAnonymous = value;
|
|
46
|
+
}
|
|
47
|
+
_allowAnonymous = true;
|
|
48
|
+
error = '';
|
|
49
|
+
form;
|
|
50
|
+
loading = false;
|
|
51
|
+
login = new EventEmitter();
|
|
52
|
+
constructor(auth, languageService, fb) {
|
|
53
|
+
this.auth = auth;
|
|
54
|
+
this.languageService = languageService;
|
|
55
|
+
this.form = fb.group({
|
|
56
|
+
username: ['', Validators.required],
|
|
57
|
+
password: ['', Validators.required]
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
loginUser(values) {
|
|
61
|
+
this.loading = true;
|
|
62
|
+
this.auth.login(values.username, values.password).subscribe(() => {
|
|
63
|
+
this.login.emit(true);
|
|
64
|
+
this.loading = false;
|
|
65
|
+
}, (error) => {
|
|
66
|
+
try {
|
|
67
|
+
this.languageService.translate
|
|
68
|
+
.get('igo.auth.error.' + error.error.message)
|
|
69
|
+
.subscribe((errorMsg) => (this.error = errorMsg));
|
|
70
|
+
}
|
|
71
|
+
catch (e) {
|
|
72
|
+
this.error = error.error.message;
|
|
73
|
+
}
|
|
74
|
+
this.loading = false;
|
|
75
|
+
});
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
loginAnonymous() {
|
|
79
|
+
this.auth.loginAnonymous().subscribe(() => {
|
|
80
|
+
this.login.emit(true);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
static ɵfac = function AuthInternComponent_Factory(t) { return new (t || AuthInternComponent)(i0.ɵɵdirectiveInject(i1.AuthService), i0.ɵɵdirectiveInject(i2.LanguageService), i0.ɵɵdirectiveInject(i3.UntypedFormBuilder)); };
|
|
84
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AuthInternComponent, selectors: [["igo-auth-intern"]], inputs: { allowAnonymous: "allowAnonymous" }, outputs: { login: "login" }, decls: 20, vars: 18, 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) {
|
|
85
|
+
i0.ɵɵelementStart(0, "form", 0);
|
|
86
|
+
i0.ɵɵlistener("ngSubmit", function AuthInternComponent_Template_form_ngSubmit_0_listener() { return ctx.loginUser(ctx.form.value); });
|
|
87
|
+
i0.ɵɵelementStart(1, "div")(2, "mat-form-field", 1)(3, "mat-label");
|
|
88
|
+
i0.ɵɵtext(4);
|
|
89
|
+
i0.ɵɵpipe(5, "translate");
|
|
90
|
+
i0.ɵɵelementEnd();
|
|
91
|
+
i0.ɵɵelement(6, "input", 2);
|
|
92
|
+
i0.ɵɵpipe(7, "translate");
|
|
93
|
+
i0.ɵɵelementEnd()();
|
|
94
|
+
i0.ɵɵelementStart(8, "div")(9, "mat-form-field", 1)(10, "mat-label");
|
|
95
|
+
i0.ɵɵtext(11);
|
|
96
|
+
i0.ɵɵpipe(12, "translate");
|
|
97
|
+
i0.ɵɵelementEnd();
|
|
98
|
+
i0.ɵɵelement(13, "input", 3);
|
|
99
|
+
i0.ɵɵpipe(14, "translate");
|
|
100
|
+
i0.ɵɵelementEnd()();
|
|
101
|
+
i0.ɵɵelementStart(15, "button", 4);
|
|
102
|
+
i0.ɵɵtext(16);
|
|
103
|
+
i0.ɵɵpipe(17, "translate");
|
|
104
|
+
i0.ɵɵelementEnd();
|
|
105
|
+
i0.ɵɵtemplate(18, AuthInternComponent_button_18_Template, 3, 4, "button", 5);
|
|
106
|
+
i0.ɵɵtemplate(19, AuthInternComponent_div_19_Template, 4, 1, "div", 6);
|
|
107
|
+
i0.ɵɵelementEnd();
|
|
108
|
+
} if (rf & 2) {
|
|
109
|
+
i0.ɵɵproperty("formGroup", ctx.form);
|
|
110
|
+
i0.ɵɵadvance(4);
|
|
111
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(5, 8, "igo.auth.user"));
|
|
112
|
+
i0.ɵɵadvance(2);
|
|
113
|
+
i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(7, 10, "igo.auth.user"));
|
|
114
|
+
i0.ɵɵadvance(5);
|
|
115
|
+
i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(12, 12, "igo.auth.password"));
|
|
116
|
+
i0.ɵɵadvance(2);
|
|
117
|
+
i0.ɵɵpropertyInterpolate("placeholder", i0.ɵɵpipeBind1(14, 14, "igo.auth.password"));
|
|
118
|
+
i0.ɵɵadvance(3);
|
|
119
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(17, 16, "igo.auth.login"), " ");
|
|
120
|
+
i0.ɵɵadvance(2);
|
|
121
|
+
i0.ɵɵproperty("ngIf", ctx.allowAnonymous);
|
|
122
|
+
i0.ɵɵadvance(1);
|
|
123
|
+
i0.ɵɵproperty("ngIf", ctx.error);
|
|
124
|
+
} }, dependencies: [i4.NgIf, i3.ɵNgNoValidate, i3.DefaultValueAccessor, i3.NgControlStatus, i3.NgControlStatusGroup, i3.RequiredValidator, i3.FormGroupDirective, i3.FormControlName, i5.MatFormField, i5.MatLabel, i6.MatInput, i7.MatButton, i8.TranslatePipe], styles: [".full-width[_ngcontent-%COMP%]{width:100%}.anonymous[_ngcontent-%COMP%]{margin-left:10px}"] });
|
|
125
|
+
}
|
|
126
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthInternComponent, [{
|
|
127
|
+
type: Component,
|
|
128
|
+
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 <mat-label>{{ 'igo.auth.user' | translate }}</mat-label>\r\n <input\r\n matInput\r\n required\r\n placeholder=\"{{ 'igo.auth.user' | translate }}\"\r\n formControlName=\"username\"\r\n />\r\n </mat-form-field>\r\n </div>\r\n\r\n <div>\r\n <mat-form-field class=\"full-width\">\r\n <mat-label>{{ 'igo.auth.password' | translate }}</mat-label>\r\n <input\r\n matInput\r\n required\r\n type=\"password\"\r\n placeholder=\"{{ 'igo.auth.password' | translate }}\"\r\n formControlName=\"password\"\r\n />\r\n </mat-form-field>\r\n </div>\r\n\r\n <button mat-raised-button type=\"submit\">\r\n {{ 'igo.auth.login' | translate }}\r\n </button>\r\n <button\r\n *ngIf=\"allowAnonymous\"\r\n mat-raised-button\r\n class=\"anonymous\"\r\n type=\"button\"\r\n [disabled]=\"loading\"\r\n (click)=\"loginAnonymous()\"\r\n >\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", styles: [".full-width{width:100%}.anonymous{margin-left:10px}\n"] }]
|
|
129
|
+
}], function () { return [{ type: i1.AuthService }, { type: i2.LanguageService }, { type: i3.UntypedFormBuilder }]; }, { allowAnonymous: [{
|
|
130
|
+
type: Input
|
|
131
|
+
}], login: [{
|
|
132
|
+
type: Output
|
|
133
|
+
}] }); })();
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1pbnRlcm4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYXV0aC9zcmMvbGliL2F1dGgtZm9ybS9hdXRoLWludGVybi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2F1dGgtaW50ZXJuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxVQUFVLEVBRVYsa0JBQWtCLEVBQ25CLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7Ozs7Ozs7OztJQ2UzQyxpQ0FPQztJQURDLG9LQUFTLGVBQUEsdUJBQWdCLENBQUEsSUFBQztJQUUxQixZQUNGOztJQUFBLGlCQUFTOzs7SUFKUCx5Q0FBb0I7SUFHcEIsZUFDRjtJQURFLGlGQUNGOzs7SUFDQSwyQkFBbUI7SUFDakIscUJBQU07SUFDTiwrQkFBMkI7SUFBQSxZQUFXO0lBQUEsaUJBQU8sRUFBQTs7O0lBQWxCLGVBQVc7SUFBWCxrQ0FBVzs7QURuQjFDLE1BQU0sT0FBTyxtQkFBbUI7SUFpQnJCO0lBQ0M7SUFqQlYsSUFDSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsSUFBSSxjQUFjLENBQUMsS0FBYztRQUMvQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBQ08sZUFBZSxHQUFHLElBQUksQ0FBQztJQUV4QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ1gsSUFBSSxDQUFtQjtJQUN2QixPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRWIsS0FBSyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO0lBRXJFLFlBQ1MsSUFBaUIsRUFDaEIsZUFBZ0MsRUFDeEMsRUFBc0I7UUFGZixTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2hCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUd4QyxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDbkIsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDbkMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDcEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFXO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FDekQsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxFQUNELENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDYixJQUFJO2dCQUNGLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUztxQkFDM0IsR0FBRyxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO3FCQUM1QyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO2FBQ3JEO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQzthQUNsQztZQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsQ0FDRixDQUFDO1FBQ0YsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7NkVBcERVLG1CQUFtQjs2REFBbkIsbUJBQW1CO1lDdEJoQywrQkFBd0U7WUFBbkMsb0dBQVksNkJBQXFCLElBQUM7WUFDckUsMkJBQUssd0JBQUEsZ0JBQUE7WUFFVSxZQUFpQzs7WUFBQSxpQkFBWTtZQUN4RCwyQkFLRTs7WUFDSixpQkFBaUIsRUFBQTtZQUduQiwyQkFBSyx3QkFBQSxpQkFBQTtZQUVVLGFBQXFDOztZQUFBLGlCQUFZO1lBQzVELDRCQU1FOztZQUNKLGlCQUFpQixFQUFBO1lBR25CLGtDQUF3QztZQUN0QyxhQUNGOztZQUFBLGlCQUFTO1lBQ1QsNEVBU1M7WUFDVCxzRUFHTTtZQUNSLGlCQUFPOztZQTNDRCxvQ0FBa0I7WUFHUCxlQUFpQztZQUFqQywyREFBaUM7WUFJMUMsZUFBK0M7WUFBL0MsK0VBQStDO1lBUXRDLGVBQXFDO1lBQXJDLGlFQUFxQztZQUs5QyxlQUFtRDtZQUFuRCxvRkFBbUQ7WUFPdkQsZUFDRjtZQURFLHlFQUNGO1lBRUcsZUFBb0I7WUFBcEIseUNBQW9CO1lBU2pCLGVBQVc7WUFBWCxnQ0FBVzs7O3VGRGpCTixtQkFBbUI7Y0FOL0IsU0FBUzsyQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsT0FBTzs2SEFJNUMsY0FBYztrQkFEakIsS0FBSztZQWFJLEtBQUs7a0JBQWQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXJcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICBWYWxpZGF0b3JzLFxyXG4gIFVudHlwZWRGb3JtR3JvdXAsXHJcbiAgVW50eXBlZEZvcm1CdWlsZGVyXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvYXV0aC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTGFuZ3VhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1hdXRoLWludGVybicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dGgtaW50ZXJuLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hdXRoLWludGVybi5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aEludGVybkNvbXBvbmVudCB7XHJcbiAgQElucHV0KClcclxuICBnZXQgYWxsb3dBbm9ueW1vdXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fYWxsb3dBbm9ueW1vdXM7XHJcbiAgfVxyXG4gIHNldCBhbGxvd0Fub255bW91cyh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5fYWxsb3dBbm9ueW1vdXMgPSB2YWx1ZTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfYWxsb3dBbm9ueW1vdXMgPSB0cnVlO1xyXG5cclxuICBwdWJsaWMgZXJyb3IgPSAnJztcclxuICBwdWJsaWMgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcclxuICBwdWJsaWMgbG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgbG9naW46IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgYXV0aDogQXV0aFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGxhbmd1YWdlU2VydmljZTogTGFuZ3VhZ2VTZXJ2aWNlLFxyXG4gICAgZmI6IFVudHlwZWRGb3JtQnVpbGRlclxyXG4gICkge1xyXG4gICAgdGhpcy5mb3JtID0gZmIuZ3JvdXAoe1xyXG4gICAgICB1c2VybmFtZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgcGFzc3dvcmQ6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbG9naW5Vc2VyKHZhbHVlczogYW55KSB7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgdGhpcy5hdXRoLmxvZ2luKHZhbHVlcy51c2VybmFtZSwgdmFsdWVzLnBhc3N3b3JkKS5zdWJzY3JpYmUoXHJcbiAgICAgICgpID0+IHtcclxuICAgICAgICB0aGlzLmxvZ2luLmVtaXQodHJ1ZSk7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH0sXHJcbiAgICAgIChlcnJvcjogYW55KSA9PiB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgIHRoaXMubGFuZ3VhZ2VTZXJ2aWNlLnRyYW5zbGF0ZVxyXG4gICAgICAgICAgICAuZ2V0KCdpZ28uYXV0aC5lcnJvci4nICsgZXJyb3IuZXJyb3IubWVzc2FnZSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXJyb3JNc2cpID0+ICh0aGlzLmVycm9yID0gZXJyb3JNc2cpKTtcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICB0aGlzLmVycm9yID0gZXJyb3IuZXJyb3IubWVzc2FnZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICk7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBsb2dpbkFub255bW91cygpIHtcclxuICAgIHRoaXMuYXV0aC5sb2dpbkFub255bW91cygpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iLCI8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiByb2xlPVwiZm9ybVwiIChuZ1N1Ym1pdCk9XCJsb2dpblVzZXIoZm9ybS52YWx1ZSlcIj5cclxuICA8ZGl2PlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZnVsbC13aWR0aFwiPlxyXG4gICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uYXV0aC51c2VyJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnaWdvLmF1dGgudXNlcicgfCB0cmFuc2xhdGUgfX1cIlxyXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInVzZXJuYW1lXCJcclxuICAgICAgLz5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxkaXY+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmdWxsLXdpZHRoXCI+XHJcbiAgICAgIDxtYXQtbGFiZWw+e3sgJ2lnby5hdXRoLnBhc3N3b3JkJyB8IHRyYW5zbGF0ZSB9fTwvbWF0LWxhYmVsPlxyXG4gICAgICA8aW5wdXRcclxuICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgIHJlcXVpcmVkXHJcbiAgICAgICAgdHlwZT1cInBhc3N3b3JkXCJcclxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdpZ28uYXV0aC5wYXNzd29yZCcgfCB0cmFuc2xhdGUgfX1cIlxyXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInBhc3N3b3JkXCJcclxuICAgICAgLz5cclxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgPC9kaXY+XHJcblxyXG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gdHlwZT1cInN1Ym1pdFwiPlxyXG4gICAge3sgJ2lnby5hdXRoLmxvZ2luJyB8IHRyYW5zbGF0ZSB9fVxyXG4gIDwvYnV0dG9uPlxyXG4gIDxidXR0b25cclxuICAgICpuZ0lmPVwiYWxsb3dBbm9ueW1vdXNcIlxyXG4gICAgbWF0LXJhaXNlZC1idXR0b25cclxuICAgIGNsYXNzPVwiYW5vbnltb3VzXCJcclxuICAgIHR5cGU9XCJidXR0b25cIlxyXG4gICAgW2Rpc2FibGVkXT1cImxvYWRpbmdcIlxyXG4gICAgKGNsaWNrKT1cImxvZ2luQW5vbnltb3VzKClcIlxyXG4gID5cclxuICAgIHt7ICdpZ28uYXV0aC5hY2Nlc3NBbm9ueW1vdXMnIHwgdHJhbnNsYXRlIH19XHJcbiAgPC9idXR0b24+XHJcbiAgPGRpdiAqbmdJZj1cImVycm9yXCI+XHJcbiAgICA8YnIgLz5cclxuICAgIDxmb250IHNpemU9XCIzXCIgY29sb3I9XCJyZWRcIj57eyBlcnJvciB9fTwvZm9udD5cclxuICA8L2Rpdj5cclxuPC9mb3JtPlxyXG4iXX0=
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, ApplicationRef, Output, EventEmitter, Inject } from '@angular/core';
|
|
2
|
+
import { MsalBroadcastService, MsalService, MSAL_GUARD_CONFIG } from '@azure/msal-angular';
|
|
3
|
+
import { InteractionStatus, PublicClientApplication, InteractionRequiredAuthError } from '@azure/msal-browser';
|
|
4
|
+
import { ConfigService } from '@igo2/core';
|
|
5
|
+
import { AuthService } from '../shared/auth.service';
|
|
6
|
+
import { filter, takeUntil } from 'rxjs/operators';
|
|
7
|
+
import { Subject } from 'rxjs';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "../shared/auth.service";
|
|
10
|
+
import * as i2 from "@igo2/core";
|
|
11
|
+
import * as i3 from "@azure/msal-angular";
|
|
12
|
+
import * as i4 from "@angular/material/icon";
|
|
13
|
+
import * as i5 from "@angular/material/button";
|
|
14
|
+
import * as i6 from "@ngx-translate/core";
|
|
15
|
+
export class AuthMicrosoftComponent {
|
|
16
|
+
authService;
|
|
17
|
+
config;
|
|
18
|
+
appRef;
|
|
19
|
+
msalService;
|
|
20
|
+
msalGuardConfig;
|
|
21
|
+
options;
|
|
22
|
+
_destroying$ = new Subject();
|
|
23
|
+
login = new EventEmitter();
|
|
24
|
+
broadcastService;
|
|
25
|
+
constructor(authService, config, appRef, msalService, msalGuardConfig) {
|
|
26
|
+
this.authService = authService;
|
|
27
|
+
this.config = config;
|
|
28
|
+
this.appRef = appRef;
|
|
29
|
+
this.msalService = msalService;
|
|
30
|
+
this.msalGuardConfig = msalGuardConfig;
|
|
31
|
+
this.options = this.config.getConfig('auth.microsoft');
|
|
32
|
+
this.msalService.instance = new PublicClientApplication({
|
|
33
|
+
auth: this.options,
|
|
34
|
+
cache: {
|
|
35
|
+
cacheLocation: 'sessionStorage'
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
this.broadcastService = new MsalBroadcastService(this.msalService.instance, this.msalService);
|
|
39
|
+
if (this.options?.clientId) {
|
|
40
|
+
this.broadcastService.inProgress$
|
|
41
|
+
.pipe(filter((status) => status === InteractionStatus.None), takeUntil(this._destroying$))
|
|
42
|
+
.subscribe(() => {
|
|
43
|
+
this.checkAccount();
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
console.warn('Microsoft authentification needs "clientId" option');
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
loginMicrosoft() {
|
|
51
|
+
this.msalService
|
|
52
|
+
.loginPopup({ ...this.getConf().authRequest })
|
|
53
|
+
.subscribe((response) => {
|
|
54
|
+
this.msalService.instance.setActiveAccount(response.account);
|
|
55
|
+
this.checkAccount();
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
checkAccount() {
|
|
59
|
+
this.msalService.instance
|
|
60
|
+
.acquireTokenSilent(this.getConf().authRequest)
|
|
61
|
+
.then((response) => {
|
|
62
|
+
const tokenAccess = response.accessToken;
|
|
63
|
+
const tokenId = response.idToken;
|
|
64
|
+
this.authService
|
|
65
|
+
.loginWithToken(tokenAccess, 'microsoft', { tokenId })
|
|
66
|
+
.subscribe(() => {
|
|
67
|
+
this.appRef.tick();
|
|
68
|
+
this.login.emit(true);
|
|
69
|
+
});
|
|
70
|
+
})
|
|
71
|
+
.catch(async (error) => {
|
|
72
|
+
if (error instanceof InteractionRequiredAuthError) {
|
|
73
|
+
// fallback to interaction when silent call fails
|
|
74
|
+
return this.msalService.acquireTokenPopup(this.getConf().authRequest);
|
|
75
|
+
}
|
|
76
|
+
console.log(error);
|
|
77
|
+
})
|
|
78
|
+
.catch((error) => {
|
|
79
|
+
console.log('Silent token fails');
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
getConf() {
|
|
83
|
+
return this.msalGuardConfig.filter((conf) => conf.type === 'add')[0];
|
|
84
|
+
}
|
|
85
|
+
static ɵfac = function AuthMicrosoftComponent_Factory(t) { return new (t || AuthMicrosoftComponent)(i0.ɵɵdirectiveInject(i1.AuthService), i0.ɵɵdirectiveInject(i2.ConfigService), i0.ɵɵdirectiveInject(i0.ApplicationRef), i0.ɵɵdirectiveInject(i3.MsalService), i0.ɵɵdirectiveInject(MSAL_GUARD_CONFIG)); };
|
|
86
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AuthMicrosoftComponent, selectors: [["igo-auth-microsoft"]], outputs: { login: "login" }, decls: 4, vars: 3, consts: [["mat-raised-button", "", 1, "microsoft-login-button", 3, "click"], ["svgIcon", "microsoft"]], template: function AuthMicrosoftComponent_Template(rf, ctx) { if (rf & 1) {
|
|
87
|
+
i0.ɵɵelementStart(0, "button", 0);
|
|
88
|
+
i0.ɵɵlistener("click", function AuthMicrosoftComponent_Template_button_click_0_listener() { return ctx.loginMicrosoft(); });
|
|
89
|
+
i0.ɵɵelement(1, "mat-icon", 1);
|
|
90
|
+
i0.ɵɵtext(2);
|
|
91
|
+
i0.ɵɵpipe(3, "translate");
|
|
92
|
+
i0.ɵɵelementEnd();
|
|
93
|
+
} if (rf & 2) {
|
|
94
|
+
i0.ɵɵadvance(2);
|
|
95
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 1, "igo.auth.microsoft.login"), "\n");
|
|
96
|
+
} }, dependencies: [i4.MatIcon, i5.MatButton, i6.TranslatePipe], styles: ["[_nghost-%COMP%]{padding:10px 10px 10px 0;display:inline-block;position:relative;top:-15px}[_nghost-%COMP%] > button[_ngcontent-%COMP%]{font-size:15px;height:40px;width:265px}mat-icon[_ngcontent-%COMP%]{margin-right:10px}"], changeDetection: 0 });
|
|
97
|
+
}
|
|
98
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthMicrosoftComponent, [{
|
|
99
|
+
type: Component,
|
|
100
|
+
args: [{ selector: 'igo-auth-microsoft', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\r\n class=\"microsoft-login-button\"\r\n mat-raised-button\r\n (click)=\"loginMicrosoft()\"\r\n>\r\n <mat-icon svgIcon=\"microsoft\"></mat-icon>\r\n {{ 'igo.auth.microsoft.login' | translate }}\r\n</button>\r\n", styles: [":host{padding:10px 10px 10px 0;display:inline-block;position:relative;top:-15px}:host>button{font-size:15px;height:40px;width:265px}mat-icon{margin-right:10px}\n"] }]
|
|
101
|
+
}], function () { return [{ type: i1.AuthService }, { type: i2.ConfigService }, { type: i0.ApplicationRef }, { type: i3.MsalService }, { type: undefined, decorators: [{
|
|
102
|
+
type: Inject,
|
|
103
|
+
args: [MSAL_GUARD_CONFIG]
|
|
104
|
+
}] }]; }, { login: [{
|
|
105
|
+
type: Output
|
|
106
|
+
}] }); })();
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1taWNyb3NvZnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYXV0aC9zcmMvbGliL2F1dGgtZm9ybS9hdXRoLW1pY3Jvc29mdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2F1dGgtbWljcm9zb2Z0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGNBQWMsRUFDZCxNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLFdBQVcsRUFDWCxpQkFBaUIsRUFDbEIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsaUJBQWlCLEVBRWpCLHVCQUF1QixFQUd2Qiw0QkFBNEIsRUFDN0IsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBUS9CLE1BQU0sT0FBTyxzQkFBc0I7SUFPdkI7SUFDQTtJQUNBO0lBQ0E7SUFFQTtJQVhGLE9BQU8sQ0FBd0I7SUFDdEIsWUFBWSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFDMUMsS0FBSyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO0lBQzdELGdCQUFnQixDQUF1QjtJQUUvQyxZQUNVLFdBQXdCLEVBQ3hCLE1BQXFCLEVBQ3JCLE1BQXNCLEVBQ3RCLFdBQXdCLEVBRXhCLGVBQTRDO1FB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QUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxPQUFPO1FBQ2IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO2dGQWxGVSxzQkFBc0Isb0xBV3ZCLGlCQUFpQjs2REFYaEIsc0JBQXNCO1lDcENuQyxpQ0FJQztZQURDLG1HQUFTLG9CQUFnQixJQUFDO1lBRTFCLDhCQUF5QztZQUN6QyxZQUNGOztZQUFBLGlCQUFTOztZQURQLGVBQ0Y7WUFERSxrRkFDRjs7O3VGRDZCYSxzQkFBc0I7Y0FObEMsU0FBUzsyQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs7c0JBYTVDLE1BQU07dUJBQUMsaUJBQWlCO3dCQVJqQixLQUFLO2tCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBBcHBsaWNhdGlvblJlZixcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEluamVjdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIE1zYWxCcm9hZGNhc3RTZXJ2aWNlLFxyXG4gIE1zYWxTZXJ2aWNlLFxyXG4gIE1TQUxfR1VBUkRfQ09ORklHXHJcbn0gZnJvbSAnQGF6dXJlL21zYWwtYW5ndWxhcic7XHJcbmltcG9ydCB7XHJcbiAgSW50ZXJhY3Rpb25TdGF0dXMsXHJcbiAgQXV0aGVudGljYXRpb25SZXN1bHQsXHJcbiAgUHVibGljQ2xpZW50QXBwbGljYXRpb24sXHJcbiAgUG9wdXBSZXF1ZXN0LFxyXG4gIFNpbGVudFJlcXVlc3QsXHJcbiAgSW50ZXJhY3Rpb25SZXF1aXJlZEF1dGhFcnJvclxyXG59IGZyb20gJ0BhenVyZS9tc2FsLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQXV0aE1pY3Jvc29mdE9wdGlvbnMsXHJcbiAgTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvblxyXG59IGZyb20gJy4uL3NoYXJlZC9hdXRoLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1hdXRoLW1pY3Jvc29mdCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dGgtbWljcm9zb2Z0LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9hdXRoLW1pY3Jvc29mdC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoTWljcm9zb2Z0Q29tcG9uZW50IHtcclxuICBwcml2YXRlIG9wdGlvbnM/OiBBdXRoTWljcm9zb2Z0T3B0aW9ucztcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95aW5nJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIGxvZ2luOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgcHJpdmF0ZSBicm9hZGNhc3RTZXJ2aWNlOiBNc2FsQnJvYWRjYXN0U2VydmljZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgcHJpdmF0ZSBtc2FsU2VydmljZTogTXNhbFNlcnZpY2UsXHJcbiAgICBASW5qZWN0KE1TQUxfR1VBUkRfQ09ORklHKVxyXG4gICAgcHJpdmF0ZSBtc2FsR3VhcmRDb25maWc6IE1TUE1zYWxHdWFyZENvbmZpZ3VyYXRpb25bXVxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKCdhdXRoLm1pY3Jvc29mdCcpO1xyXG5cclxuICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2UgPSBuZXcgUHVibGljQ2xpZW50QXBwbGljYXRpb24oe1xyXG4gICAgICBhdXRoOiB0aGlzLm9wdGlvbnMsXHJcbiAgICAgIGNhY2hlOiB7XHJcbiAgICAgICAgY2FjaGVMb2NhdGlvbjogJ3Nlc3Npb25TdG9yYWdlJ1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLmJyb2FkY2FzdFNlcnZpY2UgPSBuZXcgTXNhbEJyb2FkY2FzdFNlcnZpY2UoXHJcbiAgICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2UsXHJcbiAgICAgIHRoaXMubXNhbFNlcnZpY2VcclxuICAgICk7XHJcblxyXG4gICAgaWYgKHRoaXMub3B0aW9ucz8uY2xpZW50SWQpIHtcclxuICAgICAgdGhpcy5icm9hZGNhc3RTZXJ2aWNlLmluUHJvZ3Jlc3MkXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAgIChzdGF0dXM6IEludGVyYWN0aW9uU3RhdHVzKSA9PiBzdGF0dXMgPT09IEludGVyYWN0aW9uU3RhdHVzLk5vbmVcclxuICAgICAgICAgICksXHJcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveWluZyQpXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jaGVja0FjY291bnQoKTtcclxuICAgICAgICB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnNvbGUud2FybignTWljcm9zb2Z0IGF1dGhlbnRpZmljYXRpb24gbmVlZHMgXCJjbGllbnRJZFwiIG9wdGlvbicpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGxvZ2luTWljcm9zb2Z0KCkge1xyXG4gICAgdGhpcy5tc2FsU2VydmljZVxyXG4gICAgICAubG9naW5Qb3B1cCh7IC4uLnRoaXMuZ2V0Q29uZigpLmF1dGhSZXF1ZXN0IH0gYXMgUG9wdXBSZXF1ZXN0KVxyXG4gICAgICAuc3Vic2NyaWJlKChyZXNwb25zZTogQXV0aGVudGljYXRpb25SZXN1bHQpID0+IHtcclxuICAgICAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlLnNldEFjdGl2ZUFjY291bnQocmVzcG9uc2UuYWNjb3VudCk7XHJcbiAgICAgICAgdGhpcy5jaGVja0FjY291bnQoKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNoZWNrQWNjb3VudCgpIHtcclxuICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2VcclxuICAgICAgLmFjcXVpcmVUb2tlblNpbGVudCh0aGlzLmdldENvbmYoKS5hdXRoUmVxdWVzdCBhcyBTaWxlbnRSZXF1ZXN0KVxyXG4gICAgICAudGhlbigocmVzcG9uc2U6IEF1dGhlbnRpY2F0aW9uUmVzdWx0KSA9PiB7XHJcbiAgICAgICAgY29uc3QgdG9rZW5BY2Nlc3MgPSByZXNwb25zZS5hY2Nlc3NUb2tlbjtcclxuICAgICAgICBjb25zdCB0b2tlbklkID0gcmVzcG9uc2UuaWRUb2tlbjtcclxuICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlXHJcbiAgICAgICAgICAubG9naW5XaXRoVG9rZW4odG9rZW5BY2Nlc3MsICdtaWNyb3NvZnQnLCB7IHRva2VuSWQgfSlcclxuICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmFwcFJlZi50aWNrKCk7XHJcbiAgICAgICAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2goYXN5bmMgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgSW50ZXJhY3Rpb25SZXF1aXJlZEF1dGhFcnJvcikge1xyXG4gICAgICAgICAgLy8gZmFsbGJhY2sgdG8gaW50ZXJhY3Rpb24gd2hlbiBzaWxlbnQgY2FsbCBmYWlsc1xyXG4gICAgICAgICAgcmV0dXJuIHRoaXMubXNhbFNlcnZpY2UuYWNxdWlyZVRva2VuUG9wdXAoXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0Q29uZigpLmF1dGhSZXF1ZXN0IGFzIFNpbGVudFJlcXVlc3RcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnNvbGUubG9nKGVycm9yKTtcclxuICAgICAgfSlcclxuICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdTaWxlbnQgdG9rZW4gZmFpbHMnKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldENvbmYoKTogTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvbiB7XHJcbiAgICByZXR1cm4gdGhpcy5tc2FsR3VhcmRDb25maWcuZmlsdGVyKChjb25mKSA9PiBjb25mLnR5cGUgPT09ICdhZGQnKVswXTtcclxuICB9XHJcbn1cclxuIiwiPGJ1dHRvblxyXG4gIGNsYXNzPVwibWljcm9zb2Z0LWxvZ2luLWJ1dHRvblwiXHJcbiAgbWF0LXJhaXNlZC1idXR0b25cclxuICAoY2xpY2spPVwibG9naW5NaWNyb3NvZnQoKVwiXHJcbj5cclxuICA8bWF0LWljb24gc3ZnSWNvbj1cIm1pY3Jvc29mdFwiPjwvbWF0LWljb24+XHJcbiAge3sgJ2lnby5hdXRoLm1pY3Jvc29mdC5sb2dpbicgfCB0cmFuc2xhdGUgfX1cclxuPC9idXR0b24+XHJcbiJdfQ==
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Component, ChangeDetectionStrategy, ApplicationRef, Output, EventEmitter, Inject } from '@angular/core';
|
|
2
|
+
import { MSAL_GUARD_CONFIG } from '@azure/msal-angular';
|
|
3
|
+
import { InteractionStatus, PublicClientApplication, InteractionRequiredAuthError } from '@azure/msal-browser';
|
|
4
|
+
import { ConfigService } from '@igo2/core';
|
|
5
|
+
import { AuthService } from '../shared/auth.service';
|
|
6
|
+
import { filter, takeUntil } from 'rxjs/operators';
|
|
7
|
+
import { Subject } from 'rxjs';
|
|
8
|
+
import { MsalBroadcastServiceb2c } from '../shared/auth-msalBroadcastServiceb2c.service';
|
|
9
|
+
import { MsalServiceb2c } from '../shared/auth-msalServiceb2c.service.';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "../shared/auth.service";
|
|
12
|
+
import * as i2 from "@igo2/core";
|
|
13
|
+
import * as i3 from "../shared/auth-msalServiceb2c.service.";
|
|
14
|
+
import * as i4 from "@angular/material/icon";
|
|
15
|
+
import * as i5 from "@angular/material/button";
|
|
16
|
+
import * as i6 from "@ngx-translate/core";
|
|
17
|
+
export class AuthMicrosoftb2cComponent {
|
|
18
|
+
authService;
|
|
19
|
+
config;
|
|
20
|
+
appRef;
|
|
21
|
+
msalService;
|
|
22
|
+
msalGuardConfig;
|
|
23
|
+
options;
|
|
24
|
+
_destroying$ = new Subject();
|
|
25
|
+
login = new EventEmitter();
|
|
26
|
+
broadcastService;
|
|
27
|
+
constructor(authService, config, appRef, msalService, msalGuardConfig) {
|
|
28
|
+
this.authService = authService;
|
|
29
|
+
this.config = config;
|
|
30
|
+
this.appRef = appRef;
|
|
31
|
+
this.msalService = msalService;
|
|
32
|
+
this.msalGuardConfig = msalGuardConfig;
|
|
33
|
+
this.options = this.config.getConfig('auth.microsoftb2c') || {};
|
|
34
|
+
this.msalService.instance = new PublicClientApplication({
|
|
35
|
+
auth: this.options.browserAuthOptions,
|
|
36
|
+
cache: {
|
|
37
|
+
cacheLocation: 'sessionStorage'
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
this.broadcastService = new MsalBroadcastServiceb2c(this.msalService.instance, this.msalService);
|
|
41
|
+
if (this.options.browserAuthOptions.clientId) {
|
|
42
|
+
this.broadcastService.inProgress$
|
|
43
|
+
.pipe(filter((status) => status === InteractionStatus.None), takeUntil(this._destroying$))
|
|
44
|
+
.subscribe(() => {
|
|
45
|
+
this.checkAccount();
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
console.warn('Microsoft authentification needs "clientId" option');
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
loginMicrosoftb2c() {
|
|
53
|
+
this.msalService
|
|
54
|
+
.loginPopup({ ...this.getConf().authRequest })
|
|
55
|
+
.subscribe((response) => {
|
|
56
|
+
this.msalService.instance.setActiveAccount(response.account);
|
|
57
|
+
this.checkAccount();
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
checkAccount() {
|
|
61
|
+
this.msalService.instance
|
|
62
|
+
.acquireTokenSilent(this.getConf().authRequest)
|
|
63
|
+
.then((response) => {
|
|
64
|
+
const token = response.idToken;
|
|
65
|
+
this.authService.loginWithToken(token, 'microsoftb2c').subscribe(() => {
|
|
66
|
+
this.appRef.tick();
|
|
67
|
+
this.login.emit(true);
|
|
68
|
+
});
|
|
69
|
+
})
|
|
70
|
+
.catch(async (error) => {
|
|
71
|
+
if (error instanceof InteractionRequiredAuthError) {
|
|
72
|
+
// fallback to interaction when silent call fails
|
|
73
|
+
return this.msalService.acquireTokenPopup(this.getConf().authRequest);
|
|
74
|
+
}
|
|
75
|
+
})
|
|
76
|
+
.catch((error) => {
|
|
77
|
+
console.log('Silent token fails');
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
getConf() {
|
|
81
|
+
return this.msalGuardConfig.filter((conf) => conf.type === 'b2c')[0];
|
|
82
|
+
}
|
|
83
|
+
static ɵfac = function AuthMicrosoftb2cComponent_Factory(t) { return new (t || AuthMicrosoftb2cComponent)(i0.ɵɵdirectiveInject(i1.AuthService), i0.ɵɵdirectiveInject(i2.ConfigService), i0.ɵɵdirectiveInject(i0.ApplicationRef), i0.ɵɵdirectiveInject(i3.MsalServiceb2c), i0.ɵɵdirectiveInject(MSAL_GUARD_CONFIG)); };
|
|
84
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: AuthMicrosoftb2cComponent, selectors: [["igo-auth-microsoftb2c"]], outputs: { login: "login" }, decls: 4, vars: 3, consts: [["mat-raised-button", "", 1, "microsoft-login-button", 3, "click"], ["svgIcon", "microsoft"]], template: function AuthMicrosoftb2cComponent_Template(rf, ctx) { if (rf & 1) {
|
|
85
|
+
i0.ɵɵelementStart(0, "button", 0);
|
|
86
|
+
i0.ɵɵlistener("click", function AuthMicrosoftb2cComponent_Template_button_click_0_listener() { return ctx.loginMicrosoftb2c(); });
|
|
87
|
+
i0.ɵɵelement(1, "mat-icon", 1);
|
|
88
|
+
i0.ɵɵtext(2);
|
|
89
|
+
i0.ɵɵpipe(3, "translate");
|
|
90
|
+
i0.ɵɵelementEnd();
|
|
91
|
+
} if (rf & 2) {
|
|
92
|
+
i0.ɵɵadvance(2);
|
|
93
|
+
i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 1, "igo.auth.microsoftb2c.login"), "\n");
|
|
94
|
+
} }, dependencies: [i4.MatIcon, i5.MatButton, i6.TranslatePipe], styles: ["[_nghost-%COMP%]{padding:10px 10px 10px 0;display:inline-block;position:relative;top:-15px}[_nghost-%COMP%] > button[_ngcontent-%COMP%]{font-size:15px;height:40px;width:265px}mat-icon[_ngcontent-%COMP%]{margin-right:10px}"], changeDetection: 0 });
|
|
95
|
+
}
|
|
96
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthMicrosoftb2cComponent, [{
|
|
97
|
+
type: Component,
|
|
98
|
+
args: [{ selector: 'igo-auth-microsoftb2c', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button\r\n class=\"microsoft-login-button\"\r\n mat-raised-button\r\n (click)=\"loginMicrosoftb2c()\"\r\n>\r\n <mat-icon svgIcon=\"microsoft\"></mat-icon>\r\n {{ 'igo.auth.microsoftb2c.login' | translate }}\r\n</button>\r\n", styles: [":host{padding:10px 10px 10px 0;display:inline-block;position:relative;top:-15px}:host>button{font-size:15px;height:40px;width:265px}mat-icon{margin-right:10px}\n"] }]
|
|
99
|
+
}], function () { return [{ type: i1.AuthService }, { type: i2.ConfigService }, { type: i0.ApplicationRef }, { type: i3.MsalServiceb2c }, { type: undefined, decorators: [{
|
|
100
|
+
type: Inject,
|
|
101
|
+
args: [MSAL_GUARD_CONFIG]
|
|
102
|
+
}] }]; }, { login: [{
|
|
103
|
+
type: Output
|
|
104
|
+
}] }); })();
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1taWNyb3NvZnRiMmMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYXV0aC9zcmMvbGliL2F1dGgtZm9ybS9hdXRoLW1pY3Jvc29mdGIyYy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2F1dGgtbWljcm9zb2Z0YjJjLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGNBQWMsRUFDZCxNQUFNLEVBQ04sWUFBWSxFQUNaLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RCxPQUFPLEVBQ0wsaUJBQWlCLEVBRWpCLHVCQUF1QixFQUd2Qiw0QkFBNEIsRUFDN0IsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBSzNDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sZ0RBQWdELENBQUM7QUFDekYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7Ozs7OztBQVF4RSxNQUFNLE9BQU8seUJBQXlCO0lBTzFCO0lBQ0E7SUFDQTtJQUNBO0lBRUE7SUFYRixPQUFPLENBQTBCO0lBQ3hCLFlBQVksR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO0lBQzFDLEtBQUssR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUM3RCxnQkFBZ0Is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Q0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxPQUFPO1FBQ2IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO21GQTlFVSx5QkFBeUIsdUxBVzFCLGlCQUFpQjs2REFYaEIseUJBQXlCO1lDbkN0QyxpQ0FJQztZQURDLHNHQUFTLHVCQUFtQixJQUFDO1lBRTdCLDhCQUF5QztZQUN6QyxZQUNGOztZQUFBLGlCQUFTOztZQURQLGVBQ0Y7WUFERSxxRkFDRjs7O3VGRDRCYSx5QkFBeUI7Y0FOckMsU0FBUzsyQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU07O3NCQWE1QyxNQUFNO3VCQUFDLGlCQUFpQjt3QkFSakIsS0FBSztrQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQXBwbGljYXRpb25SZWYsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbmplY3RcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IE1TQUxfR1VBUkRfQ09ORklHIH0gZnJvbSAnQGF6dXJlL21zYWwtYW5ndWxhcic7XHJcbmltcG9ydCB7XHJcbiAgSW50ZXJhY3Rpb25TdGF0dXMsXHJcbiAgQXV0aGVudGljYXRpb25SZXN1bHQsXHJcbiAgUHVibGljQ2xpZW50QXBwbGljYXRpb24sXHJcbiAgUG9wdXBSZXF1ZXN0LFxyXG4gIFNpbGVudFJlcXVlc3QsXHJcbiAgSW50ZXJhY3Rpb25SZXF1aXJlZEF1dGhFcnJvclxyXG59IGZyb20gJ0BhenVyZS9tc2FsLWJyb3dzZXInO1xyXG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQXV0aE1pY3Jvc29mdGIyY09wdGlvbnMsXHJcbiAgTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvblxyXG59IGZyb20gJy4uL3NoYXJlZC9hdXRoLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGguc2VydmljZSc7XHJcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IE1zYWxCcm9hZGNhc3RTZXJ2aWNlYjJjIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGgtbXNhbEJyb2FkY2FzdFNlcnZpY2ViMmMuc2VydmljZSc7XHJcbmltcG9ydCB7IE1zYWxTZXJ2aWNlYjJjIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGgtbXNhbFNlcnZpY2ViMmMuc2VydmljZS4nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdpZ28tYXV0aC1taWNyb3NvZnRiMmMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hdXRoLW1pY3Jvc29mdGIyYy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vYXV0aC1taWNyb3NvZnRiMmMuY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXV0aE1pY3Jvc29mdGIyY0NvbXBvbmVudCB7XHJcbiAgcHJpdmF0ZSBvcHRpb25zOiBBdXRoTWljcm9zb2Z0YjJjT3B0aW9ucztcclxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95aW5nJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIGxvZ2luOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XHJcbiAgcHJpdmF0ZSBicm9hZGNhc3RTZXJ2aWNlOiBNc2FsQnJvYWRjYXN0U2VydmljZWIyYztcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZmlnOiBDb25maWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxyXG4gICAgcHJpdmF0ZSBtc2FsU2VydmljZTogTXNhbFNlcnZpY2ViMmMsXHJcbiAgICBASW5qZWN0KE1TQUxfR1VBUkRfQ09ORklHKVxyXG4gICAgcHJpdmF0ZSBtc2FsR3VhcmRDb25maWc6IE1TUE1zYWxHdWFyZENvbmZpZ3VyYXRpb25bXVxyXG4gICkge1xyXG4gICAgdGhpcy5vcHRpb25zID0gdGhpcy5jb25maWcuZ2V0Q29uZmlnKCdhdXRoLm1pY3Jvc29mdGIyYycpIHx8IHt9O1xyXG5cclxuICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2UgPSBuZXcgUHVibGljQ2xpZW50QXBwbGljYXRpb24oe1xyXG4gICAgICBhdXRoOiB0aGlzLm9wdGlvbnMuYnJvd3NlckF1dGhPcHRpb25zLFxyXG4gICAgICBjYWNoZToge1xyXG4gICAgICAgIGNhY2hlTG9jYXRpb246ICdzZXNzaW9uU3RvcmFnZSdcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5icm9hZGNhc3RTZXJ2aWNlID0gbmV3IE1zYWxCcm9hZGNhc3RTZXJ2aWNlYjJjKFxyXG4gICAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlLFxyXG4gICAgICB0aGlzLm1zYWxTZXJ2aWNlXHJcbiAgICApO1xyXG5cclxuICAgIGlmICh0aGlzLm9wdGlvbnMuYnJvd3NlckF1dGhPcHRpb25zLmNsaWVudElkKSB7XHJcbiAgICAgIHRoaXMuYnJvYWRjYXN0U2VydmljZS5pblByb2dyZXNzJFxyXG4gICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgZmlsdGVyKFxyXG4gICAgICAgICAgICAoc3RhdHVzOiBJbnRlcmFjdGlvblN0YXR1cykgPT4gc3RhdHVzID09PSBJbnRlcmFjdGlvblN0YXR1cy5Ob25lXHJcbiAgICAgICAgICApLFxyXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3lpbmckKVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuY2hlY2tBY2NvdW50KCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLndhcm4oJ01pY3Jvc29mdCBhdXRoZW50aWZpY2F0aW9uIG5lZWRzIFwiY2xpZW50SWRcIiBvcHRpb24nKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBsb2dpbk1pY3Jvc29mdGIyYygpIHtcclxuICAgIHRoaXMubXNhbFNlcnZpY2VcclxuICAgICAgLmxvZ2luUG9wdXAoeyAuLi50aGlzLmdldENvbmYoKS5hdXRoUmVxdWVzdCB9IGFzIFBvcHVwUmVxdWVzdClcclxuICAgICAgLnN1YnNjcmliZSgocmVzcG9uc2U6IEF1dGhlbnRpY2F0aW9uUmVzdWx0KSA9PiB7XHJcbiAgICAgICAgdGhpcy5tc2FsU2VydmljZS5pbnN0YW5jZS5zZXRBY3RpdmVBY2NvdW50KHJlc3BvbnNlLmFjY291bnQpO1xyXG4gICAgICAgIHRoaXMuY2hlY2tBY2NvdW50KCk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBjaGVja0FjY291bnQoKSB7XHJcbiAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlXHJcbiAgICAgIC5hY3F1aXJlVG9rZW5TaWxlbnQodGhpcy5nZXRDb25mKCkuYXV0aFJlcXVlc3QgYXMgU2lsZW50UmVxdWVzdClcclxuICAgICAgLnRoZW4oKHJlc3BvbnNlOiBBdXRoZW50aWNhdGlvblJlc3VsdCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IHRva2VuID0gcmVzcG9uc2UuaWRUb2tlbjtcclxuICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ2luV2l0aFRva2VuKHRva2VuLCAnbWljcm9zb2Z0YjJjJykuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuYXBwUmVmLnRpY2soKTtcclxuICAgICAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfSlcclxuICAgICAgLmNhdGNoKGFzeW5jIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3IpIHtcclxuICAgICAgICAgIC8vIGZhbGxiYWNrIHRvIGludGVyYWN0aW9uIHdoZW4gc2lsZW50IGNhbGwgZmFpbHNcclxuICAgICAgICAgIHJldHVybiB0aGlzLm1zYWxTZXJ2aWNlLmFjcXVpcmVUb2tlblBvcHVwKFxyXG4gICAgICAgICAgICB0aGlzLmdldENvbmYoKS5hdXRoUmVxdWVzdCBhcyBTaWxlbnRSZXF1ZXN0XHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKCdTaWxlbnQgdG9rZW4gZmFpbHMnKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldENvbmYoKTogTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvbiB7XHJcbiAgICByZXR1cm4gdGhpcy5tc2FsR3VhcmRDb25maWcuZmlsdGVyKChjb25mKSA9PiBjb25mLnR5cGUgPT09ICdiMmMnKVswXTtcclxuICB9XHJcbn1cclxuIiwiPGJ1dHRvblxyXG4gIGNsYXNzPVwibWljcm9zb2Z0LWxvZ2luLWJ1dHRvblwiXHJcbiAgbWF0LXJhaXNlZC1idXR0b25cclxuICAoY2xpY2spPVwibG9naW5NaWNyb3NvZnRiMmMoKVwiXHJcbj5cclxuICA8bWF0LWljb24gc3ZnSWNvbj1cIm1pY3Jvc29mdFwiPjwvbWF0LWljb24+XHJcbiAge3sgJ2lnby5hdXRoLm1pY3Jvc29mdGIyYy5sb2dpbicgfCB0cmFuc2xhdGUgfX1cclxuPC9idXR0b24+XHJcbiJdfQ==
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export * from './auth-form.component';
|
|
2
|
-
export * from './auth-intern.component';
|
|
3
|
-
export * from './auth-facebook.component';
|
|
4
|
-
export * from './auth-google.component';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export * from './auth-form.component';
|
|
2
|
+
export * from './auth-intern.component';
|
|
3
|
+
export * from './auth-facebook.component';
|
|
4
|
+
export * from './auth-google.component';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dGgtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoLWludGVybi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoLWZhY2Vib29rLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGgtZ29vZ2xlLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { RouterModule } from '@angular/router';
|
|
3
|
-
import { AuthFormComponent } from './auth-form/auth-form.component';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/router";
|
|
6
|
-
const routes = [
|
|
7
|
-
{ path: 'login', component: AuthFormComponent },
|
|
8
|
-
{ path: 'logout', component: AuthFormComponent }
|
|
9
|
-
];
|
|
10
|
-
export class AuthRoutingModule {
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthRoutingModule, [{
|
|
16
|
-
type: NgModule,
|
|
17
|
-
args: [{
|
|
18
|
-
imports: [RouterModule.forChild(routes)],
|
|
19
|
-
exports: [RouterModule],
|
|
20
|
-
providers: []
|
|
21
|
-
}]
|
|
22
|
-
}], null, null); })();
|
|
23
|
-
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(AuthRoutingModule, { imports: [i1.RouterModule], exports: [RouterModule] }); })();
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { RouterModule } from '@angular/router';
|
|
3
|
+
import { AuthFormComponent } from './auth-form/auth-form.component';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/router";
|
|
6
|
+
const routes = [
|
|
7
|
+
{ path: 'login', component: AuthFormComponent },
|
|
8
|
+
{ path: 'logout', component: AuthFormComponent }
|
|
9
|
+
];
|
|
10
|
+
export class AuthRoutingModule {
|
|
11
|
+
static ɵfac = function AuthRoutingModule_Factory(t) { return new (t || AuthRoutingModule)(); };
|
|
12
|
+
static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: AuthRoutingModule });
|
|
13
|
+
static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [RouterModule.forChild(routes), RouterModule] });
|
|
14
|
+
}
|
|
15
|
+
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(AuthRoutingModule, [{
|
|
16
|
+
type: NgModule,
|
|
17
|
+
args: [{
|
|
18
|
+
imports: [RouterModule.forChild(routes)],
|
|
19
|
+
exports: [RouterModule],
|
|
20
|
+
providers: []
|
|
21
|
+
}]
|
|
22
|
+
}], null, null); })();
|
|
23
|
+
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(AuthRoutingModule, { imports: [i1.RouterModule], exports: [RouterModule] }); })();
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2F1dGgvc3JjL2xpYi9hdXRoLXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFFcEUsTUFBTSxNQUFNLEdBQVc7SUFDckIsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRTtJQUMvQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFO0NBQ2pELENBQUM7QUFPRixNQUFNLE9BQU8saUJBQWlCOzJFQUFqQixpQkFBaUI7NERBQWpCLGlCQUFpQjtnRUFKbEIsWUFBWSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFDN0IsWUFBWTs7dUZBR1gsaUJBQWlCO2NBTDdCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZCLFNBQVMsRUFBRSxFQUFFO2FBQ2Q7O3dGQUNZLGlCQUFpQiwwQ0FIbEIsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXMsIFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IEF1dGhGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9hdXRoLWZvcm0vYXV0aC1mb3JtLmNvbXBvbmVudCc7XG5cbmNvbnN0IHJvdXRlczogUm91dGVzID0gW1xuICB7IHBhdGg6ICdsb2dpbicsIGNvbXBvbmVudDogQXV0aEZvcm1Db21wb25lbnQgfSxcbiAgeyBwYXRoOiAnbG9nb3V0JywgY29tcG9uZW50OiBBdXRoRm9ybUNvbXBvbmVudCB9XG5dO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbUm91dGVyTW9kdWxlLmZvckNoaWxkKHJvdXRlcyldLFxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBBdXRoUm91dGluZ01vZHVsZSB7fVxuIl19
|