ngx-firebase-cms
Version:
Angular Content Management System using Google Firebase (Authentication, Storage & Firestore)
77 lines • 7.6 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, Inject } from '@angular/core';
import { AuthService } from '../../service/auth.service';
import { FormBuilder, Validators } from '@angular/forms';
export class LoginComponent {
/**
* @param {?} config
* @param {?} fb
* @param {?} auth
*/
constructor(config, fb, auth) {
this.config = config;
this.fb = fb;
this.auth = auth;
this.isLoading = false;
}
/**
* @return {?}
*/
ngOnInit() {
this.validateForm = this.fb.group({
userName: [null, [Validators.required, Validators.email]],
password: [null, [Validators.required]]
});
}
/**
* @return {?}
*/
submitForm() {
for (const i in this.validateForm.controls) {
this.validateForm.controls[i].markAsDirty();
this.validateForm.controls[i].updateValueAndValidity();
}
if (this.validateForm.valid && !this.isLoading) {
this.isLoading = true;
this.auth.login(`${this.validateForm.value.userName}`, this.validateForm.value.password);
}
}
}
LoginComponent.decorators = [
{ type: Component, args: [{
selector: 'aq-login',
template: "<div class=\"table-cell\">\n <form *ngIf=\"!isLoading\" nz-form [formGroup]=\"validateForm\" class=\"login-form\" (ngSubmit)=\"submitForm()\">\n <nz-form-item>\n <nz-form-control>\n <nz-input-group [nzPrefix]=\"prefixUserTemplate\" nzSize=\"large\">\n <input type=\"text\" nz-input formControlName=\"userName\" placeholder=\"Username\" autocomplete=\"email\" autofocus>\n </nz-input-group>\n <nz-form-explain *ngIf=\"validateForm.get('userName').dirty && validateForm.get('userName').errors\">Please\n input\n your username!</nz-form-explain>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-control>\n <nz-input-group [nzPrefix]=\"prefixLockTemplate\" nzSize=\"large\">\n <input type=\"password\" nz-input formControlName=\"password\" placeholder=\"Password\" autocomplete=\"password\">\n </nz-input-group>\n <nz-form-explain *ngIf=\"validateForm.get('password').dirty && validateForm.get('password').errors\">Please\n input\n your Password!</nz-form-explain>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-control>\n <button nz-button class=\"login-form-button\" [nzType]=\"'primary'\" nzSize=\"large\">Log in</button>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <p class=\"text-center\">Not yet a member? Sign up <a routerLink=\"../signup\">here</a></p>\n </nz-form-item>\n </form>\n</div>\n\n<ng-template #prefixUserTemplate>\n <i nz-icon type=\"user\" theme=\"outline\"></i>\n</ng-template>\n\n<ng-template #prefixLockTemplate>\n <i nz-icon type=\"lock\" theme=\"outline\"></i>\n</ng-template>",
styles: [":host{display:table;width:100%;height:100%;min-height:calc(100vh - 70px)}.login-form{max-width:340px;margin:20px auto}.login-form .login-form-button{width:100%}.table-cell{display:table-cell;vertical-align:middle}"]
}] }
];
/** @nocollapse */
LoginComponent.ctorParameters = () => [
{ type: undefined, decorators: [{ type: Inject, args: ['env',] }] },
{ type: FormBuilder },
{ type: AuthService }
];
if (false) {
/** @type {?} */
LoginComponent.prototype.validateForm;
/** @type {?} */
LoginComponent.prototype.isLoading;
/**
* @type {?}
* @private
*/
LoginComponent.prototype.config;
/**
* @type {?}
* @private
*/
LoginComponent.prototype.fb;
/**
* @type {?}
* @private
*/
LoginComponent.prototype.auth;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9naW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWZpcmViYXNlLWNtcy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnQvbG9naW4vbG9naW4uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBYSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVVwRSxNQUFNLE9BQU8sY0FBYzs7Ozs7O0lBS3pCLFlBQ3lCLE1BQWlCLEVBQ2hDLEVBQWUsRUFDZixJQUFpQjtRQUZGLFdBQU0sR0FBTixNQUFNLENBQVc7UUFDaEMsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLFNBQUksR0FBSixJQUFJLENBQWE7UUFMM0IsY0FBUyxHQUFHLEtBQUssQ0FBQTtJQU1iLENBQUM7Ozs7SUFFTCxRQUFRO1FBQ04sSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNoQyxRQUFRLEVBQUUsQ0FBRSxJQUFJLEVBQUUsQ0FBRSxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUUsQ0FBRTtZQUM3RCxRQUFRLEVBQUUsQ0FBRSxJQUFJLEVBQUUsQ0FBRSxVQUFVLENBQUMsUUFBUSxDQUFFLENBQUU7U0FDNUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7OztJQUVELFVBQVU7UUFDUixLQUFLLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFO1lBQzFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFFLENBQUMsQ0FBRSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzlDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFFLENBQUMsQ0FBRSxDQUFDLHNCQUFzQixFQUFFLENBQUM7U0FDMUQ7UUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM5QyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQTtZQUNyQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1NBQ3pGO0lBQ0gsQ0FBQzs7O1lBbENGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsVUFBVTtnQkFDcEIsZ3NEQUFxQzs7YUFJdEM7Ozs7NENBT0ksTUFBTSxTQUFDLEtBQUs7WUFoQlIsV0FBVztZQURYLFdBQVc7Ozs7SUFhbEIsc0NBQXVCOztJQUN2QixtQ0FBaUI7Ozs7O0lBR2YsZ0NBQXdDOzs7OztJQUN4Qyw0QkFBdUI7Ozs7O0lBQ3ZCLDhCQUF5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE56TWVzc2FnZVNlcnZpY2UgfSBmcm9tICduZy16b3Jyby1hbnRkJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFbnZDb25maWcgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2UvZW52LWNvbmZpZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FxLWxvZ2luJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xvZ2luLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbXG4gICAgJy4vbG9naW4uY29tcG9uZW50LmNzcydcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBMb2dpbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgdmFsaWRhdGVGb3JtOiBGb3JtR3JvdXBcbiAgaXNMb2FkaW5nID0gZmFsc2VcblxuICBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KCdlbnYnKSBwcml2YXRlIGNvbmZpZzogRW52Q29uZmlnLFxuICAgIHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLFxuICAgIHByaXZhdGUgYXV0aDogQXV0aFNlcnZpY2VcbiAgKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnZhbGlkYXRlRm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgdXNlck5hbWU6IFsgbnVsbCwgWyBWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsIF0gXSxcbiAgICAgIHBhc3N3b3JkOiBbIG51bGwsIFsgVmFsaWRhdG9ycy5yZXF1aXJlZCBdIF1cbiAgICB9KTtcbiAgfVxuXG4gIHN1Ym1pdEZvcm0oKSB7XG4gICAgZm9yIChjb25zdCBpIGluIHRoaXMudmFsaWRhdGVGb3JtLmNvbnRyb2xzKSB7XG4gICAgICB0aGlzLnZhbGlkYXRlRm9ybS5jb250cm9sc1sgaSBdLm1hcmtBc0RpcnR5KCk7XG4gICAgICB0aGlzLnZhbGlkYXRlRm9ybS5jb250cm9sc1sgaSBdLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMudmFsaWRhdGVGb3JtLnZhbGlkICYmICF0aGlzLmlzTG9hZGluZykge1xuICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlXG4gICAgICB0aGlzLmF1dGgubG9naW4oYCR7dGhpcy52YWxpZGF0ZUZvcm0udmFsdWUudXNlck5hbWV9YCwgdGhpcy52YWxpZGF0ZUZvcm0udmFsdWUucGFzc3dvcmQpXG4gICAgfVxuICB9XG5cbn1cbiJdfQ==