@annalib/anna-cognito-lib 0.1.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.
Files changed (40) hide show
  1. package/README.md +39 -0
  2. package/annalib-anna-cognito-lib.d.ts +5 -0
  3. package/esm2020/annalib-anna-cognito-lib.mjs +5 -0
  4. package/esm2020/lib/anna-cognito-lib.module.mjs +74 -0
  5. package/esm2020/lib/components/forgot-password/forgot-password.component.mjs +69 -0
  6. package/esm2020/lib/components/login/login.component.mjs +44 -0
  7. package/esm2020/lib/components/password-matching/password-matching.component.mjs +90 -0
  8. package/esm2020/lib/components/set-new-password/set-new-password.component.mjs +55 -0
  9. package/esm2020/lib/components/verify-and-set-new-password/verify-and-set-new-password.component.mjs +66 -0
  10. package/esm2020/lib/config/acl-service.token.mjs +4 -0
  11. package/esm2020/lib/config/auth-service.token.mjs +4 -0
  12. package/esm2020/lib/config/library.config.mjs +6 -0
  13. package/esm2020/lib/constants/loginConstant.mjs +46 -0
  14. package/esm2020/lib/directives/spinner-button/index.mjs +2 -0
  15. package/esm2020/lib/directives/spinner-button/spinner-button.directive.mjs +42 -0
  16. package/esm2020/lib/models/auth.model.mjs +18 -0
  17. package/esm2020/lib/services/acl.service.mjs +30 -0
  18. package/esm2020/lib/services/auth.service.mjs +228 -0
  19. package/esm2020/public-api.mjs +21 -0
  20. package/fesm2015/annalib-anna-cognito-lib.mjs +716 -0
  21. package/fesm2015/annalib-anna-cognito-lib.mjs.map +1 -0
  22. package/fesm2020/annalib-anna-cognito-lib.mjs +709 -0
  23. package/fesm2020/annalib-anna-cognito-lib.mjs.map +1 -0
  24. package/lib/anna-cognito-lib.module.d.ts +18 -0
  25. package/lib/components/forgot-password/forgot-password.component.d.ts +31 -0
  26. package/lib/components/login/login.component.d.ts +19 -0
  27. package/lib/components/password-matching/password-matching.component.d.ts +22 -0
  28. package/lib/components/set-new-password/set-new-password.component.d.ts +26 -0
  29. package/lib/components/verify-and-set-new-password/verify-and-set-new-password.component.d.ts +30 -0
  30. package/lib/config/acl-service.token.d.ts +19 -0
  31. package/lib/config/auth-service.token.d.ts +11 -0
  32. package/lib/config/library.config.d.ts +7 -0
  33. package/lib/constants/loginConstant.d.ts +40 -0
  34. package/lib/directives/spinner-button/index.d.ts +1 -0
  35. package/lib/directives/spinner-button/spinner-button.directive.d.ts +15 -0
  36. package/lib/models/auth.model.d.ts +16 -0
  37. package/lib/services/acl.service.d.ts +12 -0
  38. package/lib/services/auth.service.d.ts +57 -0
  39. package/package.json +37 -0
  40. package/public-api.d.ts +13 -0
