UNPKG

angular-firebase-authorizator

Version:

Beta version of authorizator for angular linked to firebase, it creates a model in firestore to assign permissions to users an roles, and creates a view to update this permissions

57 lines 7.98 kB
import { __decorate, __metadata, __param } from "tslib"; import { Component, Inject } from '@angular/core'; import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog'; import { FormGroup, FormControl, Validators } from '@angular/forms'; import { AuthorizatorService } from '../../../services/authorizator.service'; var UpsertUserComponent = /** @class */ (function () { function UpsertUserComponent(data, authorizatorservice, dialogRef) { this.data = data; this.authorizatorservice = authorizatorservice; this.dialogRef = dialogRef; this.userForm = new FormGroup({ email: new FormControl(null, [Validators.required, Validators.email]) }); } UpsertUserComponent.prototype.onSubmitUser = function () { var _this = this; if (this.userForm.valid) { var userToAdd_1 = { id: this.userForm.controls.email.value, data: { name: null, email: this.userForm.controls.email.value, picture: null, permissions: null } }; this.authorizatorservice.addUser(this.data.rootFirebasePath, userToAdd_1).then(function () { _this.dialogRef.close(userToAdd_1); }).catch(function (error) { if (error.key === 'exists') { _this.userForm.controls.email.setErrors({ exists: true }); } else { _this.userForm.controls.email.setErrors({ defaulterror: true }); } }); } }; UpsertUserComponent.ctorParameters = function () { return [ { type: undefined, decorators: [{ type: Inject, args: [MAT_DIALOG_DATA,] }] }, { type: AuthorizatorService }, { type: MatDialogRef } ]; }; UpsertUserComponent = __decorate([ Component({ selector: 'lib-upsert-user', template: "<form [formGroup]=\"userForm\" (ngSubmit)=\"onSubmitUser()\" method=\"post\">\n <h1 mat-dialog-title>{{data.type === 'add' ? 'Add User' : 'Edit User'}}</h1>\n <div mat-dialog-content>\n <mat-form-field style=\"width: 100%;\">\n <input matInput cdkFocusInitial type=\"email\" placeholder=\"Email\" formControlName=\"email\" maxlength=\"254\">\n <mat-error *ngIf=\"userForm.controls['email'].hasError('required')\">Mandatory field</mat-error>\n <mat-error *ngIf=\"userForm.controls['email'].hasError('email')\">Email format incorrect</mat-error>\n <mat-error *ngIf=\"userForm.controls['email'].hasError('exists')\">Email already exists</mat-error>\n <mat-error *ngIf=\"userForm.controls['email'].hasError('defaulterror')\">Error updating user</mat-error>\n </mat-form-field>\n </div>\n <div mat-dialog-actions>\n <button mat-button [mat-dialog-close]>Close</button>\n <button mat-raised-button type=\"submit\" [disabled]=\"!userForm.valid\">Add</button>\n </div>\n</form>\n", styles: [".mat-dialog-actions{-webkit-box-pack:end;justify-content:flex-end}"] }), __param(0, Inject(MAT_DIALOG_DATA)), __metadata("design:paramtypes", [Object, AuthorizatorService, MatDialogRef]) ], UpsertUserComponent); return UpsertUserComponent; }()); export { UpsertUserComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBzZXJ0LXVzZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1maXJlYmFzZS1hdXRob3JpemF0b3IvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy91c2Vycy91cHNlcnQtdXNlci91cHNlcnQtdXNlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFekUsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFhN0U7SUFJRSw2QkFDa0MsSUFBZ0IsRUFDeEMsbUJBQXdDLEVBQ3pDLFNBQTRDO1FBRm5CLFNBQUksR0FBSixJQUFJLENBQVk7UUFDeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUN6QyxjQUFTLEdBQVQsU0FBUyxDQUFtQztRQU45QyxhQUFRLEdBQUcsSUFBSSxTQUFTLENBQUM7WUFDOUIsS0FBSyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3RFLENBQUMsQ0FBQztJQUtDLENBQUM7SUFFTCwwQ0FBWSxHQUFaO1FBQUEsaUJBcUJDO1FBcEJDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUU7WUFDdkIsSUFBTSxXQUFTLEdBQVk7Z0JBQ3pCLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSztnQkFDdEMsSUFBSSxFQUFFO29CQUNKLElBQUksRUFBRSxJQUFJO29CQUNWLEtBQUssRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSztvQkFDekMsT0FBTyxFQUFFLElBQUk7b0JBQ2IsV0FBVyxFQUFFLElBQUk7aUJBQ2xCO2FBQ0YsQ0FBQztZQUNGLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxXQUFTLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBQzNFLEtBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFdBQVMsQ0FBQyxDQUFDO1lBQ2xDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFBLEtBQUs7Z0JBQ1osSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLFFBQVEsRUFBRTtvQkFDMUIsS0FBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO2lCQUMxRDtxQkFBTTtvQkFDTCxLQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7aUJBQ2hFO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7O2dEQTFCRSxNQUFNLFNBQUMsZUFBZTtnQkFDTSxtQkFBbUI7Z0JBQzlCLFlBQVk7O0lBUHJCLG1CQUFtQjtRQUwvQixTQUFTLENBQUM7WUFDVCxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLDJnQ0FBMkM7O1NBRTVDLENBQUM7UUFNRyxXQUFBLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQTtpREFDSyxtQkFBbUI7WUFDOUIsWUFBWTtPQVByQixtQkFBbUIsQ0FnQy9CO0lBQUQsMEJBQUM7Q0FBQSxBQWhDRCxJQWdDQztTQWhDWSxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNQVRfRElBTE9HX0RBVEEsIE1hdERpYWxvZ1JlZiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBVc2VyT2JqIH0gZnJvbSAnLi4vLi4vLi4vY2xhc3Nlcy91c2VyLW9iaic7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQXV0aG9yaXphdG9yU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2F1dGhvcml6YXRvci5zZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBEaWFsb2dEYXRhIHtcbiAgdHlwZTogc3RyaW5nO1xuICB1c2VyOiBVc2VyT2JqO1xuICByb290RmlyZWJhc2VQYXRoOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi11cHNlcnQtdXNlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi91cHNlcnQtdXNlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Vwc2VydC11c2VyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVXBzZXJ0VXNlckNvbXBvbmVudCB7XG4gIHB1YmxpYyB1c2VyRm9ybSA9IG5ldyBGb3JtR3JvdXAoe1xuICAgIGVtYWlsOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMuZW1haWxdKVxuICB9KTtcbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpIHB1YmxpYyBkYXRhOiBEaWFsb2dEYXRhLFxuICAgIHByaXZhdGUgYXV0aG9yaXphdG9yc2VydmljZTogQXV0aG9yaXphdG9yU2VydmljZSxcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8VXBzZXJ0VXNlckNvbXBvbmVudD5cbiAgKSB7IH1cblxuICBvblN1Ym1pdFVzZXIoKSB7XG4gICAgaWYgKHRoaXMudXNlckZvcm0udmFsaWQpIHtcbiAgICAgIGNvbnN0IHVzZXJUb0FkZDogVXNlck9iaiA9IHtcbiAgICAgICAgaWQ6IHRoaXMudXNlckZvcm0uY29udHJvbHMuZW1haWwudmFsdWUsXG4gICAgICAgIGRhdGE6IHtcbiAgICAgICAgICBuYW1lOiBudWxsLFxuICAgICAgICAgIGVtYWlsOiB0aGlzLnVzZXJGb3JtLmNvbnRyb2xzLmVtYWlsLnZhbHVlLFxuICAgICAgICAgIHBpY3R1cmU6IG51bGwsXG4gICAgICAgICAgcGVybWlzc2lvbnM6IG51bGxcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIHRoaXMuYXV0aG9yaXphdG9yc2VydmljZS5hZGRVc2VyKHRoaXMuZGF0YS5yb290RmlyZWJhc2VQYXRoLCB1c2VyVG9BZGQpLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh1c2VyVG9BZGQpO1xuICAgICAgfSkuY2F0Y2goZXJyb3IgPT4ge1xuICAgICAgICBpZiAoZXJyb3Iua2V5ID09PSAnZXhpc3RzJykge1xuICAgICAgICAgIHRoaXMudXNlckZvcm0uY29udHJvbHMuZW1haWwuc2V0RXJyb3JzKHsgZXhpc3RzOiB0cnVlIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMudXNlckZvcm0uY29udHJvbHMuZW1haWwuc2V0RXJyb3JzKHsgZGVmYXVsdGVycm9yOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==