@mckit/auth 18.0.8 → 18.0.9
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.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
1
|
+
import { Component, EventEmitter, inject, Input, Output } from '@angular/core';
|
|
2
2
|
import { CardModule } from 'primeng/card';
|
|
3
3
|
import { ButtonModule } from 'primeng/button';
|
|
4
4
|
import { IconFieldModule } from 'primeng/iconfield';
|
|
@@ -8,6 +8,7 @@ import { PasswordModule } from 'primeng/password';
|
|
|
8
8
|
import { FormGroup, FormsModule, ReactiveFormsModule, FormControl, Validators } from '@angular/forms';
|
|
9
9
|
import { MessagesModule } from 'primeng/messages';
|
|
10
10
|
import { MessageService } from 'primeng/api';
|
|
11
|
+
import { MCLoaderService } from '@mckit/loader';
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
12
13
|
import * as i1 from "primeng/api";
|
|
13
14
|
import * as i2 from "@angular/forms";
|
|
@@ -27,6 +28,8 @@ export class MCAuthBasicComponent {
|
|
|
27
28
|
password: new FormControl('', Validators.required)
|
|
28
29
|
});
|
|
29
30
|
isSending = false;
|
|
31
|
+
loaderService = inject(MCLoaderService);
|
|
32
|
+
isLoading = this.loaderService.isLoading;
|
|
30
33
|
constructor(messageService) {
|
|
31
34
|
this.messageService = messageService;
|
|
32
35
|
}
|
|
@@ -54,11 +57,11 @@ export class MCAuthBasicComponent {
|
|
|
54
57
|
this.isSending = false;
|
|
55
58
|
}
|
|
56
59
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: MCAuthBasicComponent, deps: [{ token: i1.MessageService }], target: i0.ɵɵFactoryTarget.Component });
|
|
57
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
60
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: MCAuthBasicComponent, isStandalone: true, selector: "mc-auth-basic", inputs: { config: "config" }, outputs: { submit: "submit" }, providers: [MessageService], ngImport: i0, template: "@if(!isLoading()){\n <div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config.title ?? 'Log in'\" [subheader]=\"config.subtitle ?? 'Please enter your details'\" [style]=\"{ width: '500px', 'max-width': '500px' }\">\n\n <div class=\"\" [formGroup]=\"group\">\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config.emailPlaceholder ?? 'Email'\" formControlName=\"email\" />\n </p-iconField>\n\n <br/><br/>\n\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <input type=\"password\" pPassword [placeholder]=\"config.passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" toggleMask=\"true\" formControlName=\"password\" />\n </p-iconField>\n\n <p-messages />\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex gap-3 mt-1\">\n <p-button [label]=\"config.submitButton ?? 'Log in'\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending\" />\n </div>\n </ng-template>\n </p-card>\n </div>\n\n}\n", styles: [".mc-auth-basic-container{display:flex;justify-content:center;min-height:100%;align-items:center}p-iconField input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", 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]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: CardModule }, { kind: "component", type: i4.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "ngmodule", type: IconFieldModule }, { kind: "component", type: i5.IconField, selector: "p-iconField", inputs: ["iconPosition"] }, { kind: "ngmodule", type: InputIconModule }, { kind: "component", type: i6.InputIcon, selector: "p-inputIcon", inputs: ["styleClass"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i7.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: PasswordModule }, { kind: "directive", type: i8.PasswordDirective, selector: "[pPassword]", inputs: ["promptLabel", "weakLabel", "mediumLabel", "strongLabel", "feedback", "showPassword", "variant"] }, { kind: "ngmodule", type: MessagesModule }, { kind: "component", type: i9.Messages, selector: "p-messages", inputs: ["value", "closable", "style", "styleClass", "enableService", "key", "escape", "severity", "showTransitionOptions", "hideTransitionOptions"], outputs: ["valueChange", "onClose"] }] });
|
|
58
61
|
}
|
|
59
62
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: MCAuthBasicComponent, decorators: [{
|
|
60
63
|
type: Component,
|
|
61
|
-
args: [{ selector: 'mc-auth-basic', standalone: true, imports: [FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessagesModule], providers: [MessageService], template: "<div class=\"mc-auth-basic-container\">\n
|
|
64
|
+
args: [{ selector: 'mc-auth-basic', standalone: true, imports: [FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessagesModule], providers: [MessageService], template: "@if(!isLoading()){\n <div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config.title ?? 'Log in'\" [subheader]=\"config.subtitle ?? 'Please enter your details'\" [style]=\"{ width: '500px', 'max-width': '500px' }\">\n\n <div class=\"\" [formGroup]=\"group\">\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config.emailPlaceholder ?? 'Email'\" formControlName=\"email\" />\n </p-iconField>\n\n <br/><br/>\n\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <input type=\"password\" pPassword [placeholder]=\"config.passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" toggleMask=\"true\" formControlName=\"password\" />\n </p-iconField>\n\n <p-messages />\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex gap-3 mt-1\">\n <p-button [label]=\"config.submitButton ?? 'Log in'\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending\" />\n </div>\n </ng-template>\n </p-card>\n </div>\n\n}\n", styles: [".mc-auth-basic-container{display:flex;justify-content:center;min-height:100%;align-items:center}p-iconField input{width:100%}\n"] }]
|
|
62
65
|
}], ctorParameters: () => [{ type: i1.MessageService }], propDecorators: { config: [{
|
|
63
66
|
type: Input
|
|
64
67
|
}], submit: [{
|
|
@@ -75,4 +78,4 @@ export class MCAuthModel {
|
|
|
75
78
|
email;
|
|
76
79
|
password;
|
|
77
80
|
}
|
|
78
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
81
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC1iYXNpYy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tY2tpdC9hdXRoL3NyYy9saWIvcGFnZXMvYXV0aC1iYXNpYy9hdXRoLWJhc2ljLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21ja2l0L2F1dGgvc3JjL2xpYi9wYWdlcy9hdXRoLWJhc2ljL2F1dGgtYmFzaWMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN0RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7OztBQVloRCxNQUFNLE9BQU8sb0JBQW9CO0lBZXJCO0lBZEQsTUFBTSxDQUFxQjtJQUMxQixNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQWUsQ0FBQztJQUVuRCxLQUFLLEdBQUcsSUFBSSxTQUFTLENBQUM7UUFDcEIsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFTLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLFFBQVEsRUFBRSxJQUFJLFdBQVcsQ0FBUyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztLQUMzRCxDQUFDLENBQUM7SUFFSCxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRWxCLGFBQWEsR0FBRyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDeEMsU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDO0lBRXpDLFlBQ1UsY0FBOEI7UUFBOUIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO0lBQ3JDLENBQUM7SUFFSixhQUFhO1FBQ1gsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXJCLElBQUksR0FBRyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7UUFDNUIsR0FBRyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxLQUFLLENBQUM7UUFDM0MsR0FBRyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLLENBQUM7UUFFakQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFlO1FBQ2hDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBZTtRQUM5QixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDeEIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO3VHQS9DVSxvQkFBb0I7MkZBQXBCLG9CQUFvQix5SEFKcEIsQ0FBQyxjQUFjLENBQUMsMEJDbEI3Qixpc0NBNkJBLHdMRFpZLFdBQVcsa2pCQUFFLG1CQUFtQiwrVUFBRSxZQUFZLG9lQUFFLFVBQVUsZ0pBQUUsZUFBZSw0SEFBRSxlQUFlLDBIQUFFLGVBQWUsd0hBQUUsY0FBYyxxTkFBRSxjQUFjOzsyRkFLNUksb0JBQW9CO2tCQVJoQyxTQUFTOytCQUNFLGVBQWUsY0FDYixJQUFJLFdBQ1AsQ0FBQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsY0FBYyxDQUFDLGFBQzdJLENBQUMsY0FBYyxDQUFDO21GQUtsQixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0ksTUFBTTtzQkFBZixNQUFNOztBQWdEVCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLEtBQUssQ0FBVTtJQUNmLFFBQVEsQ0FBVTtJQUVsQixnQkFBZ0IsQ0FBVTtJQUMxQixtQkFBbUIsQ0FBVTtJQUU3QixZQUFZLENBQVU7Q0FDdkI7QUFFRCxNQUFNLE9BQU8sV0FBVztJQUN0QixLQUFLLENBQWU7SUFDcEIsUUFBUSxDQUFlO0NBQ3hCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIGluamVjdCwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2FyZE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvY2FyZCc7XG5pbXBvcnQgeyBCdXR0b25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2J1dHRvbic7XG5pbXBvcnQgeyBJY29uRmllbGRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2ljb25maWVsZCc7XG5pbXBvcnQgeyBJbnB1dEljb25Nb2R1bGUgfSBmcm9tICdwcmltZW5nL2lucHV0aWNvbic7XG5pbXBvcnQgeyBJbnB1dFRleHRNb2R1bGUgfSBmcm9tICdwcmltZW5nL2lucHV0dGV4dCc7XG5pbXBvcnQgeyBQYXNzd29yZE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvcGFzc3dvcmQnO1xuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNZXNzYWdlc01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvbWVzc2FnZXMnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdwcmltZW5nL2FwaSc7XG5pbXBvcnQgeyBNQ0xvYWRlclNlcnZpY2UgfSBmcm9tICdAbWNraXQvbG9hZGVyJztcblxuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21jLWF1dGgtYmFzaWMnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIEJ1dHRvbk1vZHVsZSwgQ2FyZE1vZHVsZSwgSWNvbkZpZWxkTW9kdWxlLCBJbnB1dEljb25Nb2R1bGUsIElucHV0VGV4dE1vZHVsZSwgUGFzc3dvcmRNb2R1bGUsIE1lc3NhZ2VzTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbTWVzc2FnZVNlcnZpY2VdLFxuICB0ZW1wbGF0ZVVybDogJy4vYXV0aC1iYXNpYy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9hdXRoLWJhc2ljLmNvbXBvbmVudC5zY3NzJ1xufSlcbmV4cG9ydCBjbGFzcyBNQ0F1dGhCYXNpY0NvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGNvbmZpZyE6IE1DQXV0aEJhc2ljQ29uZmlnO1xuICBAT3V0cHV0KCkgc3VibWl0ID0gbmV3IEV2ZW50RW1pdHRlcjxNQ0F1dGhNb2RlbD4oKTtcblxuICBncm91cCA9IG5ldyBGb3JtR3JvdXAoe1xuICAgIGVtYWlsOiBuZXcgRm9ybUNvbnRyb2w8c3RyaW5nPignJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMuZW1haWxdKSxcbiAgICBwYXNzd29yZDogbmV3IEZvcm1Db250cm9sPHN0cmluZz4oJycsIFZhbGlkYXRvcnMucmVxdWlyZWQpXG4gIH0pO1xuXG4gIGlzU2VuZGluZyA9IGZhbHNlO1xuXG4gIGxvYWRlclNlcnZpY2UgPSBpbmplY3QoTUNMb2FkZXJTZXJ2aWNlKTtcbiAgaXNMb2FkaW5nID0gdGhpcy5sb2FkZXJTZXJ2aWNlLmlzTG9hZGluZztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxuICApIHt9XG5cbiAgb25DbGlja1N1Ym1pdCgpIHtcbiAgICB0aGlzLmNsZWFyTWVzc2FnZXMoKTtcblxuICAgIGxldCBvYmogPSBuZXcgTUNBdXRoTW9kZWwoKTtcbiAgICBvYmouZW1haWwgPSB0aGlzLmdyb3VwLmdldCgnZW1haWwnKT8udmFsdWU7XG4gICAgb2JqLnBhc3N3b3JkID0gdGhpcy5ncm91cC5nZXQoJ3Bhc3N3b3JkJyk/LnZhbHVlO1xuXG4gICAgdGhpcy5zaG93TG9hZGluZygpO1xuICAgIHRoaXMuc3VibWl0LmVtaXQob2JqKTtcbiAgfVxuXG4gIHNob3dTdWNjZXNzTWVzc2FnZShtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmFkZCh7IHNldmVyaXR5OiAnc3VjY2VzcycsIHN1bW1hcnk6IG1lc3NhZ2V9KTtcbiAgfVxuXG4gIHNob3dFcnJvck1lc3NhZ2UobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgdGhpcy5tZXNzYWdlU2VydmljZS5hZGQoeyBzZXZlcml0eTogJ2Vycm9yJywgc3VtbWFyeTogbWVzc2FnZX0pO1xuICB9XG5cbiAgY2xlYXJNZXNzYWdlcygpIHtcbiAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLmNsZWFyKCk7XG4gIH1cblxuICBzaG93TG9hZGluZygpIHtcbiAgICB0aGlzLmlzU2VuZGluZyA9IHRydWU7XG4gIH1cblxuICBoaWRlTG9hZGluZygpIHtcbiAgICB0aGlzLmlzU2VuZGluZyA9IGZhbHNlO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBNQ0F1dGhCYXNpY0NvbmZpZyB7XG4gIHRpdGxlPzogc3RyaW5nO1xuICBzdWJ0aXRsZT86IHN0cmluZztcblxuICBlbWFpbFBsYWNlaG9sZGVyPzogc3RyaW5nO1xuICBwYXNzd29yZFBsYWNlaG9sZGVyPzogc3RyaW5nO1xuXG4gIHN1Ym1pdEJ1dHRvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIE1DQXV0aE1vZGVsIHtcbiAgZW1haWw/OiBzdHJpbmd8bnVsbDtcbiAgcGFzc3dvcmQ/OiBzdHJpbmd8bnVsbDtcbn1cbiIsIkBpZighaXNMb2FkaW5nKCkpe1xuICA8ZGl2IGNsYXNzPVwibWMtYXV0aC1iYXNpYy1jb250YWluZXJcIj5cbiAgICA8cC1jYXJkIFtoZWFkZXJdPVwiY29uZmlnLnRpdGxlID8/ICdMb2cgaW4nXCIgW3N1YmhlYWRlcl09XCJjb25maWcuc3VidGl0bGUgPz8gJ1BsZWFzZSBlbnRlciB5b3VyIGRldGFpbHMnXCIgW3N0eWxlXT1cInsgd2lkdGg6ICc1MDBweCcsICdtYXgtd2lkdGgnOiAnNTAwcHgnIH1cIj5cblxuICAgICAgPGRpdiBjbGFzcz1cIlwiIFtmb3JtR3JvdXBdPVwiZ3JvdXBcIj5cbiAgICAgICAgPHAtaWNvbkZpZWxkIGljb25Qb3NpdGlvbj1cImxlZnRcIj5cbiAgICAgICAgICA8cC1pbnB1dEljb24gc3R5bGVDbGFzcz1cInBpIHBpLWVudmVsb3BlXCIgLz5cbiAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBwSW5wdXRUZXh0IFtwbGFjZWhvbGRlcl09XCJjb25maWcuZW1haWxQbGFjZWhvbGRlciA/PyAnRW1haWwnXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxcIiAvPlxuICAgICAgICA8L3AtaWNvbkZpZWxkPlxuXG4gICAgICAgIDxici8+PGJyLz5cblxuICAgICAgICA8cC1pY29uRmllbGQgaWNvblBvc2l0aW9uPVwibGVmdFwiPlxuICAgICAgICAgIDxwLWlucHV0SWNvbiBzdHlsZUNsYXNzPVwicGkgcGktbG9ja1wiIC8+XG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJwYXNzd29yZFwiIHBQYXNzd29yZCBbcGxhY2Vob2xkZXJdPVwiY29uZmlnLnBhc3N3b3JkUGxhY2Vob2xkZXIgPz8gJ1Bhc3N3b3JkJ1wiIFtmZWVkYmFja109XCJmYWxzZVwiIHRvZ2dsZU1hc2s9XCJ0cnVlXCIgZm9ybUNvbnRyb2xOYW1lPVwicGFzc3dvcmRcIiAvPlxuICAgICAgICA8L3AtaWNvbkZpZWxkPlxuXG4gICAgICAgIDxwLW1lc3NhZ2VzIC8+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZvb3RlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBnYXAtMyBtdC0xXCI+XG4gICAgICAgICAgPHAtYnV0dG9uIFtsYWJlbF09XCJjb25maWcuc3VibWl0QnV0dG9uID8/ICdMb2cgaW4nXCIgW3N0eWxlXT1cInsgd2lkdGg6ICcxMDAlJyB9XCIgKGNsaWNrKT1cIm9uQ2xpY2tTdWJtaXQoKVwiIFtkaXNhYmxlZF09XCJncm91cC5pbnZhbGlkIHx8IGlzU2VuZGluZ1wiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L3AtY2FyZD5cbiAgPC9kaXY+XG5cbn1cbiJdfQ==
|
package/fesm2022/mckit-auth.mjs
CHANGED
|
@@ -150,6 +150,8 @@ class MCAuthBasicComponent {
|
|
|
150
150
|
password: new FormControl('', Validators.required)
|
|
151
151
|
});
|
|
152
152
|
isSending = false;
|
|
153
|
+
loaderService = inject(MCLoaderService);
|
|
154
|
+
isLoading = this.loaderService.isLoading;
|
|
153
155
|
constructor(messageService) {
|
|
154
156
|
this.messageService = messageService;
|
|
155
157
|
}
|
|
@@ -177,11 +179,11 @@ class MCAuthBasicComponent {
|
|
|
177
179
|
this.isSending = false;
|
|
178
180
|
}
|
|
179
181
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: MCAuthBasicComponent, deps: [{ token: i1$1.MessageService }], target: i0.ɵɵFactoryTarget.Component });
|
|
180
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
182
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: MCAuthBasicComponent, isStandalone: true, selector: "mc-auth-basic", inputs: { config: "config" }, outputs: { submit: "submit" }, providers: [MessageService], ngImport: i0, template: "@if(!isLoading()){\n <div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config.title ?? 'Log in'\" [subheader]=\"config.subtitle ?? 'Please enter your details'\" [style]=\"{ width: '500px', 'max-width': '500px' }\">\n\n <div class=\"\" [formGroup]=\"group\">\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config.emailPlaceholder ?? 'Email'\" formControlName=\"email\" />\n </p-iconField>\n\n <br/><br/>\n\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <input type=\"password\" pPassword [placeholder]=\"config.passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" toggleMask=\"true\" formControlName=\"password\" />\n </p-iconField>\n\n <p-messages />\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex gap-3 mt-1\">\n <p-button [label]=\"config.submitButton ?? 'Log in'\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending\" />\n </div>\n </ng-template>\n </p-card>\n </div>\n\n}\n", styles: [".mc-auth-basic-container{display:flex;justify-content:center;min-height:100%;align-items:center}p-iconField input{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", 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]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i1$1.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: CardModule }, { kind: "component", type: i4.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "ngmodule", type: IconFieldModule }, { kind: "component", type: i5.IconField, selector: "p-iconField", inputs: ["iconPosition"] }, { kind: "ngmodule", type: InputIconModule }, { kind: "component", type: i6.InputIcon, selector: "p-inputIcon", inputs: ["styleClass"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i7.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: PasswordModule }, { kind: "directive", type: i8.PasswordDirective, selector: "[pPassword]", inputs: ["promptLabel", "weakLabel", "mediumLabel", "strongLabel", "feedback", "showPassword", "variant"] }, { kind: "ngmodule", type: MessagesModule }, { kind: "component", type: i9.Messages, selector: "p-messages", inputs: ["value", "closable", "style", "styleClass", "enableService", "key", "escape", "severity", "showTransitionOptions", "hideTransitionOptions"], outputs: ["valueChange", "onClose"] }] });
|
|
181
183
|
}
|
|
182
184
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: MCAuthBasicComponent, decorators: [{
|
|
183
185
|
type: Component,
|
|
184
|
-
args: [{ selector: 'mc-auth-basic', standalone: true, imports: [FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessagesModule], providers: [MessageService], template: "<div class=\"mc-auth-basic-container\">\n
|
|
186
|
+
args: [{ selector: 'mc-auth-basic', standalone: true, imports: [FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessagesModule], providers: [MessageService], template: "@if(!isLoading()){\n <div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config.title ?? 'Log in'\" [subheader]=\"config.subtitle ?? 'Please enter your details'\" [style]=\"{ width: '500px', 'max-width': '500px' }\">\n\n <div class=\"\" [formGroup]=\"group\">\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config.emailPlaceholder ?? 'Email'\" formControlName=\"email\" />\n </p-iconField>\n\n <br/><br/>\n\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <input type=\"password\" pPassword [placeholder]=\"config.passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" toggleMask=\"true\" formControlName=\"password\" />\n </p-iconField>\n\n <p-messages />\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex gap-3 mt-1\">\n <p-button [label]=\"config.submitButton ?? 'Log in'\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending\" />\n </div>\n </ng-template>\n </p-card>\n </div>\n\n}\n", styles: [".mc-auth-basic-container{display:flex;justify-content:center;min-height:100%;align-items:center}p-iconField input{width:100%}\n"] }]
|
|
185
187
|
}], ctorParameters: () => [{ type: i1$1.MessageService }], propDecorators: { config: [{
|
|
186
188
|
type: Input
|
|
187
189
|
}], submit: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mckit-auth.mjs","sources":["../../../../projects/mckit/auth/src/lib/entities/mc-user.ts","../../../../projects/mckit/auth/src/lib/entities/mc-auth-config.ts","../../../../projects/mckit/auth/src/lib/services/authentication.service.ts","../../../../projects/mckit/auth/src/lib/interceptors/auth.interceptor.ts","../../../../projects/mckit/auth/src/lib/guards/auth.guard.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.html","../../../../projects/mckit/auth/src/public-api.ts","../../../../projects/mckit/auth/src/mckit-auth.ts"],"sourcesContent":["export class MCUser {\n static STATUS_INACTIVE = 0;\n static STATUS_ACTIVE = 1;\n static STATUS_SUSPENDED = 2;\n\n public id?: number|string;\n public firstname: string = '';\n public lastname: string = '';\n public email: string = '';\n public photo?: string = '';\n public role: number = 0;\n public status: number = 0;\n public created_at: string = '';\n\n public token_type: string = 'bearer';\n public access_token: string = '';\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const MC_AUTH_CONFIG = new InjectionToken<MCAuthConfig>('mc.auth');\n\nexport class MCAuthConfig {\n baseUrl: string = '';\n}\n","import { Injectable, signal } from '@angular/core';\nimport { StorageMap } from '@ngx-pwa/local-storage';\nimport { MCUser } from '../entities/mc-user';\nimport { map, Observable, tap } from 'rxjs';\n\nexport const MC_AUTH_KEY_STORAGE_TOKEN = 'mc.auth.storage';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MCAuthenticationService {\n\n isLogged = signal<boolean>(false);\n\n constructor(\n private storage: StorageMap\n ) {\n this.initialize();\n }\n\n saveUser(user: MCUser): Observable<undefined> {\n return this.storage.set(MC_AUTH_KEY_STORAGE_TOKEN, JSON.stringify(user), { type: 'string' })\n .pipe(tap(res => this.isLogged.update(res => true)));\n }\n\n getUser(): Observable<MCUser|undefined> {\n return this.storage.get(MC_AUTH_KEY_STORAGE_TOKEN, { type: 'string' })\n .pipe(map(data => {\n if(data == undefined||data == ''){\n return;\n }\n return JSON.parse(data);\n }));\n }\n\n removeUser(): Observable<any> {\n return this.storage.delete(MC_AUTH_KEY_STORAGE_TOKEN);\n }\n\n initialize() {\n this.getUser()\n .subscribe(user => {\n if(user == undefined){\n return;\n }\n\n this.isLogged.update(res => true);\n });\n }\n}\n","import { HttpErrorResponse, HttpInterceptorFn, HttpResponse } from '@angular/common/http';\nimport { inject } from '@angular/core';\nimport { MC_AUTH_CONFIG } from '../entities/mc-auth-config';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { catchError, switchMap, tap } from 'rxjs';\n\nexport const authInterceptor: HttpInterceptorFn = (req, next) => {\n\n const config = inject(MC_AUTH_CONFIG);\n const authService = inject(MCAuthenticationService);\n\n if(req.url.indexOf(config.baseUrl) == -1){\n return next(req);\n }\n\n return authService.getUser()\n .pipe(\n\n switchMap(user => {\n\n if(user == undefined){\n return next(req);\n }\n\n return next(req.clone({\n headers: req.headers.set('Authorization', `Bearer ${user.access_token}`)\n }));\n\n }),\n tap(event => {\n\n if(event instanceof HttpResponse && event.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n }),\n catchError(err => {\n\n if(err instanceof HttpErrorResponse && err.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n throw err;\n }),\n\n\n );\n};\n","import { inject } from '@angular/core';\nimport { CanActivateFn, RedirectCommand, Router } from '@angular/router';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { map } from 'rxjs';\nimport { MCLoaderService } from '@mckit/loader';\n\nexport const mcAuthGuard: CanActivateFn = (route, state) => {\n const router = inject(Router);\n const authService = inject(MCAuthenticationService);\n const loaderService = inject(MCLoaderService);\n\n loaderService.show();\n\n let paramRedirect = router.url;\n if (paramRedirect.includes('/login')) {\n paramRedirect = '';\n }\n\n return authService.getUser()\n .pipe(map(user => {\n loaderService.hide();\n\n if(user == undefined){\n const loginPath = router.parseUrl(\"/login\");\n loginPath.queryParams = {\n redirect: paramRedirect\n };\n return new RedirectCommand(loginPath, { skipLocationChange: true });\n }\n\n return true;\n }));\n};\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\nimport { CardModule } from 'primeng/card';\nimport { ButtonModule } from 'primeng/button';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { FormGroup, FormsModule, ReactiveFormsModule, FormControl, Validators } from '@angular/forms';\nimport { MessagesModule } from 'primeng/messages';\nimport { MessageService } from 'primeng/api';\n\n\n\n@Component({\n selector: 'mc-auth-basic',\n standalone: true,\n imports: [FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessagesModule],\n providers: [MessageService],\n templateUrl: './auth-basic.component.html',\n styleUrl: './auth-basic.component.scss'\n})\nexport class MCAuthBasicComponent {\n @Input() config!: MCAuthBasicConfig;\n @Output() submit = new EventEmitter<MCAuthModel>();\n\n group = new FormGroup({\n email: new FormControl<string>('', [Validators.required, Validators.email]),\n password: new FormControl<string>('', Validators.required)\n });\n\n isSending = false;\n\n constructor(\n private messageService: MessageService\n ) {}\n\n onClickSubmit() {\n this.clearMessages();\n\n let obj = new MCAuthModel();\n obj.email = this.group.get('email')?.value;\n obj.password = this.group.get('password')?.value;\n\n this.showLoading();\n this.submit.emit(obj);\n }\n\n showSuccessMessage(message: string) {\n this.messageService.add({ severity: 'success', summary: message});\n }\n\n showErrorMessage(message: string) {\n this.messageService.add({ severity: 'error', summary: message});\n }\n\n clearMessages() {\n this.messageService.clear();\n }\n\n showLoading() {\n this.isSending = true;\n }\n\n hideLoading() {\n this.isSending = false;\n }\n}\n\nexport class MCAuthBasicConfig {\n title?: string;\n subtitle?: string;\n\n emailPlaceholder?: string;\n passwordPlaceholder?: string;\n\n submitButton?: string;\n}\n\nexport class MCAuthModel {\n email?: string|null;\n password?: string|null;\n}\n","<div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config.title ?? 'Log in'\" [subheader]=\"config.subtitle ?? 'Please enter your details'\" [style]=\"{ width: '500px', 'max-width': '500px' }\">\n\n <div class=\"\" [formGroup]=\"group\">\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config.emailPlaceholder ?? 'Email'\" formControlName=\"email\" />\n </p-iconField>\n\n <br/><br/>\n\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <input type=\"password\" pPassword [placeholder]=\"config.passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" toggleMask=\"true\" formControlName=\"password\" />\n </p-iconField>\n\n <p-messages />\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex gap-3 mt-1\">\n <p-button [label]=\"config.submitButton ?? 'Log in'\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending\" />\n </div>\n </ng-template>\n </p-card>\n</div>\n","/*\n * Public API Surface of auth\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/mc-user';\nexport * from './lib/entities/mc-auth-config';\n\n/**\n * Services\n */\nexport * from './lib/services/authentication.service';\n\n/**\n * Interceptors\n */\nexport * from './lib/interceptors/auth.interceptor';\n\n/**\n * Guards\n */\nexport * from './lib/guards/auth.guard';\n\n/**\n * Pages\n */\nexport * from './lib/pages/auth-basic/auth-basic.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mckit-auth.mjs","sources":["../../../../projects/mckit/auth/src/lib/entities/mc-user.ts","../../../../projects/mckit/auth/src/lib/entities/mc-auth-config.ts","../../../../projects/mckit/auth/src/lib/services/authentication.service.ts","../../../../projects/mckit/auth/src/lib/interceptors/auth.interceptor.ts","../../../../projects/mckit/auth/src/lib/guards/auth.guard.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.ts","../../../../projects/mckit/auth/src/lib/pages/auth-basic/auth-basic.component.html","../../../../projects/mckit/auth/src/public-api.ts","../../../../projects/mckit/auth/src/mckit-auth.ts"],"sourcesContent":["export class MCUser {\n static STATUS_INACTIVE = 0;\n static STATUS_ACTIVE = 1;\n static STATUS_SUSPENDED = 2;\n\n public id?: number|string;\n public firstname: string = '';\n public lastname: string = '';\n public email: string = '';\n public photo?: string = '';\n public role: number = 0;\n public status: number = 0;\n public created_at: string = '';\n\n public token_type: string = 'bearer';\n public access_token: string = '';\n}\n","import { InjectionToken } from \"@angular/core\";\n\nexport const MC_AUTH_CONFIG = new InjectionToken<MCAuthConfig>('mc.auth');\n\nexport class MCAuthConfig {\n baseUrl: string = '';\n}\n","import { Injectable, signal } from '@angular/core';\nimport { StorageMap } from '@ngx-pwa/local-storage';\nimport { MCUser } from '../entities/mc-user';\nimport { map, Observable, tap } from 'rxjs';\n\nexport const MC_AUTH_KEY_STORAGE_TOKEN = 'mc.auth.storage';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MCAuthenticationService {\n\n isLogged = signal<boolean>(false);\n\n constructor(\n private storage: StorageMap\n ) {\n this.initialize();\n }\n\n saveUser(user: MCUser): Observable<undefined> {\n return this.storage.set(MC_AUTH_KEY_STORAGE_TOKEN, JSON.stringify(user), { type: 'string' })\n .pipe(tap(res => this.isLogged.update(res => true)));\n }\n\n getUser(): Observable<MCUser|undefined> {\n return this.storage.get(MC_AUTH_KEY_STORAGE_TOKEN, { type: 'string' })\n .pipe(map(data => {\n if(data == undefined||data == ''){\n return;\n }\n return JSON.parse(data);\n }));\n }\n\n removeUser(): Observable<any> {\n return this.storage.delete(MC_AUTH_KEY_STORAGE_TOKEN);\n }\n\n initialize() {\n this.getUser()\n .subscribe(user => {\n if(user == undefined){\n return;\n }\n\n this.isLogged.update(res => true);\n });\n }\n}\n","import { HttpErrorResponse, HttpInterceptorFn, HttpResponse } from '@angular/common/http';\nimport { inject } from '@angular/core';\nimport { MC_AUTH_CONFIG } from '../entities/mc-auth-config';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { catchError, switchMap, tap } from 'rxjs';\n\nexport const authInterceptor: HttpInterceptorFn = (req, next) => {\n\n const config = inject(MC_AUTH_CONFIG);\n const authService = inject(MCAuthenticationService);\n\n if(req.url.indexOf(config.baseUrl) == -1){\n return next(req);\n }\n\n return authService.getUser()\n .pipe(\n\n switchMap(user => {\n\n if(user == undefined){\n return next(req);\n }\n\n return next(req.clone({\n headers: req.headers.set('Authorization', `Bearer ${user.access_token}`)\n }));\n\n }),\n tap(event => {\n\n if(event instanceof HttpResponse && event.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n }),\n catchError(err => {\n\n if(err instanceof HttpErrorResponse && err.status == 401){\n authService.removeUser().subscribe(() => {\n window.location.reload();\n });\n }\n\n throw err;\n }),\n\n\n );\n};\n","import { inject } from '@angular/core';\nimport { CanActivateFn, RedirectCommand, Router } from '@angular/router';\nimport { MCAuthenticationService } from '../services/authentication.service';\nimport { map } from 'rxjs';\nimport { MCLoaderService } from '@mckit/loader';\n\nexport const mcAuthGuard: CanActivateFn = (route, state) => {\n const router = inject(Router);\n const authService = inject(MCAuthenticationService);\n const loaderService = inject(MCLoaderService);\n\n loaderService.show();\n\n let paramRedirect = router.url;\n if (paramRedirect.includes('/login')) {\n paramRedirect = '';\n }\n\n return authService.getUser()\n .pipe(map(user => {\n loaderService.hide();\n\n if(user == undefined){\n const loginPath = router.parseUrl(\"/login\");\n loginPath.queryParams = {\n redirect: paramRedirect\n };\n return new RedirectCommand(loginPath, { skipLocationChange: true });\n }\n\n return true;\n }));\n};\n","import { Component, EventEmitter, inject, Input, Output } from '@angular/core';\nimport { CardModule } from 'primeng/card';\nimport { ButtonModule } from 'primeng/button';\nimport { IconFieldModule } from 'primeng/iconfield';\nimport { InputIconModule } from 'primeng/inputicon';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { PasswordModule } from 'primeng/password';\nimport { FormGroup, FormsModule, ReactiveFormsModule, FormControl, Validators } from '@angular/forms';\nimport { MessagesModule } from 'primeng/messages';\nimport { MessageService } from 'primeng/api';\nimport { MCLoaderService } from '@mckit/loader';\n\n\n\n@Component({\n selector: 'mc-auth-basic',\n standalone: true,\n imports: [FormsModule, ReactiveFormsModule, ButtonModule, CardModule, IconFieldModule, InputIconModule, InputTextModule, PasswordModule, MessagesModule],\n providers: [MessageService],\n templateUrl: './auth-basic.component.html',\n styleUrl: './auth-basic.component.scss'\n})\nexport class MCAuthBasicComponent {\n @Input() config!: MCAuthBasicConfig;\n @Output() submit = new EventEmitter<MCAuthModel>();\n\n group = new FormGroup({\n email: new FormControl<string>('', [Validators.required, Validators.email]),\n password: new FormControl<string>('', Validators.required)\n });\n\n isSending = false;\n\n loaderService = inject(MCLoaderService);\n isLoading = this.loaderService.isLoading;\n\n constructor(\n private messageService: MessageService\n ) {}\n\n onClickSubmit() {\n this.clearMessages();\n\n let obj = new MCAuthModel();\n obj.email = this.group.get('email')?.value;\n obj.password = this.group.get('password')?.value;\n\n this.showLoading();\n this.submit.emit(obj);\n }\n\n showSuccessMessage(message: string) {\n this.messageService.add({ severity: 'success', summary: message});\n }\n\n showErrorMessage(message: string) {\n this.messageService.add({ severity: 'error', summary: message});\n }\n\n clearMessages() {\n this.messageService.clear();\n }\n\n showLoading() {\n this.isSending = true;\n }\n\n hideLoading() {\n this.isSending = false;\n }\n}\n\nexport class MCAuthBasicConfig {\n title?: string;\n subtitle?: string;\n\n emailPlaceholder?: string;\n passwordPlaceholder?: string;\n\n submitButton?: string;\n}\n\nexport class MCAuthModel {\n email?: string|null;\n password?: string|null;\n}\n","@if(!isLoading()){\n <div class=\"mc-auth-basic-container\">\n <p-card [header]=\"config.title ?? 'Log in'\" [subheader]=\"config.subtitle ?? 'Please enter your details'\" [style]=\"{ width: '500px', 'max-width': '500px' }\">\n\n <div class=\"\" [formGroup]=\"group\">\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-envelope\" />\n <input type=\"text\" pInputText [placeholder]=\"config.emailPlaceholder ?? 'Email'\" formControlName=\"email\" />\n </p-iconField>\n\n <br/><br/>\n\n <p-iconField iconPosition=\"left\">\n <p-inputIcon styleClass=\"pi pi-lock\" />\n <input type=\"password\" pPassword [placeholder]=\"config.passwordPlaceholder ?? 'Password'\" [feedback]=\"false\" toggleMask=\"true\" formControlName=\"password\" />\n </p-iconField>\n\n <p-messages />\n </div>\n\n <ng-template pTemplate=\"footer\">\n <div class=\"flex gap-3 mt-1\">\n <p-button [label]=\"config.submitButton ?? 'Log in'\" [style]=\"{ width: '100%' }\" (click)=\"onClickSubmit()\" [disabled]=\"group.invalid || isSending\" />\n </div>\n </ng-template>\n </p-card>\n </div>\n\n}\n","/*\n * Public API Surface of auth\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/mc-user';\nexport * from './lib/entities/mc-auth-config';\n\n/**\n * Services\n */\nexport * from './lib/services/authentication.service';\n\n/**\n * Interceptors\n */\nexport * from './lib/interceptors/auth.interceptor';\n\n/**\n * Guards\n */\nexport * from './lib/guards/auth.guard';\n\n/**\n * Pages\n */\nexport * from './lib/pages/auth-basic/auth-basic.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
2
|
import { FormGroup, FormControl } from '@angular/forms';
|
|
3
3
|
import { MessageService } from 'primeng/api';
|
|
4
|
+
import { MCLoaderService } from '@mckit/loader';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export declare class MCAuthBasicComponent {
|
|
6
7
|
private messageService;
|
|
@@ -11,6 +12,8 @@ export declare class MCAuthBasicComponent {
|
|
|
11
12
|
password: FormControl<string | null>;
|
|
12
13
|
}>;
|
|
13
14
|
isSending: boolean;
|
|
15
|
+
loaderService: MCLoaderService;
|
|
16
|
+
isLoading: import("@angular/core").WritableSignal<boolean>;
|
|
14
17
|
constructor(messageService: MessageService);
|
|
15
18
|
onClickSubmit(): void;
|
|
16
19
|
showSuccessMessage(message: string): void;
|