@igo2/auth 1.15.4 → 16.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/{esm2020 → esm2022}/igo2-auth.mjs +4 -4
  2. package/esm2022/lib/auth-form/auth-facebook.component.mjs +67 -0
  3. package/esm2022/lib/auth-form/auth-form.component.mjs +286 -0
  4. package/esm2022/lib/auth-form/auth-google.component.mjs +108 -0
  5. package/esm2022/lib/auth-form/auth-intern.component.mjs +134 -0
  6. package/esm2022/lib/auth-form/auth-microsoft.component.mjs +107 -0
  7. package/esm2022/lib/auth-form/auth-microsoftb2c.component.mjs +105 -0
  8. package/{esm2020 → esm2022}/lib/auth-form/index.mjs +5 -5
  9. package/{esm2020 → esm2022}/lib/auth-routing.module.mjs +24 -24
  10. package/{esm2020 → esm2022}/lib/auth.module.mjs +91 -91
  11. package/esm2022/lib/shared/admin.guard.mjs +39 -0
  12. package/esm2022/lib/shared/auth-microsoft.provider.mjs +86 -0
  13. package/esm2022/lib/shared/auth-msalBroadcastServiceb2c.service.mjs +47 -0
  14. package/esm2022/lib/shared/auth-msalServiceb2c.service..mjs +85 -0
  15. package/esm2022/lib/shared/auth.guard.mjs +38 -0
  16. package/esm2022/lib/shared/auth.interceptor.mjs +164 -0
  17. package/esm2022/lib/shared/auth.interface.mjs +2 -0
  18. package/esm2022/lib/shared/auth.service.mjs +168 -0
  19. package/esm2022/lib/shared/logged.guard.mjs +38 -0
  20. package/esm2022/lib/shared/profils.guard.mjs +43 -0
  21. package/esm2022/lib/shared/protected.directive.mjs +20 -0
  22. package/{esm2020 → esm2022}/lib/shared/storage.interface.mjs +2 -2
  23. package/esm2022/lib/shared/storage.service.mjs +99 -0
  24. package/esm2022/lib/shared/token.service.mjs +48 -0
  25. package/{esm2020 → esm2022}/public_api.mjs +19 -19
  26. package/{fesm2020 → fesm2022}/igo2-auth.mjs +1573 -1477
  27. package/fesm2022/igo2-auth.mjs.map +1 -0
  28. package/index.d.ts +5 -5
  29. package/lib/auth-form/auth-facebook.component.d.ts +18 -18
  30. package/lib/auth-form/auth-form.component.d.ts +42 -42
  31. package/lib/auth-form/auth-google.component.d.ts +24 -24
  32. package/lib/auth-form/auth-intern.component.d.ts +21 -21
  33. package/lib/auth-form/auth-microsoft.component.d.ts +23 -23
  34. package/lib/auth-form/auth-microsoftb2c.component.d.ts +23 -23
  35. package/lib/auth-form/index.d.ts +4 -4
  36. package/lib/auth-routing.module.d.ts +7 -7
  37. package/lib/auth.module.d.ts +23 -23
  38. package/lib/shared/admin.guard.d.ts +13 -13
  39. package/lib/shared/auth-microsoft.provider.d.ts +30 -30
  40. package/lib/shared/auth-msalBroadcastServiceb2c.service.d.ts +15 -15
  41. package/lib/shared/auth-msalServiceb2c.service..d.ts +33 -33
  42. package/lib/shared/auth.guard.d.ts +13 -13
  43. package/lib/shared/auth.interceptor.d.ts +24 -24
  44. package/lib/shared/auth.interface.d.ts +99 -99
  45. package/lib/shared/auth.service.d.ts +44 -44
  46. package/lib/shared/logged.guard.d.ts +13 -13
  47. package/lib/shared/profils.guard.d.ts +13 -13
  48. package/lib/shared/protected.directive.d.ts +8 -8
  49. package/lib/shared/storage.interface.d.ts +4 -4
  50. package/lib/shared/storage.service.d.ts +17 -18
  51. package/lib/shared/token.service.d.ts +15 -15
  52. package/locale/en.auth.json +28 -0
  53. package/locale/fr.auth.json +32 -0
  54. package/package.json +18 -25
  55. package/public_api.d.ts +15 -15
  56. package/esm2020/lib/auth-form/auth-facebook.component.mjs +0 -61
  57. package/esm2020/lib/auth-form/auth-form.component.mjs +0 -277
  58. package/esm2020/lib/auth-form/auth-google.component.mjs +0 -99
  59. package/esm2020/lib/auth-form/auth-intern.component.mjs +0 -119
  60. package/esm2020/lib/auth-form/auth-microsoft.component.mjs +0 -94
  61. package/esm2020/lib/auth-form/auth-microsoftb2c.component.mjs +0 -93
  62. package/esm2020/lib/shared/admin.guard.mjs +0 -33
  63. package/esm2020/lib/shared/auth-microsoft.provider.mjs +0 -84
  64. package/esm2020/lib/shared/auth-msalBroadcastServiceb2c.service.mjs +0 -38
  65. package/esm2020/lib/shared/auth-msalServiceb2c.service..mjs +0 -80
  66. package/esm2020/lib/shared/auth.guard.mjs +0 -32
  67. package/esm2020/lib/shared/auth.interceptor.mjs +0 -155
  68. package/esm2020/lib/shared/auth.interface.mjs +0 -2
  69. package/esm2020/lib/shared/auth.service.mjs +0 -158
  70. package/esm2020/lib/shared/logged.guard.mjs +0 -32
  71. package/esm2020/lib/shared/profils.guard.mjs +0 -37
  72. package/esm2020/lib/shared/protected.directive.mjs +0 -19
  73. package/esm2020/lib/shared/storage.service.mjs +0 -91
  74. package/esm2020/lib/shared/token.service.mjs +0 -47
  75. package/fesm2015/igo2-auth.mjs +0 -1655
  76. package/fesm2015/igo2-auth.mjs.map +0 -1
  77. 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)\">\n <div>\n <mat-form-field class=\"full-width\">\n <mat-label>{{ 'igo.auth.user' | translate }}</mat-label>\n <input\n matInput\n required\n placeholder=\"{{ 'igo.auth.user' | translate }}\"\n formControlName=\"username\"\n />\n </mat-form-field>\n </div>\n\n <div>\n <mat-form-field class=\"full-width\">\n <mat-label>{{ 'igo.auth.password' | translate }}</mat-label>\n <input\n matInput\n required\n type=\"password\"\n placeholder=\"{{ 'igo.auth.password' | translate }}\"\n formControlName=\"password\"\n />\n </mat-form-field>\n </div>\n\n <button mat-raised-button type=\"submit\">\n {{ 'igo.auth.login' | translate }}\n </button>\n <button\n *ngIf=\"allowAnonymous\"\n mat-raised-button\n class=\"anonymous\"\n type=\"button\"\n [disabled]=\"loading\"\n (click)=\"loginAnonymous()\"\n >\n {{ 'igo.auth.accessAnonymous' | translate }}\n </button>\n <div *ngIf=\"error\">\n <br />\n <font size=\"3\" color=\"red\">{{ error }}</font>\n </div>\n</form>\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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1pbnRlcm4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYXV0aC9zcmMvbGliL2F1dGgtZm9ybS9hdXRoLWludGVybi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2F1dGgtaW50ZXJuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxFQUNiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDTCxVQUFVLEVBRVYsa0JBQWtCLEVBQ25CLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7Ozs7Ozs7OztJQ2UzQyxpQ0FPQztJQURDLG9LQUFTLGVBQUEsdUJBQWdCLENBQUEsSUFBQztJQUUxQixZQUNGOztJQUFBLGlCQUFTOzs7SUFKUCx5Q0FBb0I7SUFHcEIsZUFDRjtJQURFLGlGQUNGOzs7SUFDQSwyQkFBbUI7SUFDakIscUJBQU07SUFDTiwrQkFBMkI7SUFBQSxZQUFXO0lBQUEsaUJBQU8sRUFBQTs7O0lBQWxCLGVBQVc7SUFBWCxrQ0FBVzs7QURuQjFDLE1BQU0sT0FBTyxtQkFBbUI7SUFpQnJCO0lBQ0M7SUFqQlYsSUFDSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsSUFBSSxjQUFjLENBQUMsS0FBYztRQUMvQixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBQ08sZUFBZSxHQUFHLElBQUksQ0FBQztJQUV4QixLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ1gsSUFBSSxDQUFtQjtJQUN2QixPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRWIsS0FBSyxHQUEwQixJQUFJLFlBQVksRUFBVyxDQUFDO0lBRXJFLFlBQ1MsSUFBaUIsRUFDaEIsZUFBZ0MsRUFDeEMsRUFBc0I7UUFGZixTQUFJLEdBQUosSUFBSSxDQUFhO1FBQ2hCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUd4QyxJQUFJLENBQUMsSUFBSSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDbkIsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDbkMsUUFBUSxFQUFFLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDcEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFNBQVMsQ0FBQyxNQUFXO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FDekQsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDdkIsQ0FBQyxFQUNELENBQUMsS0FBVSxFQUFFLEVBQUU7WUFDYixJQUFJO2dCQUNGLElBQUksQ0FBQyxlQUFlLENBQUMsU0FBUztxQkFDM0IsR0FBRyxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDO3FCQUM1QyxTQUFTLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDO2FBQ3JEO1lBQUMsT0FBTyxDQUFDLEVBQUU7Z0JBQ1YsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQzthQUNsQztZQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3ZCLENBQUMsQ0FDRixDQUFDO1FBQ0YsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7NkVBcERVLG1CQUFtQjs2REFBbkIsbUJBQW1CO1lDdEJoQywrQkFBd0U7WUFBbkMsb0dBQVksNkJBQXFCLElBQUM7WUFDckUsMkJBQUssd0JBQUEsZ0JBQUE7WUFFVSxZQUFpQzs7WUFBQSxpQkFBWTtZQUN4RCwyQkFLRTs7WUFDSixpQkFBaUIsRUFBQTtZQUduQiwyQkFBSyx3QkFBQSxpQkFBQTtZQUVVLGFBQXFDOztZQUFBLGlCQUFZO1lBQzVELDRCQU1FOztZQUNKLGlCQUFpQixFQUFBO1lBR25CLGtDQUF3QztZQUN0QyxhQUNGOztZQUFBLGlCQUFTO1lBQ1QsNEVBU1M7WUFDVCxzRUFHTTtZQUNSLGlCQUFPOztZQTNDRCxvQ0FBa0I7WUFHUCxlQUFpQztZQUFqQywyREFBaUM7WUFJMUMsZUFBK0M7WUFBL0MsK0VBQStDO1lBUXRDLGVBQXFDO1lBQXJDLGlFQUFxQztZQUs5QyxlQUFtRDtZQUFuRCxvRkFBbUQ7WUFPdkQsZUFDRjtZQURFLHlFQUNGO1lBRUcsZUFBb0I7WUFBcEIseUNBQW9CO1lBU2pCLGVBQVc7WUFBWCxnQ0FBVzs7O3VGRGpCTixtQkFBbUI7Y0FOL0IsU0FBUzsyQkFDRSxpQkFBaUIsbUJBR1YsdUJBQXVCLENBQUMsT0FBTzs2SEFJNUMsY0FBYztrQkFEakIsS0FBSztZQWFJLEtBQUs7a0JBQWQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIFZhbGlkYXRvcnMsXG4gIFVudHlwZWRGb3JtR3JvdXAsXG4gIFVudHlwZWRGb3JtQnVpbGRlclxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGguc2VydmljZSc7XG5pbXBvcnQgeyBMYW5ndWFnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaWdvLWF1dGgtaW50ZXJuJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2F1dGgtaW50ZXJuLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYXV0aC1pbnRlcm4uY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0XG59KVxuZXhwb3J0IGNsYXNzIEF1dGhJbnRlcm5Db21wb25lbnQge1xuICBASW5wdXQoKVxuICBnZXQgYWxsb3dBbm9ueW1vdXMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2FsbG93QW5vbnltb3VzO1xuICB9XG4gIHNldCBhbGxvd0Fub255bW91cyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2FsbG93QW5vbnltb3VzID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfYWxsb3dBbm9ueW1vdXMgPSB0cnVlO1xuXG4gIHB1YmxpYyBlcnJvciA9ICcnO1xuICBwdWJsaWMgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcbiAgcHVibGljIGxvYWRpbmcgPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgbG9naW46IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgYXV0aDogQXV0aFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBsYW5ndWFnZVNlcnZpY2U6IExhbmd1YWdlU2VydmljZSxcbiAgICBmYjogVW50eXBlZEZvcm1CdWlsZGVyXG4gICkge1xuICAgIHRoaXMuZm9ybSA9IGZiLmdyb3VwKHtcbiAgICAgIHVzZXJuYW1lOiBbJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxuICAgICAgcGFzc3dvcmQ6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF1cbiAgICB9KTtcbiAgfVxuXG4gIGxvZ2luVXNlcih2YWx1ZXM6IGFueSkge1xuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XG4gICAgdGhpcy5hdXRoLmxvZ2luKHZhbHVlcy51c2VybmFtZSwgdmFsdWVzLnBhc3N3b3JkKS5zdWJzY3JpYmUoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICB9LFxuICAgICAgKGVycm9yOiBhbnkpID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICB0aGlzLmxhbmd1YWdlU2VydmljZS50cmFuc2xhdGVcbiAgICAgICAgICAgIC5nZXQoJ2lnby5hdXRoLmVycm9yLicgKyBlcnJvci5lcnJvci5tZXNzYWdlKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoZXJyb3JNc2cpID0+ICh0aGlzLmVycm9yID0gZXJyb3JNc2cpKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIHRoaXMuZXJyb3IgPSBlcnJvci5lcnJvci5tZXNzYWdlO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICAgICAgfVxuICAgICk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgbG9naW5Bbm9ueW1vdXMoKSB7XG4gICAgdGhpcy5hdXRoLmxvZ2luQW5vbnltb3VzKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtXCIgcm9sZT1cImZvcm1cIiAobmdTdWJtaXQpPVwibG9naW5Vc2VyKGZvcm0udmFsdWUpXCI+XG4gIDxkaXY+XG4gICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiZnVsbC13aWR0aFwiPlxuICAgICAgPG1hdC1sYWJlbD57eyAnaWdvLmF1dGgudXNlcicgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBtYXRJbnB1dFxuICAgICAgICByZXF1aXJlZFxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdpZ28uYXV0aC51c2VyJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cInVzZXJuYW1lXCJcbiAgICAgIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgPC9kaXY+XG5cbiAgPGRpdj5cbiAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJmdWxsLXdpZHRoXCI+XG4gICAgICA8bWF0LWxhYmVsPnt7ICdpZ28uYXV0aC5wYXNzd29yZCcgfCB0cmFuc2xhdGUgfX08L21hdC1sYWJlbD5cbiAgICAgIDxpbnB1dFxuICAgICAgICBtYXRJbnB1dFxuICAgICAgICByZXF1aXJlZFxuICAgICAgICB0eXBlPVwicGFzc3dvcmRcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdpZ28uYXV0aC5wYXNzd29yZCcgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICBmb3JtQ29udHJvbE5hbWU9XCJwYXNzd29yZFwiXG4gICAgICAvPlxuICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gIDwvZGl2PlxuXG4gIDxidXR0b24gbWF0LXJhaXNlZC1idXR0b24gdHlwZT1cInN1Ym1pdFwiPlxuICAgIHt7ICdpZ28uYXV0aC5sb2dpbicgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICAqbmdJZj1cImFsbG93QW5vbnltb3VzXCJcbiAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgIGNsYXNzPVwiYW5vbnltb3VzXCJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBbZGlzYWJsZWRdPVwibG9hZGluZ1wiXG4gICAgKGNsaWNrKT1cImxvZ2luQW5vbnltb3VzKClcIlxuICA+XG4gICAge3sgJ2lnby5hdXRoLmFjY2Vzc0Fub255bW91cycgfCB0cmFuc2xhdGUgfX1cbiAgPC9idXR0b24+XG4gIDxkaXYgKm5nSWY9XCJlcnJvclwiPlxuICAgIDxiciAvPlxuICAgIDxmb250IHNpemU9XCIzXCIgY29sb3I9XCJyZWRcIj57eyBlcnJvciB9fTwvZm9udD5cbiAgPC9kaXY+XG48L2Zvcm0+XG4iXX0=