@@ -0,0 +1,66 @@
1
+ import { Component } from "@angular/core";
2
+ import { FormBuilder, Validators } from "@angular/forms";
3
+ import { Router } from "@angular/router";
4
+ import { AnnaLibAuthService } from "../../services/auth.service";
5
+ import { LoginConstant } from "../../constants/loginConstant";
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "../../services/auth.service";
8
+ import * as i2 from "@angular/forms";
9
+ import * as i3 from "@angular/router";
10
+ import * as i4 from "../password-matching/password-matching.component";
11
+ import * as i5 from "@angular/common";
12
+ export class VerifyAndSetNewPasswordComponent {
13
+ constructor(authService, fb, router) {
14
+ this.authService = authService;
15
+ this.fb = fb;
16
+ this.router = router;
17
+ this.passwordNotMatching = false;
18
+ this.password = { value: null, status: null };
19
+ this.confirmPassword = { value: null, status: null };
20
+ }
21
+ ngOnInit() {
22
+ this.constants = LoginConstant;
23
+ this.authService.verifyAndSetNewPasswordButton = LoginConstant.setNewPasswordButton;
24
+ this.onIntialiseForm();
25
+ }
26
+ onIntialiseForm() {
27
+ this.verifyOtpForm = this.fb.group({
28
+ otp: [null, [Validators.required]],
29
+ });
30
+ }
31
+ isFormValid() {
32
+ if (this.password.status === "VALID" &&
33
+ this.confirmPassword.status === "VALID" &&
34
+ this.verifyOtpForm.controls['otp'].valid) {
35
+ return true;
36
+ }
37
+ return false;
38
+ }
39
+ onPasswordChange($event) {
40
+ this.password = $event;
41
+ }
42
+ onConfirmPasswordChange($event) {
43
+ this.confirmPassword = $event;
44
+ }
45
+ onVerifyOtpSettingNewPassword() {
46
+ if (this.password.value != this.confirmPassword.value) {
47
+ this.passwordNotMatching = true;
48
+ }
49
+ else {
50
+ this.passwordNotMatching = false;
51
+ if (this.authService.verifyAndSetNewPasswordButton === LoginConstant.regenerateOtp) {
52
+ this.router.navigate([LoginConstant.forgortPasswordPageUrl]);
53
+ }
54
+ else {
55
+ this.password.value && this.authService.verifyCode(this.verifyOtpForm.controls['otp'].value, this.password.value);
56
+ }
57
+ }
58
+ }
59
+ }
60
+ VerifyAndSetNewPasswordComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: VerifyAndSetNewPasswordComponent, deps: [{ token: i1.AnnaLibAuthService }, { token: i2.FormBuilder }, { token: i3.Router }], target: i0.ɵɵFactoryTarget.Component });
61
+ VerifyAndSetNewPasswordComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: VerifyAndSetNewPasswordComponent, selector: "lib-verify-and-set-new-password", ngImport: i0, template: "<div class=\"main\" [ngClass]=\"{ 'main-height': authService.verifyAndSetNewPasswordErrorMessage }\">\r\n <section>\r\n <header>\r\n <img src=\"assets/images/Anna-Logo-for-footer-min.png\" alt=\"Anna Logo\" />\r\n </header>\r\n <article>\r\n <span class=\"back-btn\" [routerLink]=\"constants.forgortPasswordPageUrl\">\r\n <i class=\"mdi mdi-arrow-left\"></i>\r\n </span>\r\n\r\n <form [formGroup]=\"verifyOtpForm\">\r\n <div class=\"pull-left\" id=\"heading\">\r\n {{ constants.verifyAndSetNewPasswordheading }}\r\n </div>\r\n <p>{{ authService.verifyAndSetNewPasswordMessage }}</p>\r\n\r\n <div id=\"alert-div\" *ngIf=\"authService.verifyAndSetNewPasswordErrorMessage\">\r\n <div id=\"icon-div\">\r\n <span class=\"material-icons\">report</span>\r\n </div>\r\n <p id=\"display-block-msg\">{{ authService.verifyAndSetNewPasswordErrorMessage }}</p>\r\n </div>\r\n\r\n <input\r\n type=\"text\"\r\n tabindex=\"1\"\r\n formControlName=\"otp\"\r\n [placeholder]=\"constants.enterOtp\"\r\n autocomplete=\"new-field-name\"\r\n [ngClass]=\"{ 'input-invalid': authService.verifyAndSetNewPasswordErrorMessage }\"\r\n />\r\n\r\n <lib-password-matching\r\n (passwordChange)=\"onPasswordChange($event)\"\r\n (confirmPasswordChange)=\"onConfirmPasswordChange($event)\"\r\n [passwordNotMatching]=\"passwordNotMatching\"\r\n >\r\n </lib-password-matching>\r\n <button\r\n tabindex=\"4\"\r\n type=\"submit\"\r\n class=\"login-btn\"\r\n [disabled]=\"authService.sessionLocked || !isFormValid()\"\r\n (click)=\"onVerifyOtpSettingNewPassword()\"\r\n >\r\n {{ authService.verifyAndSetNewPasswordButton }}\r\n </button>\r\n </form>\r\n </article>\r\n <footer>\r\n Powered by <span> <strong>SureWaves</strong> </span>\r\n </footer>\r\n </section>\r\n</div>\r\n", styles: ["@keyframes show{0%{opacity:0}50%{opacity:.5}to{opacity:1}}html{overflow-y:scroll}.main{background-color:#fff;background-size:cover;font-family:Roboto;height:100vh}section{top:45%;left:50%;position:absolute;transform:translate(-50%,-50%);width:20.875rem;animation:show .5s 1;-moz-animation:show .5s 1}.container{width:100%;height:100%;overflow:auto}header{height:auto;width:100%;text-align:center}article{margin-top:.9375rem;margin-bottom:.9375rem;border:1px solid #979797;background-color:#f4f4f4;padding:2rem 1.375rem;border-radius:.375rem;box-shadow:0 .125rem .4375rem #0000001a}article #heading{color:#212121;text-align:center;margin-bottom:1.5rem;font-family:Roboto;font-size:1.125rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}#alert-div{padding:.25rem 0 0;margin-bottom:.75rem;border-radius:.25rem;border:solid 1px #f9b3ae;background-color:#fde4e3}#alert-div .material-icons{color:#f44336;font-size:1rem;margin-left:.5rem}#alert-div p{margin:-1.5625rem 0 0 1.8rem;padding:.3125rem 0;color:#4a4a4a;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}footer{align-items:baseline;color:#6e6e6e;opacity:.9;display:flex;font-family:Ubuntu;font-size:1rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;justify-content:center}footer span{font-size:1.3125rem;font-weight:700;margin-left:.25rem}input[type=password],input[type=text],input[type=number]{width:100%;height:30px;padding:.75rem 1rem;border:1px solid #979797;margin-bottom:.625rem;border-radius:.375rem}.login-btn{width:100%;height:2.5rem;border:0;color:#fff;background-color:#268bff;border-radius:.375rem;font-size:1rem;margin-top:.9375rem}.login-btn:hover{background-color:#4099ff;cursor:pointer}.login-btn:disabled{background-color:#ccc;color:#fff;cursor:not-allowed}.input-invalid{border:1px solid #fe3824!important}input[type=password].ng-dirty.ng-invalid,input[type=text].ng-dirty.ng-invalid{border:1px solid #fe3824}input[type=submit]:focus,input[type=password]:focus,input[type=text]:focus,input[type=checkbox]:focus,button:focus{outline:none}input::placeholder{color:#a4a4a4}.main-height{height:105vh}section{top:52%}p{color:#4a4a4a;font-family:Roboto;font-size:1rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}input[type=text]{margin-bottom:24px}input[type=text]:focus{box-shadow:none}.back-btn{width:27px;height:27px;top:-27px;left:-15px;cursor:pointer;position:relative;color:#268bff;float:left;border-radius:50%;border:1px solid #268bff;background-color:#f4f4f4}.back-btn i{position:absolute;top:.1875rem;left:.25rem}\n"], components: [{ type: i4.PasswordMatchingComponent, selector: "lib-password-matching", inputs: ["passwordNotMatching"], outputs: ["passwordChange", "confirmPasswordChange"] }], directives: [{ type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: VerifyAndSetNewPasswordComponent, decorators: [{
63
+ type: Component,
64
+ args: [{ selector: 'lib-verify-and-set-new-password', template: "<div class=\"main\" [ngClass]=\"{ 'main-height': authService.verifyAndSetNewPasswordErrorMessage }\">\r\n <section>\r\n <header>\r\n <img src=\"assets/images/Anna-Logo-for-footer-min.png\" alt=\"Anna Logo\" />\r\n </header>\r\n <article>\r\n <span class=\"back-btn\" [routerLink]=\"constants.forgortPasswordPageUrl\">\r\n <i class=\"mdi mdi-arrow-left\"></i>\r\n </span>\r\n\r\n <form [formGroup]=\"verifyOtpForm\">\r\n <div class=\"pull-left\" id=\"heading\">\r\n {{ constants.verifyAndSetNewPasswordheading }}\r\n </div>\r\n <p>{{ authService.verifyAndSetNewPasswordMessage }}</p>\r\n\r\n <div id=\"alert-div\" *ngIf=\"authService.verifyAndSetNewPasswordErrorMessage\">\r\n <div id=\"icon-div\">\r\n <span class=\"material-icons\">report</span>\r\n </div>\r\n <p id=\"display-block-msg\">{{ authService.verifyAndSetNewPasswordErrorMessage }}</p>\r\n </div>\r\n\r\n <input\r\n type=\"text\"\r\n tabindex=\"1\"\r\n formControlName=\"otp\"\r\n [placeholder]=\"constants.enterOtp\"\r\n autocomplete=\"new-field-name\"\r\n [ngClass]=\"{ 'input-invalid': authService.verifyAndSetNewPasswordErrorMessage }\"\r\n />\r\n\r\n <lib-password-matching\r\n (passwordChange)=\"onPasswordChange($event)\"\r\n (confirmPasswordChange)=\"onConfirmPasswordChange($event)\"\r\n [passwordNotMatching]=\"passwordNotMatching\"\r\n >\r\n </lib-password-matching>\r\n <button\r\n tabindex=\"4\"\r\n type=\"submit\"\r\n class=\"login-btn\"\r\n [disabled]=\"authService.sessionLocked || !isFormValid()\"\r\n (click)=\"onVerifyOtpSettingNewPassword()\"\r\n >\r\n {{ authService.verifyAndSetNewPasswordButton }}\r\n </button>\r\n </form>\r\n </article>\r\n <footer>\r\n Powered by <span> <strong>SureWaves</strong> </span>\r\n </footer>\r\n </section>\r\n</div>\r\n", styles: ["@keyframes show{0%{opacity:0}50%{opacity:.5}to{opacity:1}}html{overflow-y:scroll}.main{background-color:#fff;background-size:cover;font-family:Roboto;height:100vh}section{top:45%;left:50%;position:absolute;transform:translate(-50%,-50%);width:20.875rem;animation:show .5s 1;-moz-animation:show .5s 1}.container{width:100%;height:100%;overflow:auto}header{height:auto;width:100%;text-align:center}article{margin-top:.9375rem;margin-bottom:.9375rem;border:1px solid #979797;background-color:#f4f4f4;padding:2rem 1.375rem;border-radius:.375rem;box-shadow:0 .125rem .4375rem #0000001a}article #heading{color:#212121;text-align:center;margin-bottom:1.5rem;font-family:Roboto;font-size:1.125rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}#alert-div{padding:.25rem 0 0;margin-bottom:.75rem;border-radius:.25rem;border:solid 1px #f9b3ae;background-color:#fde4e3}#alert-div .material-icons{color:#f44336;font-size:1rem;margin-left:.5rem}#alert-div p{margin:-1.5625rem 0 0 1.8rem;padding:.3125rem 0;color:#4a4a4a;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}footer{align-items:baseline;color:#6e6e6e;opacity:.9;display:flex;font-family:Ubuntu;font-size:1rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;justify-content:center}footer span{font-size:1.3125rem;font-weight:700;margin-left:.25rem}input[type=password],input[type=text],input[type=number]{width:100%;height:30px;padding:.75rem 1rem;border:1px solid #979797;margin-bottom:.625rem;border-radius:.375rem}.login-btn{width:100%;height:2.5rem;border:0;color:#fff;background-color:#268bff;border-radius:.375rem;font-size:1rem;margin-top:.9375rem}.login-btn:hover{background-color:#4099ff;cursor:pointer}.login-btn:disabled{background-color:#ccc;color:#fff;cursor:not-allowed}.input-invalid{border:1px solid #fe3824!important}input[type=password].ng-dirty.ng-invalid,input[type=text].ng-dirty.ng-invalid{border:1px solid #fe3824}input[type=submit]:focus,input[type=password]:focus,input[type=text]:focus,input[type=checkbox]:focus,button:focus{outline:none}input::placeholder{color:#a4a4a4}.main-height{height:105vh}section{top:52%}p{color:#4a4a4a;font-family:Roboto;font-size:1rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}input[type=text]{margin-bottom:24px}input[type=text]:focus{box-shadow:none}.back-btn{width:27px;height:27px;top:-27px;left:-15px;cursor:pointer;position:relative;color:#268bff;float:left;border-radius:50%;border:1px solid #268bff;background-color:#f4f4f4}.back-btn i{position:absolute;top:.1875rem;left:.25rem}\n"] }]
65
+ }], ctorParameters: function () { return [{ type: i1.AnnaLibAuthService }, { type: i2.FormBuilder }, { type: i3.Router }]; } });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5LWFuZC1zZXQtbmV3LXBhc3N3b3JkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29nbml0by1saWIvc3JjL2xpYi9jb21wb25lbnRzL3ZlcmlmeS1hbmQtc2V0LW5ldy1wYXNzd29yZC92ZXJpZnktYW5kLXNldC1uZXctcGFzc3dvcmQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb2duaXRvLWxpYi9zcmMvbGliL2NvbXBvbmVudHMvdmVyaWZ5LWFuZC1zZXQtbmV3LXBhc3N3b3JkL3ZlcmlmeS1hbmQtc2V0LW5ldy1wYXNzd29yZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7QUFROUQsTUFBTSxPQUFPLGdDQUFnQztJQU8zQyxZQUNXLFdBQStCLEVBQzlCLEVBQWUsRUFDZixNQUFjO1FBRmYsZ0JBQVcsR0FBWCxXQUFXLENBQW9CO1FBQzlCLE9BQUUsR0FBRixFQUFFLENBQWE7UUFDZixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBUjFCLHdCQUFtQixHQUFHLEtBQUssQ0FBQztRQUU1QixhQUFRLEdBQWlCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDdkQsb0JBQWUsR0FBaUIsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQztJQU0zRCxDQUFDO0lBRUosUUFBUTtRQUNKLElBQUksQ0FBQyxTQUFTLEdBQUcsYUFBYSxDQUFDO1FBQy9CLElBQUksQ0FBQyxXQUFXLENBQUMsNkJBQTZCLEdBQUcsYUFBYSxDQUFDLG9CQUFvQixDQUFDO1FBQ3BGLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUM7WUFDL0IsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3JDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFDSSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxPQUFPO1lBQ2hDLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxLQUFLLE9BQU87WUFDdkMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUMxQztZQUNFLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBb0I7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUM7SUFDM0IsQ0FBQztJQUVELHVCQUF1QixDQUFDLE1BQW9CO1FBQ3hDLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFFRCw2QkFBNkI7UUFDekIsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRTtZQUNuRCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1NBQ25DO2FBQU07WUFDSCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1lBQ2pDLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyw2QkFBNkIsS0FBSyxhQUFhLENBQUMsYUFBYSxFQUFFO2dCQUNoRixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUM7YUFDaEU7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDckg7U0FDSjtJQUNMLENBQUM7OzZIQXZEVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyx1RUNaN0MsK3lFQXNEQTsyRkQxQ2EsZ0NBQWdDO2tCQUw1QyxTQUFTOytCQUNFLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBGb3JtQnVpbGRlciwgRm9ybUdyb3VwLCBWYWxpZGF0b3JzIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgQW5uYUxpYkF1dGhTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2F1dGguc2VydmljZVwiO1xyXG5pbXBvcnQgeyBMb2dpbkNvbnN0YW50IH0gZnJvbSBcIi4uLy4uL2NvbnN0YW50cy9sb2dpbkNvbnN0YW50XCI7XHJcbnR5cGUgcGFzc3dvcmRUeXBlID0geyB2YWx1ZTogc3RyaW5nIHwgbnVsbCwgc3RhdHVzOiBzdHJpbmcgfCBudWxsIH07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi12ZXJpZnktYW5kLXNldC1uZXctcGFzc3dvcmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi92ZXJpZnktYW5kLXNldC1uZXctcGFzc3dvcmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3ZlcmlmeS1hbmQtc2V0LW5ldy1wYXNzd29yZC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWZXJpZnlBbmRTZXROZXdQYXNzd29yZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgdmVyaWZ5T3RwRm9ybTogRm9ybUdyb3VwO1xyXG4gIHBhc3N3b3JkTm90TWF0Y2hpbmcgPSBmYWxzZTtcclxuICBjb25zdGFudHM6IHR5cGVvZiBMb2dpbkNvbnN0YW50O1xyXG4gIHBhc3N3b3JkOiBwYXNzd29yZFR5cGUgPSB7IHZhbHVlOiBudWxsLCBzdGF0dXM6IG51bGwgfTtcclxuICBjb25maXJtUGFzc3dvcmQ6IHBhc3N3b3JkVHlwZSA9IHsgdmFsdWU6IG51bGwsIHN0YXR1czogbnVsbCB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgICAgcHVibGljIGF1dGhTZXJ2aWNlOiBBbm5hTGliQXV0aFNlcnZpY2UsXHJcbiAgICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxyXG4gICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgICAgdGhpcy5jb25zdGFudHMgPSBMb2dpbkNvbnN0YW50O1xyXG4gICAgICB0aGlzLmF1dGhTZXJ2aWNlLnZlcmlmeUFuZFNldE5ld1Bhc3N3b3JkQnV0dG9uID0gTG9naW5Db25zdGFudC5zZXROZXdQYXNzd29yZEJ1dHRvbjtcclxuICAgICAgdGhpcy5vbkludGlhbGlzZUZvcm0oKTtcclxuICB9XHJcblxyXG4gIG9uSW50aWFsaXNlRm9ybSgpIHtcclxuICAgICAgdGhpcy52ZXJpZnlPdHBGb3JtID0gdGhpcy5mYi5ncm91cCh7XHJcbiAgICAgICAgICBvdHA6IFtudWxsLCBbVmFsaWRhdG9ycy5yZXF1aXJlZF1dLFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIGlzRm9ybVZhbGlkKCkge1xyXG4gICAgICBpZiAoXHJcbiAgICAgICAgICB0aGlzLnBhc3N3b3JkLnN0YXR1cyA9PT0gXCJWQUxJRFwiICYmXHJcbiAgICAgICAgICB0aGlzLmNvbmZpcm1QYXNzd29yZC5zdGF0dXMgPT09IFwiVkFMSURcIiAmJlxyXG4gICAgICAgICAgdGhpcy52ZXJpZnlPdHBGb3JtLmNvbnRyb2xzWydvdHAnXS52YWxpZFxyXG4gICAgICApIHtcclxuICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIG9uUGFzc3dvcmRDaGFuZ2UoJGV2ZW50OiBwYXNzd29yZFR5cGUpIHtcclxuICAgICAgdGhpcy5wYXNzd29yZCA9ICRldmVudDtcclxuICB9XHJcblxyXG4gIG9uQ29uZmlybVBhc3N3b3JkQ2hhbmdlKCRldmVudDogcGFzc3dvcmRUeXBlKSB7XHJcbiAgICAgIHRoaXMuY29uZmlybVBhc3N3b3JkID0gJGV2ZW50O1xyXG4gIH1cclxuXHJcbiAgb25WZXJpZnlPdHBTZXR0aW5nTmV3UGFzc3dvcmQoKSB7XHJcbiAgICAgIGlmICh0aGlzLnBhc3N3b3JkLnZhbHVlICE9IHRoaXMuY29uZmlybVBhc3N3b3JkLnZhbHVlKSB7XHJcbiAgICAgICAgICB0aGlzLnBhc3N3b3JkTm90TWF0Y2hpbmcgPSB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5wYXNzd29yZE5vdE1hdGNoaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICBpZiAodGhpcy5hdXRoU2VydmljZS52ZXJpZnlBbmRTZXROZXdQYXNzd29yZEJ1dHRvbiA9PT0gTG9naW5Db25zdGFudC5yZWdlbmVyYXRlT3RwKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW0xvZ2luQ29uc3RhbnQuZm9yZ29ydFBhc3N3b3JkUGFnZVVybF0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnBhc3N3b3JkLnZhbHVlICYmIHRoaXMuYXV0aFNlcnZpY2UudmVyaWZ5Q29kZSh0aGlzLnZlcmlmeU90cEZvcm0uY29udHJvbHNbJ290cCddLnZhbHVlLCB0aGlzLnBhc3N3b3JkLnZhbHVlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIm1haW5cIiBbbmdDbGFzc109XCJ7ICdtYWluLWhlaWdodCc6IGF1dGhTZXJ2aWNlLnZlcmlmeUFuZFNldE5ld1Bhc3N3b3JkRXJyb3JNZXNzYWdlIH1cIj5cclxuICA8c2VjdGlvbj5cclxuICAgICAgPGhlYWRlcj5cclxuICAgICAgICAgIDxpbWcgc3JjPVwiYXNzZXRzL2ltYWdlcy9Bbm5hLUxvZ28tZm9yLWZvb3Rlci1taW4ucG5nXCIgYWx0PVwiQW5uYSBMb2dvXCIgLz5cclxuICAgICAgPC9oZWFkZXI+XHJcbiAgICAgIDxhcnRpY2xlPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWNrLWJ0blwiIFtyb3V0ZXJMaW5rXT1cImNvbnN0YW50cy5mb3Jnb3J0UGFzc3dvcmRQYWdlVXJsXCI+XHJcbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJtZGkgbWRpLWFycm93LWxlZnRcIj48L2k+XHJcbiAgICAgICAgICA8L3NwYW4+XHJcblxyXG4gICAgICAgICAgPGZvcm0gW2Zvcm1Hcm91cF09XCJ2ZXJpZnlPdHBGb3JtXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInB1bGwtbGVmdFwiIGlkPVwiaGVhZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICB7eyBjb25zdGFudHMudmVyaWZ5QW5kU2V0TmV3UGFzc3dvcmRoZWFkaW5nIH19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPHA+e3sgYXV0aFNlcnZpY2UudmVyaWZ5QW5kU2V0TmV3UGFzc3dvcmRNZXNzYWdlIH19PC9wPlxyXG5cclxuICAgICAgICAgICAgICA8ZGl2IGlkPVwiYWxlcnQtZGl2XCIgKm5nSWY9XCJhdXRoU2VydmljZS52ZXJpZnlBbmRTZXROZXdQYXNzd29yZEVycm9yTWVzc2FnZVwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwiaWNvbi1kaXZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnNcIj5yZXBvcnQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8cCBpZD1cImRpc3BsYXktYmxvY2stbXNnXCI+e3sgYXV0aFNlcnZpY2UudmVyaWZ5QW5kU2V0TmV3UGFzc3dvcmRFcnJvck1lc3NhZ2UgfX08L3A+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgIDxpbnB1dFxyXG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgIGZvcm1Db250cm9sTmFtZT1cIm90cFwiXHJcbiAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJjb25zdGFudHMuZW50ZXJPdHBcIlxyXG4gICAgICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJuZXctZmllbGQtbmFtZVwiXHJcbiAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsgJ2lucHV0LWludmFsaWQnOiBhdXRoU2VydmljZS52ZXJpZnlBbmRTZXROZXdQYXNzd29yZEVycm9yTWVzc2FnZSB9XCJcclxuICAgICAgICAgICAgICAvPlxyXG5cclxuICAgICAgICAgICAgICA8bGliLXBhc3N3b3JkLW1hdGNoaW5nXHJcbiAgICAgICAgICAgICAgICAgIChwYXNzd29yZENoYW5nZSk9XCJvblBhc3N3b3JkQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAoY29uZmlybVBhc3N3b3JkQ2hhbmdlKT1cIm9uQ29uZmlybVBhc3N3b3JkQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbcGFzc3dvcmROb3RNYXRjaGluZ109XCJwYXNzd29yZE5vdE1hdGNoaW5nXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgPC9saWItcGFzc3dvcmQtbWF0Y2hpbmc+XHJcbiAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjRcIlxyXG4gICAgICAgICAgICAgICAgICB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJsb2dpbi1idG5cIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiYXV0aFNlcnZpY2Uuc2Vzc2lvbkxvY2tlZCB8fCAhaXNGb3JtVmFsaWQoKVwiXHJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblZlcmlmeU90cFNldHRpbmdOZXdQYXNzd29yZCgpXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIHt7IGF1dGhTZXJ2aWNlLnZlcmlmeUFuZFNldE5ld1Bhc3N3b3JkQnV0dG9uIH19XHJcbiAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8L2Zvcm0+XHJcbiAgICAgIDwvYXJ0aWNsZT5cclxuICAgICAgPGZvb3Rlcj5cclxuICAgICAgICAgIFBvd2VyZWQgYnkgPHNwYW4+IDxzdHJvbmc+U3VyZVdhdmVzPC9zdHJvbmc+IDwvc3Bhbj5cclxuICAgICAgPC9mb290ZXI+XHJcbiAgPC9zZWN0aW9uPlxyXG48L2Rpdj5cclxuIl19
@@ -0,0 +1,4 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ /** Token to inject the acl service */
3
+ export const ACL_SERVICE_TOKEN = new InjectionToken('ACL service token');
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNsLXNlcnZpY2UudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvZ25pdG8tbGliL3NyYy9saWIvY29uZmlnL2FjbC1zZXJ2aWNlLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0Msc0NBQXNDO0FBQ3RDLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUV0QixJQUFJLGNBQWMsQ0FBYyxtQkFBbUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbi8qKiBUb2tlbiB0byBpbmplY3QgdGhlIGFjbCBzZXJ2aWNlICovXHJcbmV4cG9ydCBjb25zdCBBQ0xfU0VSVklDRV9UT0tFTjpcclxuICAgIEluamVjdGlvblRva2VuPElBY2xTZXJ2aWNlPiA9XHJcbiAgICAgICAgbmV3IEluamVjdGlvblRva2VuPElBY2xTZXJ2aWNlPignQUNMIHNlcnZpY2UgdG9rZW4nKTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUFjbFNlcnZpY2Uge1xyXG4gICB1cmxUb0NvZ25pdG9Qcml2aWxlZ2VNYXA6IHtba2V5OiBzdHJpbmddOiBzdHJpbmd9O1xyXG4gICBEQUlMWV9SRVZJU0lPTl9SRVBPUlRfV1JJVEU6IHN0cmluZztcclxuICAgTFVSX1NFVFRJTkdTX1dSSVRFOiBzdHJpbmc7XHJcbiAgIE1BTkFHRV9CVVNJTkVTU19SVUxFU19XUklURTogc3RyaW5nO1xyXG4gICBNQU5BR0VfVVNFUlNfV1JJVEU6IHN0cmluZztcclxuICAgT1JERVJfQklaX1JVTEVTX1dSSVRFOiBzdHJpbmc7XHJcbiAgIE9SREVSX1JFVklTSU9OU19XUklURTogc3RyaW5nO1xyXG4gICBPUkRFUl9TUE9UU19SRVBPUlRfV1JJVEU6IHN0cmluZztcclxuICAgUkFURV9DQVJEX1dSSVRFOiBzdHJpbmc7XHJcbiAgIFNUQVRJT05fU1lTVEVNX1NFVFRJTkdTX1dSSVRFOiBzdHJpbmc7XHJcbiAgIFBPTElUSUNBTF9XSU5ET1dfV1JJVEU6IHN0cmluZztcclxuICAgXHJcbiAgIGlzVXNlckF1dGhvcmlzZVRvQWNlc3NNYW5hZ2VVc2VyKCk6IGJvb2xlYW47XHJcbn0iXX0=
@@ -0,0 +1,4 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ /** Token to inject the auth service */
3
+ export const AUTH_SERVICE_TOKEN = new InjectionToken('Auth service token');
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1zZXJ2aWNlLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb2duaXRvLWxpYi9zcmMvbGliL2NvbmZpZy9hdXRoLXNlcnZpY2UudG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyx1Q0FBdUM7QUFDdkMsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBRXZCLElBQUksY0FBYyxDQUFlLG9CQUFvQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG4vKiogVG9rZW4gdG8gaW5qZWN0IHRoZSBhdXRoIHNlcnZpY2UgKi9cclxuZXhwb3J0IGNvbnN0IEFVVEhfU0VSVklDRV9UT0tFTjpcclxuICAgIEluamVjdGlvblRva2VuPElBdXRoU2VydmljZT4gPVxyXG4gICAgICAgIG5ldyBJbmplY3Rpb25Ub2tlbjxJQXV0aFNlcnZpY2U+KCdBdXRoIHNlcnZpY2UgdG9rZW4nKTtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSUF1dGhTZXJ2aWNlIHtcclxuICAgaXNMb2dnaW5nSW46IGJvb2xlYW47IFxyXG4gICBvblN1Y2Nlc3NmdWxBdXRoZW50aWNhdGluZ1VzZXIocmVzdWx0OiBhbnkpOiB2b2lkO1xyXG4gICBpc1VzZXJuYW1lQXZhaWxhYmxlKHVzZXJuYW1lOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT47XHJcbiAgIG5hdmlnYXRlQmFzZWRPblVzZXJSb2xlKGxvZ2luVXNlckRhdGE6IGFueSk6IHZvaWQ7XHJcbiAgIGdldFB1YmxpY0lwKCk6IHN0cmluZztcclxufSJdfQ==
@@ -0,0 +1,6 @@
1
+ export class LibraryConfig {
2
+ constructor() {
3
+ this.loginPageLogoImgUrl = '';
4
+ }
5
+ }
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyeS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvZ25pdG8tbGliL3NyYy9saWIvY29uZmlnL2xpYnJhcnkuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sT0FBTyxhQUFhO0lBQTFCO1FBQ0Usd0JBQW1CLEdBQVcsRUFBRSxDQUFDO0lBTW5DLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBMaWJyYXJ5Q29uZmlnIHsgXHJcbiAgbG9naW5QYWdlTG9nb0ltZ1VybDogc3RyaW5nID0gJyc7XHJcbiAgY29nbml0byA6IHtcclxuICAgIHVzZXJQb29sSWQ6IHN0cmluZztcclxuICAgIGNsaWVudElkOiBzdHJpbmc7IFxyXG4gIH1cclxuIFxyXG59Il19
@@ -0,0 +1,46 @@
1
+ export class LoginConstant {
2
+ }
3
+ // Login page
4
+ LoginConstant.enterEmail = "Enter your username";
5
+ LoginConstant.password = "Password";
6
+ LoginConstant.confirmPassword = "Confirm Password";
7
+ LoginConstant.login = "Login";
8
+ LoginConstant.otp = "OTP";
9
+ LoginConstant.forgotPassword = "Forgot " + LoginConstant.password.toLowerCase() + "?";
10
+ // set new password
11
+ LoginConstant.setNewPasswordHeading = "Set new " + LoginConstant.password.toLowerCase();
12
+ LoginConstant.setNewPasswordButton = "Set and " + LoginConstant.login.toLowerCase() + " again";
13
+ LoginConstant.passwordMustContain = "The password must contain:";
14
+ LoginConstant.minimumCharacter = "Minimum 8 characters";
15
+ LoginConstant.oneUppercase = "1 Uppercase";
16
+ LoginConstant.oneLowercase = "1 Lowercase";
17
+ LoginConstant.oneNumber = "1 Numerical";
18
+ LoginConstant.specialCharacter = "1 Special character";
19
+ LoginConstant.passwordNotMatching = "The passwords do not match. Please try again.";
20
+ LoginConstant.userNamePasswordIncorrect = "Incorrect username or password";
21
+ LoginConstant.userNotFound = "No registered user found";
22
+ LoginConstant.loginAgain = LoginConstant.login + " again";
23
+ // verify OTP & set new password
24
+ LoginConstant.verifyAndSetNewPasswordheading = "Enter " + LoginConstant.otp + " & set new password";
25
+ LoginConstant.verifyAndSetNewPasswordMessage = "An " + LoginConstant.otp + " has been succesfully emailed to ";
26
+ LoginConstant.pleaseEnterItBelow = ". Please enter it below.";
27
+ LoginConstant.regenerateOtp = "Regenerate " + LoginConstant.otp;
28
+ LoginConstant.enterOtp = "Enter " + LoginConstant.otp;
29
+ LoginConstant.submit = "Submit";
30
+ LoginConstant.attempt = "Attempt";
31
+ LoginConstant.attemptLimitExceeded = "You have exceeded the maximum number of allowed attempts. Please try again after 15 minutes.";
32
+ LoginConstant.attemptMessage = " of 5. The OTP entered is incorrect. Please try again with the right one.";
33
+ LoginConstant.sessionExpired = "The session has expired. Please try again.";
34
+ // forgot password
35
+ LoginConstant.forgotPasswordHeading = "Forgot your password?";
36
+ LoginConstant.forgotPasswordMessage = "Please enter your username.";
37
+ LoginConstant.forgotPasswordButton = "Get " + LoginConstant.otp;
38
+ LoginConstant.apiFailErrorMessage = "Unable to connect to server right now. Please try after some time.";
39
+ //url
40
+ LoginConstant.setNewPasswordUrl = "/set-new-password";
41
+ LoginConstant.forgortPasswordPageUrl = "/forgot-password";
42
+ LoginConstant.verifyAndSetNewPasswordUrl = "/verify-and-set-new-password";
43
+ LoginConstant.loginPageUrl = "/login";
44
+ LoginConstant.homePageUrl = "/home";
45
+ LoginConstant.stationSettingUrl = "/station-settings";
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW5Db25zdGFudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29nbml0by1saWIvc3JjL2xpYi9jb25zdGFudHMvbG9naW5Db25zdGFudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sYUFBYTs7QUFDeEIsYUFBYTtBQUNHLHdCQUFVLEdBQUcscUJBQXFCLENBQUM7QUFDbkMsc0JBQVEsR0FBRyxVQUFVLENBQUM7QUFDdEIsNkJBQWUsR0FBRyxrQkFBa0IsQ0FBQztBQUNyQyxtQkFBSyxHQUFHLE9BQU8sQ0FBQztBQUNoQixpQkFBRyxHQUFHLEtBQUssQ0FBQztBQUNaLDRCQUFjLEdBQUcsU0FBUyxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFLEdBQUcsR0FBRyxDQUFDO0FBRXhGLG1CQUFtQjtBQUNILG1DQUFxQixHQUFHLFVBQVUsR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0FBQzFFLGtDQUFvQixHQUFHLFVBQVUsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxHQUFHLFFBQVEsQ0FBQztBQUNqRixpQ0FBbUIsR0FBRyw0QkFBNEIsQ0FBQztBQUNuRCw4QkFBZ0IsR0FBRyxzQkFBc0IsQ0FBQztBQUMxQywwQkFBWSxHQUFHLGFBQWEsQ0FBQztBQUM3QiwwQkFBWSxHQUFHLGFBQWEsQ0FBQztBQUM3Qix1QkFBUyxHQUFHLGFBQWEsQ0FBQztBQUMxQiw4QkFBZ0IsR0FBRyxxQkFBcUIsQ0FBQztBQUN6QyxpQ0FBbUIsR0FBRywrQ0FBK0MsQ0FBQztBQUN0RSx1Q0FBeUIsR0FBRyxnQ0FBZ0MsQ0FBQztBQUM3RCwwQkFBWSxHQUFHLDBCQUEwQixDQUFDO0FBQzFDLHdCQUFVLEdBQUcsYUFBYSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUM7QUFFNUQsZ0NBQWdDO0FBQ2hCLDRDQUE4QixHQUFHLFFBQVEsR0FBRyxhQUFhLENBQUMsR0FBRyxHQUFHLHFCQUFxQixDQUFDO0FBQ3RGLDRDQUE4QixHQUFHLEtBQUssR0FBRyxhQUFhLENBQUMsR0FBRyxHQUFHLG1DQUFtQyxDQUFDO0FBQ2pHLGdDQUFrQixHQUFHLDBCQUEwQixDQUFDO0FBQ2hELDJCQUFhLEdBQUcsYUFBYSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUM7QUFDbEQsc0JBQVEsR0FBRyxRQUFRLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQztBQUN4QyxvQkFBTSxHQUFHLFFBQVEsQ0FBQztBQUNsQixxQkFBTyxHQUFHLFNBQVMsQ0FBQztBQUNwQixrQ0FBb0IsR0FDaEMsOEZBQThGLENBQUM7QUFDbkYsNEJBQWMsR0FBRywyRUFBMkUsQ0FBQztBQUM3Riw0QkFBYyxHQUFHLDRDQUE0QyxDQUFDO0FBRTlFLGtCQUFrQjtBQUNGLG1DQUFxQixHQUFHLHVCQUF1QixDQUFDO0FBQ2hELG1DQUFxQixHQUFHLDZCQUE2QixDQUFDO0FBQ3RELGtDQUFvQixHQUFHLE1BQU0sR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDO0FBQ2xELGlDQUFtQixHQUFHLG9FQUFvRSxDQUFDO0FBRTNHLEtBQUs7QUFDVywrQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQztBQUN4QyxvQ0FBc0IsR0FBRyxrQkFBa0IsQ0FBQztBQUM1Qyx3Q0FBMEIsR0FBRyw4QkFBOEIsQ0FBQztBQUM1RCwwQkFBWSxHQUFHLFFBQVEsQ0FBQztBQUN4Qix5QkFBVyxHQUFHLE9BQU8sQ0FBQztBQUN0QiwrQkFBaUIsR0FBRyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBMb2dpbkNvbnN0YW50IHtcclxuICAvLyBMb2dpbiBwYWdlXHJcbiAgc3RhdGljIHJlYWRvbmx5IGVudGVyRW1haWwgPSBcIkVudGVyIHlvdXIgdXNlcm5hbWVcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgcGFzc3dvcmQgPSBcIlBhc3N3b3JkXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IGNvbmZpcm1QYXNzd29yZCA9IFwiQ29uZmlybSBQYXNzd29yZFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBsb2dpbiA9IFwiTG9naW5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgb3RwID0gXCJPVFBcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgZm9yZ290UGFzc3dvcmQgPSBcIkZvcmdvdCBcIiArIExvZ2luQ29uc3RhbnQucGFzc3dvcmQudG9Mb3dlckNhc2UoKSArIFwiP1wiO1xyXG5cclxuICAvLyBzZXQgbmV3IHBhc3N3b3JkXHJcbiAgc3RhdGljIHJlYWRvbmx5IHNldE5ld1Bhc3N3b3JkSGVhZGluZyA9IFwiU2V0IG5ldyBcIiArIExvZ2luQ29uc3RhbnQucGFzc3dvcmQudG9Mb3dlckNhc2UoKTtcclxuICBzdGF0aWMgcmVhZG9ubHkgc2V0TmV3UGFzc3dvcmRCdXR0b24gPSBcIlNldCBhbmQgXCIgKyBMb2dpbkNvbnN0YW50LmxvZ2luLnRvTG93ZXJDYXNlKCkgKyBcIiBhZ2FpblwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBwYXNzd29yZE11c3RDb250YWluID0gXCJUaGUgcGFzc3dvcmQgbXVzdCBjb250YWluOlwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBtaW5pbXVtQ2hhcmFjdGVyID0gXCJNaW5pbXVtIDggY2hhcmFjdGVyc1wiO1xyXG4gIHN0YXRpYyByZWFkb25seSBvbmVVcHBlcmNhc2UgPSBcIjEgVXBwZXJjYXNlXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IG9uZUxvd2VyY2FzZSA9IFwiMSBMb3dlcmNhc2VcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgb25lTnVtYmVyID0gXCIxIE51bWVyaWNhbFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBzcGVjaWFsQ2hhcmFjdGVyID0gXCIxIFNwZWNpYWwgY2hhcmFjdGVyXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IHBhc3N3b3JkTm90TWF0Y2hpbmcgPSBcIlRoZSBwYXNzd29yZHMgZG8gbm90IG1hdGNoLiBQbGVhc2UgdHJ5IGFnYWluLlwiO1xyXG4gIHN0YXRpYyByZWFkb25seSB1c2VyTmFtZVBhc3N3b3JkSW5jb3JyZWN0ID0gXCJJbmNvcnJlY3QgdXNlcm5hbWUgb3IgcGFzc3dvcmRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgdXNlck5vdEZvdW5kID0gXCJObyByZWdpc3RlcmVkIHVzZXIgZm91bmRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgbG9naW5BZ2FpbiA9IExvZ2luQ29uc3RhbnQubG9naW4gKyBcIiBhZ2FpblwiO1xyXG5cclxuICAvLyB2ZXJpZnkgT1RQICYgc2V0IG5ldyBwYXNzd29yZFxyXG4gIHN0YXRpYyByZWFkb25seSB2ZXJpZnlBbmRTZXROZXdQYXNzd29yZGhlYWRpbmcgPSBcIkVudGVyIFwiICsgTG9naW5Db25zdGFudC5vdHAgKyBcIiAmIHNldCBuZXcgcGFzc3dvcmRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgdmVyaWZ5QW5kU2V0TmV3UGFzc3dvcmRNZXNzYWdlID0gXCJBbiBcIiArIExvZ2luQ29uc3RhbnQub3RwICsgXCIgaGFzIGJlZW4gc3VjY2VzZnVsbHkgZW1haWxlZCB0byBcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgcGxlYXNlRW50ZXJJdEJlbG93ID0gXCIuIFBsZWFzZSBlbnRlciBpdCBiZWxvdy5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgcmVnZW5lcmF0ZU90cCA9IFwiUmVnZW5lcmF0ZSBcIiArIExvZ2luQ29uc3RhbnQub3RwO1xyXG4gIHN0YXRpYyByZWFkb25seSBlbnRlck90cCA9IFwiRW50ZXIgXCIgKyBMb2dpbkNvbnN0YW50Lm90cDtcclxuICBzdGF0aWMgcmVhZG9ubHkgc3VibWl0ID0gXCJTdWJtaXRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgYXR0ZW1wdCA9IFwiQXR0ZW1wdFwiO1xyXG4gIHN0YXRpYyByZWFkb25seSBhdHRlbXB0TGltaXRFeGNlZWRlZCA9XHJcbiAgICAgIFwiWW91IGhhdmUgZXhjZWVkZWQgdGhlIG1heGltdW0gbnVtYmVyIG9mIGFsbG93ZWQgYXR0ZW1wdHMuIFBsZWFzZSB0cnkgYWdhaW4gYWZ0ZXIgMTUgbWludXRlcy5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgYXR0ZW1wdE1lc3NhZ2UgPSBcIiBvZiA1LiBUaGUgT1RQIGVudGVyZWQgaXMgaW5jb3JyZWN0LiBQbGVhc2UgdHJ5IGFnYWluIHdpdGggdGhlIHJpZ2h0IG9uZS5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgc2Vzc2lvbkV4cGlyZWQgPSBcIlRoZSBzZXNzaW9uIGhhcyBleHBpcmVkLiBQbGVhc2UgdHJ5IGFnYWluLlwiO1xyXG5cclxuICAvLyBmb3Jnb3QgcGFzc3dvcmRcclxuICBzdGF0aWMgcmVhZG9ubHkgZm9yZ290UGFzc3dvcmRIZWFkaW5nID0gXCJGb3Jnb3QgeW91ciBwYXNzd29yZD9cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgZm9yZ290UGFzc3dvcmRNZXNzYWdlID0gXCJQbGVhc2UgZW50ZXIgeW91ciB1c2VybmFtZS5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgZm9yZ290UGFzc3dvcmRCdXR0b24gPSBcIkdldCBcIiArIExvZ2luQ29uc3RhbnQub3RwO1xyXG4gIHN0YXRpYyByZWFkb25seSBhcGlGYWlsRXJyb3JNZXNzYWdlID0gXCJVbmFibGUgdG8gY29ubmVjdCB0byBzZXJ2ZXIgcmlnaHQgbm93LiBQbGVhc2UgdHJ5IGFmdGVyIHNvbWUgdGltZS5cIjtcclxuXHJcbiAgLy91cmxcclxuICBzdGF0aWMgcmVhZG9ubHkgc2V0TmV3UGFzc3dvcmRVcmwgPSBcIi9zZXQtbmV3LXBhc3N3b3JkXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IGZvcmdvcnRQYXNzd29yZFBhZ2VVcmwgPSBcIi9mb3Jnb3QtcGFzc3dvcmRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgdmVyaWZ5QW5kU2V0TmV3UGFzc3dvcmRVcmwgPSBcIi92ZXJpZnktYW5kLXNldC1uZXctcGFzc3dvcmRcIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgbG9naW5QYWdlVXJsID0gXCIvbG9naW5cIjtcclxuICBzdGF0aWMgcmVhZG9ubHkgaG9tZVBhZ2VVcmwgPSBcIi9ob21lXCI7XHJcbiAgc3RhdGljIHJlYWRvbmx5IHN0YXRpb25TZXR0aW5nVXJsID0gXCIvc3RhdGlvbi1zZXR0aW5nc1wiO1xyXG59XHJcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from "./spinner-button.directive";
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvZ25pdG8tbGliL3NyYy9saWIvZGlyZWN0aXZlcy9zcGlubmVyLWJ1dHRvbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSBcIi4vc3Bpbm5lci1idXR0b24uZGlyZWN0aXZlXCI7XHJcbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { Directive, ElementRef, Input, Renderer2 } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export class SpinnerButtonDirective {
4
+ constructor(el, renderer) {
5
+ this.el = el;
6
+ this.renderer = renderer;
7
+ this.button = this.el.nativeElement;
8
+ this.child = document.createElement("div");
9
+ }
10
+ ngOnInit() { }
11
+ ngOnChanges(changes) {
12
+ if (changes['spinnerButtonText'] && changes['spinnerButtonText'].currentValue) {
13
+ this.button.innerHTML = this.spinnerButtonText;
14
+ }
15
+ if (changes['loading'] && changes['loading'].currentValue) {
16
+ this.button.innerHTML = "";
17
+ this.button.setAttribute("disabled", "true");
18
+ this.child.classList.add("spinner-for-button-directive");
19
+ this.renderer.appendChild(this.button, this.child);
20
+ }
21
+ else {
22
+ this.child.classList.remove("spinner-for-button-directive");
23
+ this.button.removeAttribute("disabled");
24
+ this.button.innerHTML = this.spinnerButtonText;
25
+ }
26
+ }
27
+ }
28
+ SpinnerButtonDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SpinnerButtonDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
29
+ SpinnerButtonDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: SpinnerButtonDirective, selector: "[appSpinnerButton]", inputs: { loading: ["appSpinnerButton", "loading"], spinnerButtonText: "spinnerButtonText" }, usesOnChanges: true, ngImport: i0 });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SpinnerButtonDirective, decorators: [{
31
+ type: Directive,
32
+ args: [{
33
+ selector: "[appSpinnerButton]",
34
+ }]
35
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { loading: [{
36
+ type: Input,
37
+ args: ["appSpinnerButton"]
38
+ }], spinnerButtonText: [{
39
+ type: Input,
40
+ args: ["spinnerButtonText"]
41
+ }] } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci1idXR0b24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb2duaXRvLWxpYi9zcmMvbGliL2RpcmVjdGl2ZXMvc3Bpbm5lci1idXR0b24vc3Bpbm5lci1idXR0b24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQW9DLE1BQU0sZUFBZSxDQUFDOztBQUsxRyxNQUFNLE9BQU8sc0JBQXNCO0lBTS9CLFlBQ1UsRUFBYyxFQUNkLFFBQW1CO1FBRG5CLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFDcEMsSUFBSSxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRCxRQUFRLEtBQUksQ0FBQztJQUViLFdBQVcsQ0FBQyxPQUFzQjtRQUM5QixJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFlBQVksRUFBRTtZQUMzRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUM7U0FDbEQ7UUFDRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBWSxFQUFFO1lBQ3ZELElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDN0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLDhCQUE4QixDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDdEQ7YUFBTTtZQUNILElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ3hDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztTQUNsRDtJQUNMLENBQUM7O21IQTdCUSxzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUhsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7aUJBQ2pDO3lIQUU4QixPQUFPO3NCQUFqQyxLQUFLO3VCQUFDLGtCQUFrQjtnQkFDRyxpQkFBaUI7c0JBQTVDLEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgUmVuZGVyZXIyLCBTaW1wbGVDaGFuZ2VzLCBPbkNoYW5nZXMsIE9uSW5pdCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICAgIHNlbGVjdG9yOiBcIlthcHBTcGlubmVyQnV0dG9uXVwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Bpbm5lckJ1dHRvbkRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICAgIEBJbnB1dChcImFwcFNwaW5uZXJCdXR0b25cIikgbG9hZGluZzogYm9vbGVhbjtcclxuICAgIEBJbnB1dChcInNwaW5uZXJCdXR0b25UZXh0XCIpIHNwaW5uZXJCdXR0b25UZXh0OiBzdHJpbmc7XHJcbiAgICBjaGlsZDogSFRNTERpdkVsZW1lbnQ7XHJcbiAgICBidXR0b246IGFueTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZiwgXHJcbiAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgIHRoaXMuY2hpbGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge31cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XHJcbiAgICAgICAgaWYgKGNoYW5nZXNbJ3NwaW5uZXJCdXR0b25UZXh0J10gJiYgY2hhbmdlc1snc3Bpbm5lckJ1dHRvblRleHQnXS5jdXJyZW50VmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5idXR0b24uaW5uZXJIVE1MID0gdGhpcy5zcGlubmVyQnV0dG9uVGV4dDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNoYW5nZXNbJ2xvYWRpbmcnXSAmJiBjaGFuZ2VzWydsb2FkaW5nJ10uY3VycmVudFZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uLmlubmVySFRNTCA9IFwiXCI7XHJcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uLnNldEF0dHJpYnV0ZShcImRpc2FibGVkXCIsIFwidHJ1ZVwiKTtcclxuICAgICAgICAgICAgdGhpcy5jaGlsZC5jbGFzc0xpc3QuYWRkKFwic3Bpbm5lci1mb3ItYnV0dG9uLWRpcmVjdGl2ZVwiKTtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hcHBlbmRDaGlsZCh0aGlzLmJ1dHRvbiwgdGhpcy5jaGlsZCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5jaGlsZC5jbGFzc0xpc3QucmVtb3ZlKFwic3Bpbm5lci1mb3ItYnV0dG9uLWRpcmVjdGl2ZVwiKTtcclxuICAgICAgICAgICAgdGhpcy5idXR0b24ucmVtb3ZlQXR0cmlidXRlKFwiZGlzYWJsZWRcIik7XHJcbiAgICAgICAgICAgIHRoaXMuYnV0dG9uLmlubmVySFRNTCA9IHRoaXMuc3Bpbm5lckJ1dHRvblRleHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,18 @@
1
+ export class AuthenticationData {
2
+ constructor(Username, Password) {
3
+ this.Username = Username;
4
+ this.Password = Password;
5
+ }
6
+ }
7
+ export class UserPoolInformation {
8
+ constructor(UserPoolId, ClientId) {
9
+ this.UserPoolId = UserPoolId;
10
+ this.ClientId = ClientId;
11
+ }
12
+ }
13
+ export class UsernameInfo {
14
+ constructor(object) {
15
+ this.isUsernameAvailable = object.isUsernameAvailable;
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29nbml0by1saWIvc3JjL2xpYi9tb2RlbHMvYXV0aC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLFlBQVksUUFBZ0IsRUFBRSxRQUFnQjtRQUMxQyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUM3QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sbUJBQW1CO0lBRzlCLFlBQVksVUFBa0IsRUFBRSxRQUFnQjtRQUM1QyxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUM3QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sWUFBWTtJQUV2QixZQUFZLE1BQXdDO1FBQ2hELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLENBQUM7SUFDMUQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uRGF0YSB7XHJcbiAgVXNlcm5hbWU6IHN0cmluZztcclxuICBQYXNzd29yZDogc3RyaW5nO1xyXG4gIGNvbnN0cnVjdG9yKFVzZXJuYW1lOiBzdHJpbmcsIFBhc3N3b3JkOiBzdHJpbmcpIHtcclxuICAgICAgdGhpcy5Vc2VybmFtZSA9IFVzZXJuYW1lO1xyXG4gICAgICB0aGlzLlBhc3N3b3JkID0gUGFzc3dvcmQ7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgVXNlclBvb2xJbmZvcm1hdGlvbiB7XHJcbiAgVXNlclBvb2xJZDogc3RyaW5nO1xyXG4gIENsaWVudElkOiBzdHJpbmc7XHJcbiAgY29uc3RydWN0b3IoVXNlclBvb2xJZDogc3RyaW5nLCBDbGllbnRJZDogc3RyaW5nKSB7XHJcbiAgICAgIHRoaXMuVXNlclBvb2xJZCA9IFVzZXJQb29sSWQ7XHJcbiAgICAgIHRoaXMuQ2xpZW50SWQgPSBDbGllbnRJZDtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBVc2VybmFtZUluZm8ge1xyXG4gIGlzVXNlcm5hbWVBdmFpbGFibGU6IGJvb2xlYW47XHJcbiAgY29uc3RydWN0b3Iob2JqZWN0OiB7IGlzVXNlcm5hbWVBdmFpbGFibGU6IGJvb2xlYW4gfSkge1xyXG4gICAgICB0aGlzLmlzVXNlcm5hbWVBdmFpbGFibGUgPSBvYmplY3QuaXNVc2VybmFtZUF2YWlsYWJsZTtcclxuICB9XHJcbn0iXX0=
@@ -0,0 +1,30 @@
1
+ import { Inject, Injectable } from "@angular/core";
2
+ import { ACL_SERVICE_TOKEN } from '../config/acl-service.token';
3
+ import * as i0 from "@angular/core";
4
+ export class AnnaLibAclService {
5
+ constructor(consumingProjectAclService) {
6
+ this.consumingProjectAclService = consumingProjectAclService;
7
+ }
8
+ isUserAuthorisedToAccessPage(url) {
9
+ let privilegeName = this.consumingProjectAclService.urlToCognitoPrivilegeMap[url];
10
+ return this.userGroupsInCognitoJWT.includes(privilegeName);
11
+ }
12
+ isUserAuthorisedToAccessElement(privilege) {
13
+ return this.userGroupsInCognitoJWT.includes(privilege);
14
+ }
15
+ isUserAuthoriseToAcessManageUser() {
16
+ return this.consumingProjectAclService.isUserAuthoriseToAcessManageUser();
17
+ }
18
+ }
19
+ AnnaLibAclService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLibAclService, deps: [{ token: ACL_SERVICE_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
20
+ AnnaLibAclService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLibAclService, providedIn: "root" });
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLibAclService, decorators: [{
22
+ type: Injectable,
23
+ args: [{
24
+ providedIn: "root",
25
+ }]
26
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
27
+ type: Inject,
28
+ args: [ACL_SERVICE_TOKEN]
29
+ }] }]; } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvZ25pdG8tbGliL3NyYy9saWIvc2VydmljZXMvYWNsLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFlLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7O0FBSzdFLE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsWUFBOEMsMEJBQXVDO1FBQXZDLCtCQUEwQixHQUExQiwwQkFBMEIsQ0FBYTtJQUFHLENBQUM7SUFHekYsNEJBQTRCLENBQUMsR0FBVztRQUNwQyxJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsd0JBQXdCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEYsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQy9ELENBQUM7SUFFRCwrQkFBK0IsQ0FBQyxTQUFpQjtRQUM3QyxPQUFPLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVELGdDQUFnQztRQUM5QixPQUFPLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxnQ0FBZ0MsRUFBRSxDQUFDO0lBQzVFLENBQUM7OzhHQWZRLGlCQUFpQixrQkFDTixpQkFBaUI7a0hBRDVCLGlCQUFpQixjQUZkLE1BQU07MkZBRVQsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBRWdCLE1BQU07MkJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgSUFjbFNlcnZpY2UsIEFDTF9TRVJWSUNFX1RPS0VOIH0gZnJvbSAnLi4vY29uZmlnL2FjbC1zZXJ2aWNlLnRva2VuJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5uYUxpYkFjbFNlcnZpY2Uge1xyXG4gICAgY29uc3RydWN0b3IoQEluamVjdChBQ0xfU0VSVklDRV9UT0tFTikgcHVibGljIGNvbnN1bWluZ1Byb2plY3RBY2xTZXJ2aWNlOiBJQWNsU2VydmljZSkge31cclxuXHJcbiAgICB1c2VyR3JvdXBzSW5Db2duaXRvSldUOiBzdHJpbmdbXTtcclxuICAgIGlzVXNlckF1dGhvcmlzZWRUb0FjY2Vzc1BhZ2UodXJsOiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgICAgICBsZXQgcHJpdmlsZWdlTmFtZSA9IHRoaXMuY29uc3VtaW5nUHJvamVjdEFjbFNlcnZpY2UudXJsVG9Db2duaXRvUHJpdmlsZWdlTWFwW3VybF07XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudXNlckdyb3Vwc0luQ29nbml0b0pXVC5pbmNsdWRlcyhwcml2aWxlZ2VOYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICBpc1VzZXJBdXRob3Jpc2VkVG9BY2Nlc3NFbGVtZW50KHByaXZpbGVnZTogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudXNlckdyb3Vwc0luQ29nbml0b0pXVC5pbmNsdWRlcyhwcml2aWxlZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIGlzVXNlckF1dGhvcmlzZVRvQWNlc3NNYW5hZ2VVc2VyKCk6IGJvb2xlYW4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5jb25zdW1pbmdQcm9qZWN0QWNsU2VydmljZS5pc1VzZXJBdXRob3Jpc2VUb0FjZXNzTWFuYWdlVXNlcigpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=
@@ -0,0 +1,228 @@
1
+ import { LoginConstant } from "../constants/loginConstant";
2
+ import { Inject, Injectable } from "@angular/core";
3
+ import { Router } from "@angular/router";
4
+ import { CognitoUserPool, CognitoUser, AuthenticationDetails } from "amazon-cognito-identity-js";
5
+ import { AuthenticationData, UserPoolInformation } from "../models/auth.model";
6
+ import { AnnaLibAclService } from './acl.service';
7
+ import { LibraryConfig } from '../config/library.config';
8
+ import { AUTH_SERVICE_TOKEN } from '../config/auth-service.token';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "@angular/router";
11
+ import * as i2 from "./acl.service";
12
+ import * as i3 from "../config/library.config";
13
+ export class AnnaLibAuthService {
14
+ constructor(router, aclService, libraryConfig, consumingProjectAuthService) {
15
+ this.router = router;
16
+ this.aclService = aclService;
17
+ this.libraryConfig = libraryConfig;
18
+ this.consumingProjectAuthService = consumingProjectAuthService;
19
+ this.noOfAttempts = 0;
20
+ this.sessionLocked = false;
21
+ if (!consumingProjectAuthService) {
22
+ throw new Error('You must provide a authService');
23
+ }
24
+ }
25
+ ngOnInit() { }
26
+ getPublicIp() {
27
+ this.consumingProjectAuthService.getPublicIp();
28
+ }
29
+ isUsernameAvailable(username) {
30
+ this.consumingProjectAuthService.isUsernameAvailable(username);
31
+ }
32
+ navigateBasedOnUserRole(loginUserData) {
33
+ this.consumingProjectAuthService.navigateBasedOnUserRole(loginUserData);
34
+ }
35
+ ;
36
+ onSuccessfulAuthenticatingUser(result) {
37
+ this.consumingProjectAuthService.onSuccessfulAuthenticatingUser(result);
38
+ }
39
+ /***
40
+ 1. takes user pool data (userPool ID and client ID)
41
+ 2. if current user is null then it means user already logged out then simply return Promise<false>
42
+ 3. if current user present check if token is valid for it.
43
+ */
44
+ isUserLoggedIn() {
45
+ let currentUser = this.getCurrentUserDetails();
46
+ if (currentUser) {
47
+ return new Promise((resolve, reject) => {
48
+ currentUser && currentUser.getSession((error, token) => {
49
+ if (token) {
50
+ this.getAllCognitoTokenAndGroups(token);
51
+ resolve(true);
52
+ }
53
+ else {
54
+ this.sessionTimeout();
55
+ resolve(false);
56
+ }
57
+ });
58
+ });
59
+ }
60
+ else {
61
+ return new Promise((resolve) => {
62
+ clearInterval(this.accessTokenTimerId);
63
+ resolve(false);
64
+ });
65
+ }
66
+ }
67
+ sessionTimeout() {
68
+ localStorage.clear();
69
+ clearInterval(this.accessTokenTimerId);
70
+ this.router.navigate([LoginConstant.loginPageUrl]);
71
+ }
72
+ refreshAccessToken() {
73
+ let currentUser = this.getCurrentUserDetails();
74
+ let accessTokenExpiration = localStorage.getItem("accessTokenExpiration");
75
+ let expTime = accessTokenExpiration ? parseInt(accessTokenExpiration) : 0;
76
+ this.accessTokenTimerId = setInterval(() => {
77
+ let counter = 1000;
78
+ let delayFunction = setTimeout(() => {
79
+ currentUser && currentUser.getSession((error, token) => {
80
+ if (token) {
81
+ this.getAllCognitoTokenAndGroups(token);
82
+ let newExpTime = this.computeTokenExpiration(this.IdToken);
83
+ if (newExpTime <= 0) {
84
+ newExpTime = 1000;
85
+ counter = 0;
86
+ if (delayFunction) {
87
+ clearInterval(delayFunction);
88
+ }
89
+ }
90
+ expTime = newExpTime;
91
+ localStorage.setItem("accessTokenExpiration", newExpTime.toString());
92
+ clearInterval(this.accessTokenTimerId);
93
+ this.refreshAccessToken();
94
+ }
95
+ else if (error.code === "NotAuthorizedException") {
96
+ this.sessionTimeout();
97
+ }
98
+ });
99
+ }, counter);
100
+ }, expTime);
101
+ }
102
+ computeTokenExpiration(token) {
103
+ let currentTime = Math.floor(Date.now() / 1000);
104
+ let tokenTime = token.payload.exp;
105
+ let expTime = (tokenTime - currentTime) * 1000;
106
+ return expTime;
107
+ }
108
+ getCurrentUserDetails() {
109
+ let poolData = new UserPoolInformation(this.libraryConfig.cognito.userPoolId, this.libraryConfig.cognito.clientId);
110
+ let userPool = new CognitoUserPool(poolData);
111
+ return userPool.getCurrentUser();
112
+ }
113
+ getCognitoUserDetails(email) {
114
+ this.poolData = new UserPoolInformation(this.libraryConfig.cognito.userPoolId, this.libraryConfig.cognito.clientId);
115
+ this.userPool = new CognitoUserPool(this.poolData);
116
+ let userData = {
117
+ Username: email,
118
+ Pool: this.userPool,
119
+ };
120
+ let cognitoUser = new CognitoUser(userData);
121
+ return cognitoUser;
122
+ }
123
+ authenticate(email, password) {
124
+ this.loginErrorMessage = null;
125
+ let authData = new AuthenticationData(email, password);
126
+ this.authenticationDetails = new AuthenticationDetails(authData);
127
+ this.cognitoUser = this.getCognitoUserDetails(email);
128
+ this.CognitoAuthentication(this.authenticationDetails);
129
+ }
130
+ CognitoAuthentication(authenticationDetails) {
131
+ this.cognitoUser.authenticateUser(authenticationDetails, {
132
+ onSuccess: async (result) => {
133
+ this.getAllCognitoTokenAndGroups(result);
134
+ await this.onSuccessfulAuthenticatingUser(result);
135
+ },
136
+ onFailure: (err) => {
137
+ this.consumingProjectAuthService.isLoggingIn = false;
138
+ if (err.message === "Password attempts exceeded") {
139
+ this.loginErrorMessage = LoginConstant.attemptLimitExceeded;
140
+ }
141
+ else {
142
+ this.loginErrorMessage = LoginConstant.userNamePasswordIncorrect;
143
+ }
144
+ },
145
+ newPasswordRequired: (data) => {
146
+ this.consumingProjectAuthService.isLoggingIn = false;
147
+ this.userAttribute = data;
148
+ this.router.navigate([LoginConstant.setNewPasswordUrl]);
149
+ },
150
+ });
151
+ }
152
+ setNewPassword(newPassword) {
153
+ delete this.userAttribute.email_verified;
154
+ delete this.userAttribute.phone_number_verified;
155
+ this.cognitoUser.completeNewPasswordChallenge(newPassword, this.userAttribute, {
156
+ onSuccess: (result) => {
157
+ this.router.navigate([LoginConstant.loginPageUrl]);
158
+ },
159
+ onFailure: (error) => {
160
+ this.setNewPasswordErrorMessage = LoginConstant.sessionExpired;
161
+ this.setNewPasswordButtonMessage = LoginConstant.loginAgain;
162
+ },
163
+ });
164
+ }
165
+ onForgotPasswordGenerateOTP(email) {
166
+ this.userName = email;
167
+ this.cognitoUser = this.getCognitoUserDetails(email);
168
+ this.cognitoUser.forgotPassword({
169
+ onSuccess: (result) => {
170
+ this.verifyAndSetNewPasswordMessage =
171
+ LoginConstant.verifyAndSetNewPasswordMessage +
172
+ result.CodeDeliveryDetails.Destination +
173
+ LoginConstant.pleaseEnterItBelow;
174
+ this.router.navigate([LoginConstant.verifyAndSetNewPasswordUrl]);
175
+ },
176
+ onFailure: (err) => { },
177
+ });
178
+ }
179
+ verifyCode(verificationCode, newPassword) {
180
+ this.cognitoUser.confirmPassword(verificationCode, newPassword, {
181
+ onFailure: (error) => {
182
+ this.noOfAttempts = this.noOfAttempts + 1;
183
+ this.verifyAndSetNewPasswordErrorMessage = this.forgotPasswordError(error, this.noOfAttempts);
184
+ },
185
+ onSuccess: () => {
186
+ this.router.navigate([LoginConstant.loginPageUrl]);
187
+ },
188
+ });
189
+ }
190
+ forgotPasswordError(err, noOfAttempts) {
191
+ let errorMessage;
192
+ switch (err.code) {
193
+ case "LimitExceededException":
194
+ this.sessionLocked = true;
195
+ errorMessage = LoginConstant.attemptLimitExceeded;
196
+ break;
197
+ case "ExpiredCodeException":
198
+ errorMessage = LoginConstant.sessionExpired;
199
+ this.verifyAndSetNewPasswordButton = LoginConstant.regenerateOtp;
200
+ break;
201
+ default:
202
+ errorMessage = LoginConstant.attempt + " " + noOfAttempts + LoginConstant.attemptMessage;
203
+ }
204
+ return errorMessage;
205
+ }
206
+ getAllCognitoTokenAndGroups(token) {
207
+ this.accessToken = token.getAccessToken().getJwtToken();
208
+ this.IdToken = token.getIdToken();
209
+ if ("cognito:groups" in token.getAccessToken().payload) {
210
+ this.aclService.userGroupsInCognitoJWT = token.getAccessToken().payload["cognito:groups"];
211
+ }
212
+ else {
213
+ this.aclService.userGroupsInCognitoJWT = [];
214
+ }
215
+ }
216
+ }
217
+ AnnaLibAuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLibAuthService, deps: [{ token: i1.Router }, { token: i2.AnnaLibAclService }, { token: i3.LibraryConfig }, { token: AUTH_SERVICE_TOKEN }], target: i0.ɵɵFactoryTarget.Injectable });
218
+ AnnaLibAuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLibAuthService, providedIn: "root" });
219
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLibAuthService, decorators: [{
220
+ type: Injectable,
221
+ args: [{
222
+ providedIn: "root",
223
+ }]
224
+ }], ctorParameters: function () { return [{ type: i1.Router }, { type: i2.AnnaLibAclService }, { type: i3.LibraryConfig }, { type: undefined, decorators: [{
225
+ type: Inject,
226
+ args: [AUTH_SERVICE_TOKEN]
227
+ }] }]; } });
228
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5uYS1jb2duaXRvLWxpYi9zcmMvbGliL3NlcnZpY2VzL2F1dGguc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDM0QsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLHFCQUFxQixFQUFzQixNQUFNLDRCQUE0QixDQUFDO0FBQ3JILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFnQixrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7OztBQU1oRixNQUFNLE9BQU8sa0JBQWtCO0lBb0IzQixZQUNZLE1BQWMsRUFDZixVQUE2QixFQUM3QixhQUE0QixFQUNBLDJCQUF5QztRQUhwRSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2YsZUFBVSxHQUFWLFVBQVUsQ0FBbUI7UUFDN0Isa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDQSxnQ0FBMkIsR0FBM0IsMkJBQTJCLENBQWM7UUFWaEYsaUJBQVksR0FBRyxDQUFDLENBQUM7UUFDakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFVaEIsSUFBRyxDQUFDLDJCQUEyQixFQUFFO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztTQUNuRDtJQUNILENBQUM7SUFFTCxRQUFRLEtBQUks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b3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dpbkNvbnN0YW50IH0gZnJvbSBcIi4uL2NvbnN0YW50cy9sb2dpbkNvbnN0YW50XCI7XHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgQ29nbml0b1VzZXJQb29sLCBDb2duaXRvVXNlciwgQXV0aGVudGljYXRpb25EZXRhaWxzLCBDb2duaXRvVXNlclNlc3Npb24gfSBmcm9tIFwiYW1hem9uLWNvZ25pdG8taWRlbnRpdHktanNcIjtcclxuaW1wb3J0IHsgQXV0aGVudGljYXRpb25EYXRhLCBVc2VyUG9vbEluZm9ybWF0aW9uIH0gZnJvbSBcIi4uL21vZGVscy9hdXRoLm1vZGVsXCI7XHJcbmltcG9ydCB7IEFubmFMaWJBY2xTZXJ2aWNlIH0gZnJvbSAnLi9hY2wuc2VydmljZSc7XHJcbmltcG9ydCB7IExpYnJhcnlDb25maWcgfSBmcm9tICcuLi9jb25maWcvbGlicmFyeS5jb25maWcnO1xyXG5pbXBvcnQgeyBJQXV0aFNlcnZpY2UsIEFVVEhfU0VSVklDRV9UT0tFTiB9IGZyb20gJy4uL2NvbmZpZy9hdXRoLXNlcnZpY2UudG9rZW4nO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQW5uYUxpYkF1dGhTZXJ2aWNlICB7XHJcbiAgICBwb29sRGF0YTogVXNlclBvb2xJbmZvcm1hdGlvbjtcclxuICAgIHVzZXJQb29sOiBDb2duaXRvVXNlclBvb2w7XHJcbiAgICBjb2duaXRvVXNlcjogQ29nbml0b1VzZXI7XHJcbiAgICBhdXRoZW50aWNhdGlvbkRldGFpbHM6IEF1dGhlbnRpY2F0aW9uRGV0YWlscztcclxuICAgIHRva2VuVmFsaWQ6IGJvb2xlYW47XHJcbiAgICBhY2Nlc3NUb2tlbjogc3RyaW5nO1xyXG4gICAgdXNlckF0dHJpYnV0ZTogYW55O1xyXG4gICAgbG9naW5FcnJvck1lc3NhZ2U6IHN0cmluZyB8IG51bGw7XHJcbiAgICBzZXROZXdQYXNzd29yZEVycm9yTWVzc2FnZTogc3RyaW5nO1xyXG4gICAgc2V0TmV3UGFzc3dvcmRCdXR0b25NZXNzYWdlOiBzdHJpbmc7XHJcbiAgICB2ZXJpZnlBbmRTZXROZXdQYXNzd29yZEVycm9yTWVzc2FnZTogc3RyaW5nO1xyXG4gICAgdmVyaWZ5QW5kU2V0TmV3UGFzc3dvcmRNZXNzYWdlOiBzdHJpbmc7XHJcbiAgICB2ZXJpZnlBbmRTZXROZXdQYXNzd29yZEJ1dHRvbjogc3RyaW5nO1xyXG4gICAgbm9PZkF0dGVtcHRzID0gMDtcclxuICAgIHNlc3Npb25Mb2NrZWQgPSBmYWxzZTtcclxuICAgIHVzZXJOYW1lOiBhbnk7XHJcbiAgICBhY2Nlc3NUb2tlblRpbWVySWQ6IGFueTtcclxuICAgIElkVG9rZW46IGFueTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgICAgIHB1YmxpYyBhY2xTZXJ2aWNlOiBBbm5hTGliQWNsU2VydmljZSxcclxuICAgICAgICBwdWJsaWMgbGlicmFyeUNvbmZpZzogTGlicmFyeUNvbmZpZyxcclxuICAgICAgICBASW5qZWN0KEFVVEhfU0VSVklDRV9UT0tFTikgcHVibGljIGNvbnN1bWluZ1Byb2plY3RBdXRoU2VydmljZTogSUF1dGhTZXJ2aWNlKSB7XHJcbiAgICAgICAgICBpZighY29uc3VtaW5nUHJvamVjdEF1dGhTZXJ2aWNlKSB7XHJcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignWW91IG11c3QgcHJvdmlkZSBhIGF1dGhTZXJ2aWNlJyk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCkge31cclxuXHJcbiAgICBnZXRQdWJsaWNJcCgpOiBhbnkge1xyXG4gICAgICB0aGlzLmNvbnN1bWluZ1Byb2plY3RBdXRoU2VydmljZS5nZXRQdWJsaWNJcCgpO1xyXG4gICAgfVxyXG4gICAgaXNVc2VybmFtZUF2YWlsYWJsZSh1c2VybmFtZTogc3RyaW5nKTogYW55IHtcclxuICAgICAgdGhpcy5jb25zdW1pbmdQcm9qZWN0QXV0aFNlcnZpY2UuaXNVc2VybmFtZUF2YWlsYWJsZSh1c2VybmFtZSk7XHJcbiAgICB9XHJcbiAgICBuYXZpZ2F0ZUJhc2VkT25Vc2VyUm9sZShsb2dpblVzZXJEYXRhOiBhbnkpe1xyXG4gICAgICB0aGlzLmNvbnN1bWluZ1Byb2plY3RBdXRoU2VydmljZS5uYXZpZ2F0ZUJhc2VkT25Vc2VyUm9sZShsb2dpblVzZXJEYXRhKTtcclxuICAgIH07XHJcbiAgICBvblN1Y2Nlc3NmdWxBdXRoZW50aWNhdGluZ1VzZXIocmVzdWx0OiBhbnkpIHsgXHJcbiAgICAgIHRoaXMuY29uc3VtaW5nUHJvamVjdEF1dGhTZXJ2aWNlLm9uU3VjY2Vzc2Z1bEF1dGhlbnRpY2F0aW5nVXNlcihyZXN1bHQpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKipcclxuICAgMS4gdGFrZXMgdXNlciBwb29sIGRhdGEgKHVzZXJQb29sIElEIGFuZCBjbGllbnQgSUQpXHJcbiAgIDIuIGlmIGN1cnJlbnQgdXNlciBpcyBudWxsIHRoZW4gaXQgbWVhbnMgdXNlciBhbHJlYWR5IGxvZ2dlZCBvdXQgdGhlbiBzaW1wbHkgcmV0dXJuIFByb21pc2U8ZmFsc2U+XHJcbiAgIDMuIGlmIGN1cnJlbnQgdXNlciBwcmVzZW50IGNoZWNrIGlmIHRva2VuIGlzIHZhbGlkIGZvciBpdC5cclxuICovXHJcbiAgICBpc1VzZXJMb2dnZWRJbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgICAgICBsZXQgY3VycmVudFVzZXIgPSB0aGlzLmdldEN1cnJlbnRVc2VyRGV0YWlscygpO1xyXG4gICAgICAgIGlmIChjdXJyZW50VXNlcikge1xyXG4gICAgICAgICAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICAgIGN1cnJlbnRVc2VyICYmIGN1cnJlbnRVc2VyLmdldFNlc3Npb24oKGVycm9yOiBFcnJvciwgdG9rZW46IENvZ25pdG9Vc2VyU2Vzc2lvbiB8IG51bGwpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodG9rZW4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRBbGxDb2duaXRvVG9rZW5BbmRHcm91cHModG9rZW4pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc2Vzc2lvblRpbWVvdXQoKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzb2x2ZShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmFjY2Vzc1Rva2VuVGltZXJJZCk7XHJcbiAgICAgICAgICAgICAgICByZXNvbHZlKGZhbHNlKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHNlc3Npb25UaW1lb3V0KCkge1xyXG4gICAgICAgIGxvY2FsU3RvcmFnZS5jbGVhcigpO1xyXG4gICAgICAgIGNsZWFySW50ZXJ2YWwodGhpcy5hY2Nlc3NUb2tlblRpbWVySWQpO1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtMb2dpbkNvbnN0YW50LmxvZ2luUGFnZVVybF0pO1xyXG4gICAgfVxyXG5cclxuICAgIHJlZnJlc2hBY2Nlc3NUb2tlbigpIHtcclxuICAgICAgICBsZXQgY3VycmVudFVzZXIgPSB0aGlzLmdldEN1cnJlbnRVc2VyRGV0YWlscygpO1xyXG4gICAgICAgIGxldCBhY2Nlc3NUb2tlbkV4cGlyYXRpb24gPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcImFjY2Vzc1Rva2VuRXhwaXJhdGlvblwiKTtcclxuICAgICAgICBsZXQgZXhwVGltZSA9IGFjY2Vzc1Rva2VuRXhwaXJhdGlvbiA/IHBhcnNlSW50KGFjY2Vzc1Rva2VuRXhwaXJhdGlvbikgOiAwO1xyXG4gICAgICAgIHRoaXMuYWNjZXNzVG9rZW5UaW1lcklkID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xyXG4gICAgICAgICAgICBsZXQgY291bnRlciA9IDEwMDA7XHJcbiAgICAgICAgICAgIGxldCBkZWxheUZ1bmN0aW9uID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgY3VycmVudFVzZXIgJiYgY3VycmVudFVzZXIuZ2V0U2Vzc2lvbigoZXJyb3I6IGFueSwgdG9rZW46IENvZ25pdG9Vc2VyU2Vzc2lvbiB8IG51bGwpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAodG9rZW4pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRBbGxDb2duaXRvVG9rZW5BbmRHcm91cHModG9rZW4pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgbmV3RXhwVGltZSA9IHRoaXMuY29tcHV0ZVRva2VuRXhwaXJhdGlvbih0aGlzLklkVG9rZW4pO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG5ld0V4cFRpbWUgPD0gMCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3RXhwVGltZSA9IDEwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb3VudGVyID0gMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkZWxheUZ1bmN0aW9uKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChkZWxheUZ1bmN0aW9uKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBleHBUaW1lID0gbmV3RXhwVGltZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJhY2Nlc3NUb2tlbkV4cGlyYXRpb25cIiwgbmV3RXhwVGltZS50b1N0cmluZygpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmFjY2Vzc1Rva2VuVGltZXJJZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVmcmVzaEFjY2Vzc1Rva2VuKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChlcnJvci5jb2RlID09PSBcIk5vdEF1dGhvcml6ZWRFeGNlcHRpb25cIikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25UaW1lb3V0KCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0sIGNvdW50ZXIpO1xyXG4gICAgICAgIH0sIGV4cFRpbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbXB1dGVUb2tlbkV4cGlyYXRpb24odG9rZW46IGFueSkge1xyXG4gICAgICAgIGxldCBjdXJyZW50VGltZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApO1xyXG4gICAgICAgIGxldCB0b2tlblRpbWUgPSB0b2tlbi5wYXlsb2FkLmV4cDtcclxuICAgICAgICBsZXQgZXhwVGltZSA9ICh0b2tlblRpbWUgLSBjdXJyZW50VGltZSkgKiAxMDAwO1xyXG4gICAgICAgIHJldHVybiBleHBUaW1lO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBnZXRDdXJyZW50VXNlckRldGFpbHMoKSB7XHJcbiAgICAgICAgbGV0IHBvb2xEYXRhID0gbmV3IFVzZXJQb29sSW5mb3JtYXRpb24odGhpcy5saWJyYXJ5Q29uZmlnLmNvZ25pdG8udXNlclBvb2xJZCwgdGhpcy5saWJyYXJ5Q29uZmlnLmNvZ25pdG8uY2xpZW50SWQpO1xyXG4gICAgICAgIGxldCB1c2VyUG9vbCA9IG5ldyBDb2duaXRvVXNlclBvb2wocG9vbERhdGEpO1xyXG4gICAgICAgIHJldHVybiB1c2VyUG9vbC5nZXRDdXJyZW50VXNlcigpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENvZ25pdG9Vc2VyRGV0YWlscyhlbWFpbDogc3RyaW5nKTogQ29nbml0b1VzZXIge1xyXG4gICAgICAgIHRoaXMucG9vbERhdGEgPSBuZXcgVXNlclBvb2xJbmZvcm1hdGlvbih0aGlzLmxpYnJhcnlDb25maWcuY29nbml0by51c2VyUG9vbElkLCB0aGlzLmxpYnJhcnlDb25maWcuY29nbml0by5jbGllbnRJZCk7XHJcbiAgICAgICAgdGhpcy51c2VyUG9vbCA9IG5ldyBDb2duaXRvVXNlclBvb2wodGhpcy5wb29sRGF0YSk7XHJcblxyXG4gICAgICAgIGxldCB1c2VyRGF0YSA9IHtcclxuICAgICAgICAgICAgVXNlcm5hbWU6IGVtYWlsLFxyXG4gICAgICAgICAgICBQb29sOiB0aGlzLnVzZXJQb29sLFxyXG4gICAgICAgIH07XHJcbiAgICAgICAgbGV0IGNvZ25pdG9Vc2VyID0gbmV3IENvZ25pdG9Vc2VyKHVzZXJEYXRhKTtcclxuICAgICAgICByZXR1cm4gY29nbml0b1VzZXI7XHJcbiAgICB9XHJcblxyXG4gICAgYXV0aGVudGljYXRlKGVtYWlsOiBzdHJpbmcsIHBhc3N3b3JkOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLmxvZ2luRXJyb3JNZXNzYWdlID0gbnVsbDtcclxuICAgICAgICBsZXQgYXV0aERhdGEgPSBuZXcgQXV0aGVudGljYXRpb25EYXRhKGVtYWlsLCBwYXNzd29yZCk7XHJcbiAgICAgICAgdGhpcy5hdXRoZW50aWNhdGlvbkRldGFpbHMgPSBuZXcgQXV0aGVudGljYXRpb25EZXRhaWxzKGF1dGhEYXRhKTtcclxuXHJcbiAgICAgICAgdGhpcy5jb2duaXRvVXNlciA9IHRoaXMuZ2V0Q29nbml0b1VzZXJEZXRhaWxzKGVtYWlsKTtcclxuICAgICAgICB0aGlzLkNvZ25pdG9BdXRoZW50aWNhdGlvbih0aGlzLmF1dGhlbnRpY2F0aW9uRGV0YWlscyk7XHJcbiAgICB9XHJcblxyXG4gICAgQ29nbml0b0F1dGhlbnRpY2F0aW9uKGF1dGhlbnRpY2F0aW9uRGV0YWlsczogQXV0aGVudGljYXRpb25EZXRhaWxzKSB7XHJcbiAgICAgICAgdGhpcy5jb2duaXRvVXNlci5hdXRoZW50aWNhdGVVc2VyKGF1dGhlbnRpY2F0aW9uRGV0YWlscywge1xyXG4gICAgICAgICAgICBvblN1Y2Nlc3M6IGFzeW5jIChyZXN1bHQpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZ2V0QWxsQ29nbml0b1Rva2VuQW5kR3JvdXBzKHJlc3VsdCk7XHJcbiAgICAgICAgICAgICAgICBhd2FpdCB0aGlzLm9uU3VjY2Vzc2Z1bEF1dGhlbnRpY2F0aW5nVXNlcihyZXN1bHQpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBvbkZhaWx1cmU6IChlcnIpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuY29uc3VtaW5nUHJvamVjdEF1dGhTZXJ2aWNlLmlzTG9nZ2luZ0luID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICBpZiAoZXJyLm1lc3NhZ2UgPT09IFwiUGFzc3dvcmQgYXR0ZW1wdHMgZXhjZWVkZWRcIikge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9naW5FcnJvck1lc3NhZ2UgPSBMb2dpbkNvbnN0YW50LmF0dGVtcHRMaW1pdEV4Y2VlZGVkO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmxvZ2luRXJyb3JNZXNzYWdlID0gTG9naW5Db25zdGFudC51c2VyTmFtZVBhc3N3b3JkSW5jb3JyZWN0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBuZXdQYXNzd29yZFJlcXVpcmVkOiAoZGF0YSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jb25zdW1pbmdQcm9qZWN0QXV0aFNlcnZpY2UuaXNMb2dnaW5nSW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIHRoaXMudXNlckF0dHJpYnV0ZSA9IGRhdGE7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbTG9naW5Db25zdGFudC5zZXROZXdQYXNzd29yZFVybF0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHNldE5ld1Bhc3N3b3JkKG5ld1Bhc3N3b3JkOiBhbnkpIHtcclxuICAgICAgICBkZWxldGUgdGhpcy51c2VyQXR0cmlidXRlLmVtYWlsX3ZlcmlmaWVkO1xyXG4gICAgICAgIGRlbGV0ZSB0aGlzLnVzZXJBdHRyaWJ1dGUucGhvbmVfbnVtYmVyX3ZlcmlmaWVkO1xyXG4gICAgICAgIHRoaXMuY29nbml0b1VzZXIuY29tcGxldGVOZXdQYXNzd29yZENoYWxsZW5nZShuZXdQYXNzd29yZCwgdGhpcy51c2VyQXR0cmlidXRlLCB7XHJcbiAgICAgICAgICAgIG9uU3VjY2VzczogKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW0xvZ2luQ29uc3RhbnQubG9naW5QYWdlVXJsXSk7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIG9uRmFpbHVyZTogKGVycm9yKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNldE5ld1Bhc3N3b3JkRXJyb3JNZXNzYWdlID0gTG9naW5Db25zdGFudC5zZXNzaW9uRXhwaXJlZDtcclxuICAgICAgICAgICAgICAgIHRoaXMuc2V0TmV3UGFzc3dvcmRCdXR0b25NZXNzYWdlID0gTG9naW5Db25zdGFudC5sb2dpbkFnYWluO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIG9uRm9yZ290UGFzc3dvcmRHZW5lcmF0ZU9UUChlbWFpbDogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy51c2VyTmFtZSA9IGVtYWlsO1xyXG4gICAgICAgIHRoaXMuY29nbml0b1VzZXIgPSB0aGlzLmdldENvZ25pdG9Vc2VyRGV0YWlscyhlbWFpbCk7XHJcbiAgICAgICAgdGhpcy5jb2duaXRvVXNlci5mb3Jnb3RQYXNzd29yZCh7XHJcbiAgICAgICAgICAgIG9uU3VjY2VzczogKHJlc3VsdCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy52ZXJpZnlBbmRTZXROZXdQYXNzd29yZE1lc3NhZ2UgPVxyXG4gICAgICAgICAgICAgICAgICAgIExvZ2luQ29uc3RhbnQudmVyaWZ5QW5kU2V0TmV3UGFzc3dvcmRNZXNzYWdlICtcclxuICAgICAgICAgICAgICAgICAgICByZXN1bHQuQ29kZURlbGl2ZXJ5RGV0YWlscy5EZXN0aW5hdGlvbiArXHJcbiAgICAgICAgICAgICAgICAgICAgTG9naW5Db25zdGFudC5wbGVhc2VFbnRlckl0QmVsb3c7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbTG9naW5Db25zdGFudC52ZXJpZnlBbmRTZXROZXdQYXNzd29yZFVybF0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBvbkZhaWx1cmU6IChlcnIpID0+IHt9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHZlcmlmeUNvZGUodmVyaWZpY2F0aW9uQ29kZTogc3RyaW5nLCBuZXdQYXNzd29yZDogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5jb2duaXRvVXNlci5jb25maXJtUGFzc3dvcmQodmVyaWZpY2F0aW9uQ29kZSwgbmV3UGFzc3dvcmQsIHtcclxuICAgICAgICAgICAgb25GYWlsdXJlOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMubm9PZkF0dGVtcHRzID0gdGhpcy5ub09mQXR0ZW1wdHMgKyAxO1xyXG4gICAgICAgICAgICAgICAgdGhpcy52ZXJpZnlBbmRTZXROZXdQYXNzd29yZEVycm9yTWVzc2FnZSA9IHRoaXMuZm9yZ290UGFzc3dvcmRFcnJvcihlcnJvciwgdGhpcy5ub09mQXR0ZW1wdHMpO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBvblN1Y2Nlc3M6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtMb2dpbkNvbnN0YW50LmxvZ2luUGFnZVVybF0pO1xyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGZvcmdvdFBhc3N3b3JkRXJyb3IoZXJyOiBhbnksIG5vT2ZBdHRlbXB0czogbnVtYmVyKSB7XHJcbiAgICAgICAgbGV0IGVycm9yTWVzc2FnZTtcclxuICAgICAgICBzd2l0Y2ggKGVyci5jb2RlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgXCJMaW1pdEV4Y2VlZGVkRXhjZXB0aW9uXCI6XHJcbiAgICAgICAgICAgICAgICB0aGlzLnNlc3Npb25Mb2NrZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgZXJyb3JNZXNzYWdlID0gTG9naW5Db25zdGFudC5hdHRlbXB0TGltaXRFeGNlZWRlZDtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlIFwiRXhwaXJlZENvZGVFeGNlcHRpb25cIjpcclxuICAgICAgICAgICAgICAgIGVycm9yTWVzc2FnZSA9IExvZ2luQ29uc3RhbnQuc2Vzc2lvbkV4cGlyZWQ7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnZlcmlmeUFuZFNldE5ld1Bhc3N3b3JkQnV0dG9uID0gTG9naW5Db25zdGFudC5yZWdlbmVyYXRlT3RwO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgICAgICBlcnJvck1lc3NhZ2UgPSBMb2dpbkNvbnN0YW50LmF0dGVtcHQgKyBcIiBcIiArIG5vT2ZBdHRlbXB0cyArIExvZ2luQ29uc3RhbnQuYXR0ZW1wdE1lc3NhZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBlcnJvck1lc3NhZ2U7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QWxsQ29nbml0b1Rva2VuQW5kR3JvdXBzKHRva2VuOiBDb2duaXRvVXNlclNlc3Npb24pIHtcclxuICAgICAgdGhpcy5hY2Nlc3NUb2tlbiA9IHRva2VuLmdldEFjY2Vzc1Rva2VuKCkuZ2V0Snd0VG9rZW4oKTtcclxuICAgICAgdGhpcy5JZFRva2VuID0gdG9rZW4uZ2V0SWRUb2tlbigpO1xyXG4gICAgICBpZiAoXCJjb2duaXRvOmdyb3Vwc1wiIGluIHRva2VuLmdldEFjY2Vzc1Rva2VuKCkucGF5bG9hZCkge1xyXG4gICAgICAgICAgdGhpcy5hY2xTZXJ2aWNlLnVzZXJHcm91cHNJbkNvZ25pdG9KV1QgPSB0b2tlbi5nZXRBY2Nlc3NUb2tlbigpLnBheWxvYWRbXCJjb2duaXRvOmdyb3Vwc1wiXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMuYWNsU2VydmljZS51c2VyR3JvdXBzSW5Db2duaXRvSldUID0gW107XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG5cclxufVxyXG5cclxuIl19
@@ -0,0 +1,21 @@
1
+ /*
2
+ * Public API Surface of anna-cognito-lib
3
+ */
4
+ export * from './lib/anna-cognito-lib.module';
5
+ //COMPONENTS
6
+ export * from './lib/components/login/login.component';
7
+ export * from './lib/components/forgot-password/forgot-password.component';
8
+ export * from './lib/components/set-new-password/set-new-password.component';
9
+ export * from './lib/components/password-matching/password-matching.component';
10
+ export * from './lib/components/verify-and-set-new-password/verify-and-set-new-password.component';
11
+ //SERVICES
12
+ export * from './lib/services/auth.service';
13
+ export * from './lib/services/acl.service';
14
+ export * from './lib/config/auth-service.token';
15
+ export * from './lib/config/acl-service.token';
16
+ export * from './lib/config/library.config';
17
+ //DIRECTIVES
18
+ export * from './lib/directives/spinner-button';
19
+ //CONSTANTS
20
+ export * from './lib/constants/loginConstant';
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2FubmEtY29nbml0by1saWIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLCtCQUErQixDQUFDO0FBRTlDLGFBQWE7QUFDYixjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNERBQTRELENBQUM7QUFDM0UsY0FBYyw4REFBOEQsQ0FBQztBQUM3RSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsb0ZBQW9GLENBQUM7QUFFbkcsV0FBVztBQUNYLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QyxhQUFhO0FBQ2IsY0FBYyxpQ0FBaUMsQ0FBQztBQUVoRCxZQUFZO0FBQ1osY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBhbm5hLWNvZ25pdG8tbGliXHJcbiAqL1xyXG5cclxuZXhwb3J0ICogZnJvbSAnLi9saWIvYW5uYS1jb2duaXRvLWxpYi5tb2R1bGUnO1xyXG5cclxuLy9DT01QT05FTlRTIFxyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2xvZ2luL2xvZ2luLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvZm9yZ290LXBhc3N3b3JkL2ZvcmdvdC1wYXNzd29yZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3NldC1uZXctcGFzc3dvcmQvc2V0LW5ldy1wYXNzd29yZC5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL3Bhc3N3b3JkLW1hdGNoaW5nL3Bhc3N3b3JkLW1hdGNoaW5nLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvdmVyaWZ5LWFuZC1zZXQtbmV3LXBhc3N3b3JkL3ZlcmlmeS1hbmQtc2V0LW5ldy1wYXNzd29yZC5jb21wb25lbnQnO1xyXG5cclxuLy9TRVJWSUNFUyBcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYXV0aC5zZXJ2aWNlJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYWNsLnNlcnZpY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb25maWcvYXV0aC1zZXJ2aWNlLnRva2VuJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uZmlnL2FjbC1zZXJ2aWNlLnRva2VuJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uZmlnL2xpYnJhcnkuY29uZmlnJztcclxuXHJcbi8vRElSRUNUSVZFUyBcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcy9zcGlubmVyLWJ1dHRvbic7XHJcblxyXG4vL0NPTlNUQU5UUyBcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29uc3RhbnRzL2xvZ2luQ29uc3RhbnQnO1xyXG5cclxuXHJcbiJdfQ==