UNPKG

@akveo/nga-auth

Version:
67 lines 5.98 kB
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; /** * @license * Copyright Akveo. All Rights Reserved. * Licensed under the MIT License. See License.txt in the project root for license information. */ import { Component } from '@angular/core'; import { Router } from '@angular/router'; import { NgaUser } from '../../models/user'; import { NgaAuthService } from '../../services/auth.service'; import { NgaTokenService } from '../../services/token.service'; var NgaRegisterComponent = (function () { function NgaRegisterComponent(service, tokenService, router) { this.service = service; this.tokenService = tokenService; this.router = router; this.redirectDelay = 1500; this.submitted = false; this.errors = []; this.messages = []; this.user = new NgaUser(); } NgaRegisterComponent.prototype.register = function (provider) { var _this = this; this.errors = this.messages = []; this.submitted = true; this.service.register(provider, this.user).subscribe(function (result) { _this.submitted = false; if (result.isSuccess()) { _this.messages = result.getMessages(); } else { _this.errors = result.getErrors(); } var redirect = result.getRedirect(); if (redirect) { setTimeout(function () { return _this.router.navigateByUrl(redirect); }, _this.redirectDelay); } }); }; NgaRegisterComponent.prototype.getConfigValue = function (provider, key) { return this.service.getProvider(provider).getConfigValue(key); }; return NgaRegisterComponent; }()); NgaRegisterComponent = __decorate([ Component({ selector: 'nga-register', styles: [""], template: "\n <h2>Create new account</h2>\n <form (ngSubmit)=\"register('email')\" #registerForm=\"ngForm\">\n <div *ngIf=\"errors && errors.length > 0 && !submitted\" class=\"alert alert-danger\" role=\"alert\">\n <div><strong>Oh snap!</strong></div>\n <div *ngFor=\"let error of errors\">{{ error }}</div>\n </div>\n <div *ngIf=\"messages && messages.length > 0 && !submitted\" class=\"alert alert-success\" role=\"alert\">\n <div><strong>Hooray!</strong></div>\n <div *ngFor=\"let message of messages\">{{ message }}</div>\n </div>\n\n <label for=\"input-name\" class=\"sr-only\">Full name</label>\n <input name=\"fullName\" [(ngModel)]=\"user.fullName\" type=\"text\" id=\"input-name\"\n class=\"form-control form-control-lg first\" placeholder=\"Full name\"\n [required]=\"getConfigValue('email', 'validation.fullName.required')\"\n [minlength]=\"getConfigValue('email', 'validation.fullName.minLength')\"\n [maxlength]=\"getConfigValue('email', 'validation.fullName.maxLength')\"\n autofocus>\n\n <label for=\"input-email\" class=\"sr-only\">Email address</label>\n <input name=\"email\" [(ngModel)]=\"user.email\" type=\"email\" id=\"input-email\"\n class=\"form-control form-control-lg middle\" placeholder=\"Email address\"\n [required]=\"getConfigValue('email', 'validation.email.required')\">\n\n <label for=\"input-password\" class=\"sr-only\">Password</label>\n <input name=\"password\" [(ngModel)]=\"user.password\" type=\"password\" id=\"input-password\"\n class=\"form-control form-control-lg middle\" placeholder=\"Password\"\n [required]=\"getConfigValue('email', 'validation.password.required')\"\n [minlength]=\"getConfigValue('email', 'validation.password.minLength')\"\n [maxlength]=\"getConfigValue('email', 'validation.password.maxLength')\">\n\n <label for=\"input-re-password\" class=\"sr-only\">Repeat password</label>\n <input name=\"confirmPassword\" [(ngModel)]=\"user.confirmPassword\" type=\"password\" id=\"input-re-password\"\n class=\"form-control form-control-lg last\" placeholder=\"Confirm Password\"\n [required]=\"getConfigValue('email', 'validation.password.required')\"\n [minlength]=\"getConfigValue('email', 'validation.password.minLength')\"\n [maxlength]=\"getConfigValue('email', 'validation.password.maxLength')\">\n\n <div class=\"checkbox\" *ngIf=\"getConfigValue('email', 'register.terms')\">\n <label>\n <input name=\"rememberMe\" [(ngModel)]=\"user.terms\"\n type=\"checkbox\" value=\"remember-me\"> Agree to <a href=\"#\" target=\"_blank\">Terms & Conditions</a>\n </label>\n </div>\n <button [disabled]=\"submitted || !registerForm.form.valid\"\n class=\"btn btn-lg btn-primary btn-block\" type=\"submit\">Register</button>\n </form>\n\n <div class=\"links\">\n Already have an account? <a routerLink=\"../login\">Sign in</a>\n </div>\n ", }), __metadata("design:paramtypes", [NgaAuthService, NgaTokenService, Router]) ], NgaRegisterComponent); export { NgaRegisterComponent }; //# sourceMappingURL=register.component.js.map