@@ -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\n class=\"microsoft-login-button\"\n mat-raised-button\n (click)=\"loginMicrosoft()\"\n>\n <mat-icon svgIcon=\"microsoft\"></mat-icon>\n {{ 'igo.auth.microsoft.login' | translate }}\n</button>\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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QUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxPQUFPO1FBQ2IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO2dGQWxGVSxzQkFBc0Isb0xBV3ZCLGlCQUFpQjs2REFYaEIsc0JBQXNCO1lDcENuQyxpQ0FJQztZQURDLG1HQUFTLG9CQUFnQixJQUFDO1lBRTFCLDhCQUF5QztZQUN6QyxZQUNGOztZQUFBLGlCQUFTOztZQURQLGVBQ0Y7WUFERSxrRkFDRjs7O3VGRDZCYSxzQkFBc0I7Y0FObEMsU0FBUzsyQkFDRSxvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTTs7c0JBYTVDLE1BQU07dUJBQUMsaUJBQWlCO3dCQVJqQixLQUFLO2tCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBBcHBsaWNhdGlvblJlZixcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIE1zYWxCcm9hZGNhc3RTZXJ2aWNlLFxuICBNc2FsU2VydmljZSxcbiAgTVNBTF9HVUFSRF9DT05GSUdcbn0gZnJvbSAnQGF6dXJlL21zYWwtYW5ndWxhcic7XG5pbXBvcnQge1xuICBJbnRlcmFjdGlvblN0YXR1cyxcbiAgQXV0aGVudGljYXRpb25SZXN1bHQsXG4gIFB1YmxpY0NsaWVudEFwcGxpY2F0aW9uLFxuICBQb3B1cFJlcXVlc3QsXG4gIFNpbGVudFJlcXVlc3QsXG4gIEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3Jcbn0gZnJvbSAnQGF6dXJlL21zYWwtYnJvd3Nlcic7XG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5pbXBvcnQge1xuICBBdXRoTWljcm9zb2Z0T3B0aW9ucyxcbiAgTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvblxufSBmcm9tICcuLi9zaGFyZWQvYXV0aC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tYXV0aC1taWNyb3NvZnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0aC1taWNyb3NvZnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hdXRoLW1pY3Jvc29mdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBdXRoTWljcm9zb2Z0Q29tcG9uZW50IHtcbiAgcHJpdmF0ZSBvcHRpb25zPzogQXV0aE1pY3Jvc29mdE9wdGlvbnM7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3lpbmckID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGxvZ2luOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG4gIHByaXZhdGUgYnJvYWRjYXN0U2VydmljZTogTXNhbEJyb2FkY2FzdFNlcnZpY2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhdXRoU2VydmljZTogQXV0aFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjb25maWc6IENvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBhcHBSZWY6IEFwcGxpY2F0aW9uUmVmLFxuICAgIHByaXZhdGUgbXNhbFNlcnZpY2U6IE1zYWxTZXJ2aWNlLFxuICAgIEBJbmplY3QoTVNBTF9HVUFSRF9DT05GSUcpXG4gICAgcHJpdmF0ZSBtc2FsR3VhcmRDb25maWc6IE1TUE1zYWxHdWFyZENvbmZpZ3VyYXRpb25bXVxuICApIHtcbiAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmNvbmZpZy5nZXRDb25maWcoJ2F1dGgubWljcm9zb2Z0Jyk7XG5cbiAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlID0gbmV3IFB1YmxpY0NsaWVudEFwcGxpY2F0aW9uKHtcbiAgICAgIGF1dGg6IHRoaXMub3B0aW9ucyxcbiAgICAgIGNhY2hlOiB7XG4gICAgICAgIGNhY2hlTG9jYXRpb246ICdzZXNzaW9uU3RvcmFnZSdcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuYnJvYWRjYXN0U2VydmljZSA9IG5ldyBNc2FsQnJvYWRjYXN0U2VydmljZShcbiAgICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2UsXG4gICAgICB0aGlzLm1zYWxTZXJ2aWNlXG4gICAgKTtcblxuICAgIGlmICh0aGlzLm9wdGlvbnM/LmNsaWVudElkKSB7XG4gICAgICB0aGlzLmJyb2FkY2FzdFNlcnZpY2UuaW5Qcm9ncmVzcyRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgKHN0YXR1czogSW50ZXJhY3Rpb25TdGF0dXMpID0+IHN0YXR1cyA9PT0gSW50ZXJhY3Rpb25TdGF0dXMuTm9uZVxuICAgICAgICAgICksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3lpbmckKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2hlY2tBY2NvdW50KCk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ01pY3Jvc29mdCBhdXRoZW50aWZpY2F0aW9uIG5lZWRzIFwiY2xpZW50SWRcIiBvcHRpb24nKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbG9naW5NaWNyb3NvZnQoKSB7XG4gICAgdGhpcy5tc2FsU2VydmljZVxuICAgICAgLmxvZ2luUG9wdXAoeyAuLi50aGlzLmdldENvbmYoKS5hdXRoUmVxdWVzdCB9IGFzIFBvcHVwUmVxdWVzdClcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlOiBBdXRoZW50aWNhdGlvblJlc3VsdCkgPT4ge1xuICAgICAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlLnNldEFjdGl2ZUFjY291bnQocmVzcG9uc2UuYWNjb3VudCk7XG4gICAgICAgIHRoaXMuY2hlY2tBY2NvdW50KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tBY2NvdW50KCkge1xuICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2VcbiAgICAgIC5hY3F1aXJlVG9rZW5TaWxlbnQodGhpcy5nZXRDb25mKCkuYXV0aFJlcXVlc3QgYXMgU2lsZW50UmVxdWVzdClcbiAgICAgIC50aGVuKChyZXNwb25zZTogQXV0aGVudGljYXRpb25SZXN1bHQpID0+IHtcbiAgICAgICAgY29uc3QgdG9rZW5BY2Nlc3MgPSByZXNwb25zZS5hY2Nlc3NUb2tlbjtcbiAgICAgICAgY29uc3QgdG9rZW5JZCA9IHJlc3BvbnNlLmlkVG9rZW47XG4gICAgICAgIHRoaXMuYXV0aFNlcnZpY2VcbiAgICAgICAgICAubG9naW5XaXRoVG9rZW4odG9rZW5BY2Nlc3MsICdtaWNyb3NvZnQnLCB7IHRva2VuSWQgfSlcbiAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYXBwUmVmLnRpY2soKTtcbiAgICAgICAgICAgIHRoaXMubG9naW4uZW1pdCh0cnVlKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goYXN5bmMgKGVycm9yKSA9PiB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3IpIHtcbiAgICAgICAgICAvLyBmYWxsYmFjayB0byBpbnRlcmFjdGlvbiB3aGVuIHNpbGVudCBjYWxsIGZhaWxzXG4gICAgICAgICAgcmV0dXJuIHRoaXMubXNhbFNlcnZpY2UuYWNxdWlyZVRva2VuUG9wdXAoXG4gICAgICAgICAgICB0aGlzLmdldENvbmYoKS5hdXRoUmVxdWVzdCBhcyBTaWxlbnRSZXF1ZXN0XG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zb2xlLmxvZyhlcnJvcik7XG4gICAgICB9KVxuICAgICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZygnU2lsZW50IHRva2VuIGZhaWxzJyk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q29uZigpOiBNU1BNc2FsR3VhcmRDb25maWd1cmF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5tc2FsR3VhcmRDb25maWcuZmlsdGVyKChjb25mKSA9PiBjb25mLnR5cGUgPT09ICdhZGQnKVswXTtcbiAgfVxufVxuIiwiPGJ1dHRvblxuICBjbGFzcz1cIm1pY3Jvc29mdC1sb2dpbi1idXR0b25cIlxuICBtYXQtcmFpc2VkLWJ1dHRvblxuICAoY2xpY2spPVwibG9naW5NaWNyb3NvZnQoKVwiXG4+XG4gIDxtYXQtaWNvbiBzdmdJY29uPVwibWljcm9zb2Z0XCI+PC9tYXQtaWNvbj5cbiAge3sgJ2lnby5hdXRoLm1pY3Jvc29mdC5sb2dpbicgfCB0cmFuc2xhdGUgfX1cbjwvYnV0dG9uPlxuIl19
@@ -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\n class=\"microsoft-login-button\"\n mat-raised-button\n (click)=\"loginMicrosoftb2c()\"\n>\n <mat-icon svgIcon=\"microsoft\"></mat-icon>\n {{ 'igo.auth.microsoftb2c.login' | translate }}\n</button>\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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Q0FBQyxHQUFHLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUNwQyxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxPQUFPO1FBQ2IsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN2RSxDQUFDO21GQTlFVSx5QkFBeUIsdUxBVzFCLGlCQUFpQjs2REFYaEIseUJBQXlCO1lDbkN0QyxpQ0FJQztZQURDLHNHQUFTLHVCQUFtQixJQUFDO1lBRTdCLDhCQUF5QztZQUN6QyxZQUNGOztZQUFBLGlCQUFTOztZQURQLGVBQ0Y7WUFERSxxRkFDRjs7O3VGRDRCYSx5QkFBeUI7Y0FOckMsU0FBUzsyQkFDRSx1QkFBdUIsbUJBR2hCLHVCQUF1QixDQUFDLE1BQU07O3NCQWE1QyxNQUFNO3VCQUFDLGlCQUFpQjt3QkFSakIsS0FBSztrQkFBZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQXBwbGljYXRpb25SZWYsXG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IE1TQUxfR1VBUkRfQ09ORklHIH0gZnJvbSAnQGF6dXJlL21zYWwtYW5ndWxhcic7XG5pbXBvcnQge1xuICBJbnRlcmFjdGlvblN0YXR1cyxcbiAgQXV0aGVudGljYXRpb25SZXN1bHQsXG4gIFB1YmxpY0NsaWVudEFwcGxpY2F0aW9uLFxuICBQb3B1cFJlcXVlc3QsXG4gIFNpbGVudFJlcXVlc3QsXG4gIEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3Jcbn0gZnJvbSAnQGF6dXJlL21zYWwtYnJvd3Nlcic7XG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5pbXBvcnQge1xuICBBdXRoTWljcm9zb2Z0YjJjT3B0aW9ucyxcbiAgTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvblxufSBmcm9tICcuLi9zaGFyZWQvYXV0aC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQXV0aFNlcnZpY2UgfSBmcm9tICcuLi9zaGFyZWQvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTXNhbEJyb2FkY2FzdFNlcnZpY2ViMmMgfSBmcm9tICcuLi9zaGFyZWQvYXV0aC1tc2FsQnJvYWRjYXN0U2VydmljZWIyYy5zZXJ2aWNlJztcbmltcG9ydCB7IE1zYWxTZXJ2aWNlYjJjIH0gZnJvbSAnLi4vc2hhcmVkL2F1dGgtbXNhbFNlcnZpY2ViMmMuc2VydmljZS4nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tYXV0aC1taWNyb3NvZnRiMmMnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0aC1taWNyb3NvZnRiMmMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hdXRoLW1pY3Jvc29mdGIyYy5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBBdXRoTWljcm9zb2Z0YjJjQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBvcHRpb25zOiBBdXRoTWljcm9zb2Z0YjJjT3B0aW9ucztcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveWluZyQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBAT3V0cHV0KCkgbG9naW46IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcbiAgcHJpdmF0ZSBicm9hZGNhc3RTZXJ2aWNlOiBNc2FsQnJvYWRjYXN0U2VydmljZWIyYztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcbiAgICBwcml2YXRlIGNvbmZpZzogQ29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIGFwcFJlZjogQXBwbGljYXRpb25SZWYsXG4gICAgcHJpdmF0ZSBtc2FsU2VydmljZTogTXNhbFNlcnZpY2ViMmMsXG4gICAgQEluamVjdChNU0FMX0dVQVJEX0NPTkZJRylcbiAgICBwcml2YXRlIG1zYWxHdWFyZENvbmZpZzogTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvbltdXG4gICkge1xuICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuY29uZmlnLmdldENvbmZpZygnYXV0aC5taWNyb3NvZnRiMmMnKSB8fCB7fTtcblxuICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2UgPSBuZXcgUHVibGljQ2xpZW50QXBwbGljYXRpb24oe1xuICAgICAgYXV0aDogdGhpcy5vcHRpb25zLmJyb3dzZXJBdXRoT3B0aW9ucyxcbiAgICAgIGNhY2hlOiB7XG4gICAgICAgIGNhY2hlTG9jYXRpb246ICdzZXNzaW9uU3RvcmFnZSdcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuYnJvYWRjYXN0U2VydmljZSA9IG5ldyBNc2FsQnJvYWRjYXN0U2VydmljZWIyYyhcbiAgICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2UsXG4gICAgICB0aGlzLm1zYWxTZXJ2aWNlXG4gICAgKTtcblxuICAgIGlmICh0aGlzLm9wdGlvbnMuYnJvd3NlckF1dGhPcHRpb25zLmNsaWVudElkKSB7XG4gICAgICB0aGlzLmJyb2FkY2FzdFNlcnZpY2UuaW5Qcm9ncmVzcyRcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgKHN0YXR1czogSW50ZXJhY3Rpb25TdGF0dXMpID0+IHN0YXR1cyA9PT0gSW50ZXJhY3Rpb25TdGF0dXMuTm9uZVxuICAgICAgICAgICksXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3lpbmckKVxuICAgICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2hlY2tBY2NvdW50KCk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oJ01pY3Jvc29mdCBhdXRoZW50aWZpY2F0aW9uIG5lZWRzIFwiY2xpZW50SWRcIiBvcHRpb24nKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbG9naW5NaWNyb3NvZnRiMmMoKSB7XG4gICAgdGhpcy5tc2FsU2VydmljZVxuICAgICAgLmxvZ2luUG9wdXAoeyAuLi50aGlzLmdldENvbmYoKS5hdXRoUmVxdWVzdCB9IGFzIFBvcHVwUmVxdWVzdClcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3BvbnNlOiBBdXRoZW50aWNhdGlvblJlc3VsdCkgPT4ge1xuICAgICAgICB0aGlzLm1zYWxTZXJ2aWNlLmluc3RhbmNlLnNldEFjdGl2ZUFjY291bnQocmVzcG9uc2UuYWNjb3VudCk7XG4gICAgICAgIHRoaXMuY2hlY2tBY2NvdW50KCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tBY2NvdW50KCkge1xuICAgIHRoaXMubXNhbFNlcnZpY2UuaW5zdGFuY2VcbiAgICAgIC5hY3F1aXJlVG9rZW5TaWxlbnQodGhpcy5nZXRDb25mKCkuYXV0aFJlcXVlc3QgYXMgU2lsZW50UmVxdWVzdClcbiAgICAgIC50aGVuKChyZXNwb25zZTogQXV0aGVudGljYXRpb25SZXN1bHQpID0+IHtcbiAgICAgICAgY29uc3QgdG9rZW4gPSByZXNwb25zZS5pZFRva2VuO1xuICAgICAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ2luV2l0aFRva2VuKHRva2VuLCAnbWljcm9zb2Z0YjJjJykuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmFwcFJlZi50aWNrKCk7XG4gICAgICAgICAgdGhpcy5sb2dpbi5lbWl0KHRydWUpO1xuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goYXN5bmMgKGVycm9yKSA9PiB7XG4gICAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3IpIHtcbiAgICAgICAgICAvLyBmYWxsYmFjayB0byBpbnRlcmFjdGlvbiB3aGVuIHNpbGVudCBjYWxsIGZhaWxzXG4gICAgICAgICAgcmV0dXJuIHRoaXMubXNhbFNlcnZpY2UuYWNxdWlyZVRva2VuUG9wdXAoXG4gICAgICAgICAgICB0aGlzLmdldENvbmYoKS5hdXRoUmVxdWVzdCBhcyBTaWxlbnRSZXF1ZXN0XG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ1NpbGVudCB0b2tlbiBmYWlscycpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldENvbmYoKTogTVNQTXNhbEd1YXJkQ29uZmlndXJhdGlvbiB7XG4gICAgcmV0dXJuIHRoaXMubXNhbEd1YXJkQ29uZmlnLmZpbHRlcigoY29uZikgPT4gY29uZi50eXBlID09PSAnYjJjJylbMF07XG4gIH1cbn1cbiIsIjxidXR0b25cbiAgY2xhc3M9XCJtaWNyb3NvZnQtbG9naW4tYnV0dG9uXCJcbiAgbWF0LXJhaXNlZC1idXR0b25cbiAgKGNsaWNrKT1cImxvZ2luTWljcm9zb2Z0YjJjKClcIlxuPlxuICA8bWF0LWljb24gc3ZnSWNvbj1cIm1pY3Jvc29mdFwiPjwvbWF0LWljb24+XG4gIHt7ICdpZ28uYXV0aC5taWNyb3NvZnRiMmMubG9naW4nIHwgdHJhbnNsYXRlIH19XG48L2J1dHRvbj5cbiJdfQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hdXRoL3NyYy9saWIvYXV0aC1mb3JtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dGgtZm9ybS5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2F1dGgtaW50ZXJuLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vYXV0aC1mYWNlYm9vay5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2F1dGgtZ29vZ2xlLmNvbXBvbmVudCc7XHJcbiJdfQ==
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
- AuthRoutingModule.ɵfac = function AuthRoutingModule_Factory(t) { return new (t || AuthRoutingModule)(); };
13
- AuthRoutingModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: AuthRoutingModule });
14
- AuthRoutingModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [RouterModule.forChild(routes), RouterModule] });
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1yb3V0aW5nLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2F1dGgvc3JjL2xpYi9hdXRoLXJvdXRpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFVLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7QUFFcEUsTUFBTSxNQUFNLEdBQVc7SUFDckIsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRTtJQUMvQyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFO0NBQ2pELENBQUM7QUFPRixNQUFNLE9BQU8saUJBQWlCOztrRkFBakIsaUJBQWlCO21FQUFqQixpQkFBaUI7dUVBSmxCLFlBQVksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQzdCLFlBQVk7dUZBR1gsaUJBQWlCO2NBTDdCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUN4QyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7Z0JBQ3ZCLFNBQVMsRUFBRSxFQUFFO2FBQ2Q7O3dGQUNZLGlCQUFpQiwwQ0FIbEIsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlcywgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IEF1dGhGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9hdXRoLWZvcm0vYXV0aC1mb3JtLmNvbXBvbmVudCc7XHJcblxyXG5jb25zdCByb3V0ZXM6IFJvdXRlcyA9IFtcclxuICB7IHBhdGg6ICdsb2dpbicsIGNvbXBvbmVudDogQXV0aEZvcm1Db21wb25lbnQgfSxcclxuICB7IHBhdGg6ICdsb2dvdXQnLCBjb21wb25lbnQ6IEF1dGhGb3JtQ29tcG9uZW50IH1cclxuXTtcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1JvdXRlck1vZHVsZS5mb3JDaGlsZChyb3V0ZXMpXSxcclxuICBleHBvcnRzOiBbUm91dGVyTW9kdWxlXSxcclxuICBwcm92aWRlcnM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdXRoUm91dGluZ01vZHVsZSB7fVxyXG4iXX0=
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