ge-admin-auth.umd.min.js 25 KB

12
  1. !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common"),require("@nebular/theme"),require("@angular/forms"),require("rxjs/operators"),require("@angular/common/http"),require("jsencrypt"),require("@nebular/auth"),require("@angular/router"),require("@nebular/auth/helpers"),require("@angular/core"),require("rxjs"),require("@ngx-translate/core")):"function"==typeof define&&define.amd?define("ge-admin-auth",["exports","@angular/common","@nebular/theme","@angular/forms","rxjs/operators","@angular/common/http","jsencrypt","@nebular/auth","@angular/router","@nebular/auth/helpers","@angular/core","rxjs","@ngx-translate/core"],t):t(e["ge-admin-auth"]={},e.ng.common,e.theme,e.ng.forms,e.rxjs.operators,e.ng.common.http,e.JSEncrypt,e.auth,e.ng.router,e.helpers,e.ng.core,e.rxjs,e.core$1)}(this,function(e,t,r,n,a,s,i,l,o,u,c,g,d){"use strict";var p=Object.freeze({"default":{"与第一次输入不符合":"与第一次输入不符合.","修改密码":"修改密码","密码":"密码","密码:":"密码:","密码是必填的":"密码是必填的","密码规则提示":"密码应该包含 最小长度 {{minLength}} 最大长度 {{maxLength}} 个字符","您好,欢迎使用":"您好,欢迎使用","成功!":"成功!","新密码":"新密码","新密码:":"新密码:","新密码是必填的!":"新密码是必填的!","旧密码:":"旧密码:","旧密码是必填的!":"旧密码是必填的","登出提示":"正在登出, 请等待...","登录":"登录","确认密码":"确认密码","确认密码:":"确认密码:","确认密码是必填的!":"确认密码是必填的!","请设置您的新密码":"请设置您的新密码","账户":"账户","账户:":"账户:","账户是必填的":"账户是必填的","错误!":"错误!"}}),h=Object.freeze({"default":{"与第一次输入不符合":"與第一次輸入不符合.","修改密码":"更改密碼","密码":"密碼","密码:":"密碼:","密码是必填的":"必須填寫密碼","密码规则提示":"密碼應該包含 最小長度 {{minLength}} 最大長度 {{maxLength}} 個字符","您好,欢迎使用":"您好,歡迎使用","成功!":"成功!","新密码":"新密碼","新密码:":"新密碼:","新密码是必填的!":"必須填寫新密碼","旧密码:":"舊密碼:","旧密码是必填的!":"必須填寫舊密碼","登出提示":"正在登出, 請稍候⋯","登录":"登入","确认密码":"確認密碼","确认密码:":"確認密碼:","确认密码是必填的!":"必須填寫確認密碼","请设置您的新密码":"請設置您的新密碼","账户":"賬戶","账户:":"賬戶:","账户是必填的":"必須填寫賬戶","错误!":"錯誤!"}}),f=new c.InjectionToken("AUTH_DEFAULT_LANG"),m=function(){function e(e,t){this._translate=e,this._translate.setTranslation("zh-cn",p),this._translate.setTranslation("zh-hk",h),this._translate.setDefaultLang(t||"zh-cn"),this._translate.use(t||"zh-cn")}return e.prototype.setTranslate=function(e){this._translate.use(e)},e.decorators=[{type:c.Injectable}],e.ctorParameters=function(){return[{type:d.TranslateService},{type:String,decorators:[{type:c.Optional},{type:c.Inject,args:[f]}]}]},e}(),w=function(){function e(e,t,r,n,s){void 0===r&&(r={}),this.service=e,this.langService=t,this.options=r,this.cd=n,this.router=s,this.redirectDelay=0,this.showMessages={},this.strategy="",this.errors=[],this.messages=[],this.user={},this.submitted=!1,this.socialLinks=[],this.rememberMe=!1,this.redirectDelay=this.getConfigValue("forms.login.redirectDelay"),this.showMessages=this.getConfigValue("forms.login.showMessages"),this.strategy=this.getConfigValue("forms.login.strategy"),this.socialLinks=this.getConfigValue("forms.login.socialLinks"),this.rememberMe=this.getConfigValue("forms.login.rememberMe")}return e.prototype.login=function(){var r=this;this.errors=[],this.messages=[],this.submitted=!0,this.service.authenticate(this.strategy,this.user).subscribe(function(e){r.submitted=!1,e.isSuccess()?r.messages=e.getMessages():r.errors=e.getErrors();var t=e.getRedirect();t&&setTimeout(function(){return r.router.navigateByUrl(t)},r.redirectDelay),r.cd.detectChanges()})},e.prototype.getConfigValue=function(e){return u.getDeepFromObject(this.options,e,null)},e.decorators=[{type:c.Component,args:[{selector:"auth-login",template:'<h1 id="title" class="title" translate>登录</h1>\r\n<p class="sub-title" translate>您好,欢迎使用</p>\r\n\r\n<nb-alert *ngIf="showMessages.error && errors?.length && !submitted" outline="danger" role="alert">\r\n <p class="alert-title"><b translate>错误!</b></p>\r\n <ul class="alert-message-list">\r\n <li *ngFor="let error of errors" class="alert-message">{{ error }}</li>\r\n </ul>\r\n</nb-alert>\r\n\r\n<nb-alert\r\n *ngIf="showMessages.success && messages?.length && !submitted"\r\n outline="success"\r\n role="alert"\r\n>\r\n <p class="alert-title"><b translate>成功!</b></p>\r\n <ul class="alert-message-list">\r\n <li *ngFor="let message of messages" class="alert-message">{{ message }}</li>\r\n </ul>\r\n</nb-alert>\r\n\r\n<form (ngSubmit)="login()" #form="ngForm" aria-labelledby="title">\r\n <div class="form-control-group">\r\n <label class="label" for="input-email" translate>账户:</label>\r\n <input\r\n nbInput\r\n fullWidth\r\n [(ngModel)]="user.loginId"\r\n #loginId="ngModel"\r\n name="loginId"\r\n id="input-loginId"\r\n placeholder="{{ \'账户\' | translate }}"\r\n autofocus\r\n [status]="loginId.dirty ? (loginId.invalid ? \'danger\' : \'success\') : \'\'"\r\n [required]="true"\r\n [attr.aria-invalid]="loginId.invalid && loginId.touched ? true : null"\r\n />\r\n <ng-container *ngIf="loginId.invalid && loginId.touched">\r\n <p class="error-message" *ngIf="loginId.errors?.required" translate="账户是必填的">\r\n\r\n </p>\r\n </ng-container>\r\n </div>\r\n\r\n <div class="form-control-group">\r\n <label class="label" for="input-password" translate>密码:</label>\r\n <input\r\n nbInput\r\n fullWidth\r\n [(ngModel)]="user.loginPassword"\r\n #password="ngModel"\r\n name="password"\r\n type="password"\r\n id="input-password"\r\n placeholder="{{\'密码\'|translate}}"\r\n [status]="password.dirty ? (password.invalid ? \'danger\' : \'success\') : \'\'"\r\n [required]="true"\r\n [minlength]="getConfigValue(\'forms.validation.password.minLength\')"\r\n [maxlength]="getConfigValue(\'forms.validation.password.maxLength\')"\r\n [attr.aria-invalid]="password.invalid && password.touched ? true : null"\r\n />\r\n <ng-container *ngIf="password.invalid && password.touched">\r\n <p class="error-message" *ngIf="password.errors?.required" translate="密码是必填的">\r\n\r\n </p>\r\n <p class="error-message" *ngIf="password.errors?.minlength || password.errors?.maxlength"\r\n translate="密码规则提示" [translateParams]="{minLength: getConfigValue(\'forms.validation.password.minLength\'), maxLength:getConfigValue(\'forms.validation.password.maxLength\')}"\r\n >\r\n 密码应该包含 最小长度 {{ getConfigValue(\'forms.validation.password.minLength\') }} 最大长度\r\n {{ getConfigValue(\'forms.validation.password.maxLength\') }}\r\n 个字符\r\n </p>\r\n </ng-container>\r\n </div>\r\n\r\n \x3c!--<div class="form-control-group accept-group">--\x3e\r\n \x3c!--<nb-checkbox name="rememberMe" [(ngModel)]="user.rememberMe" *ngIf="rememberMe">记住账号</nb-checkbox>--\x3e\r\n \x3c!--&lt;!&ndash;<a class="forgot-password" routerLink="../request-password">Forgot Password?</a>&ndash;&gt;--\x3e\r\n \x3c!--</div>--\x3e\r\n\r\n <button\r\n nbButton\r\n fullWidth\r\n status="success"\r\n [disabled]="submitted || !form.valid"\r\n [class.btn-pulse]="submitted"\r\n translate="登录"\r\n >\r\n </button>\r\n</form>\r\n\r\n\x3c!--<section *ngIf="socialLinks && socialLinks.length > 0" class="links" aria-label="Social sign in">--\x3e\r\n\x3c!--or enter with:--\x3e\r\n\x3c!--<div class="socials">--\x3e\r\n\x3c!--<ng-container *ngFor="let socialLink of socialLinks">--\x3e\r\n\x3c!--<a *ngIf="socialLink.link"--\x3e\r\n\x3c!--[routerLink]="socialLink.link"--\x3e\r\n\x3c!--[attr.target]="socialLink.target"--\x3e\r\n\x3c!--[attr.class]="socialLink.icon"--\x3e\r\n\x3c!--[class.with-icon]="socialLink.icon">{{ socialLink.title }}</a>--\x3e\r\n\x3c!--<a *ngIf="socialLink.url"--\x3e\r\n\x3c!--[attr.href]="socialLink.url"--\x3e\r\n\x3c!--[attr.target]="socialLink.target"--\x3e\r\n\x3c!--[attr.class]="socialLink.icon"--\x3e\r\n\x3c!--[class.with-icon]="socialLink.icon">{{ socialLink.title }}</a>--\x3e\r\n\x3c!--</ng-container>--\x3e\r\n\x3c!--</div>--\x3e\r\n\x3c!--</section>--\x3e\r\n\r\n\x3c!--<section class="another-action" aria-label="Register">--\x3e\r\n\x3c!--Don\'t have an account? <a class="text-link" routerLink="../register">Register</a>--\x3e\r\n\x3c!--</section>--\x3e\r\n',changeDetection:c.ChangeDetectionStrategy.OnPush}]}],e.ctorParameters=function(){return[{type:l.NbAuthService},{type:m},{type:undefined,decorators:[{type:c.Inject,args:[l.NB_AUTH_OPTIONS]}]},{type:c.ChangeDetectorRef},{type:o.Router}]},e}(),b=function(e,t){return(b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function y(e,t){function r(){this.constructor=e}b(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var v=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.baseEndpoint="/api/auth/",e.getPublicKey={endpoint:"getPublicKey",method:"get"},e.login={alwaysFail:!1,endpoint:"login",method:"post",redirect:{success:"/",failure:null},defaultErrors:["未知错误!"],defaultMessages:["You have been successfully logged in."]},e.createUser={endpoint:"createUser",method:"post",defaultErrors:["未知错误!"]},e.updatePasswordForAdmin={endpoint:"updatePasswordForAdmin",method:"patch",defaultErrors:["未知错误!"]},e.register={alwaysFail:!1,endpoint:"register",method:"post",redirect:{success:"/",failure:null},defaultErrors:["Something went wrong, please try again."],defaultMessages:["You have been successfully registered."]},e.requestPass={endpoint:"request-pass",method:"post",redirect:{success:"/",failure:null},defaultErrors:["Something went wrong, please try again."],defaultMessages:["Reset password instructions have been sent to your email."]},e.resetPass={endpoint:"updateUserPassword",method:"patch",redirect:{success:"/",failure:null},defaultErrors:["未知错误."],defaultMessages:["Your password has been successfully changed."]},e.logout={alwaysFail:!1,endpoint:"logout",method:"delete",redirect:{success:"/",failure:null},defaultErrors:["Something went wrong, please try again."],defaultMessages:["You have been successfully logged out."]},e.errors={key:"messager",getter:function(e,t,r){return[u.getDeepFromObject(t.error,r.errors.key,r[e].defaultErrors)]}},e.messages={key:"messager",getter:function(e,t,r){return[u.getDeepFromObject(t.body,r.messages.key,!1)]}},e.success={key:"success",getter:function(e,t,r){return u.getDeepFromObject(t.body,r.success.key,r[e].defaultMessages)}},e}return y(e,t),e}(l.NbAuthStrategyOptions),P=new v,x=function E(e){this.message=e},L=function(n){function t(e,t){var r=n.call(this)||this;return r.http=e,r.route=t,r.defaultOptions=P,r}return y(t,n),t.setup=function(e){return[t,e]},t.prototype.authenticate=function(t){var r=this,n="login",s=this.getOption(n+".method"),o=this.getActionEndpoint(n);this.getOption(n+".requireValidToken");return this.getEncryptPassword(t.loginPassword).pipe(a.map(function(e){return e.loginID=t.loginId,r.http.request(s,o,{body:e,observe:"response"}).pipe(a.map(function(e){if(r.getOption(n+".alwaysFail"))throw r.createFailResponse(t);if(!r.getOption("success.getter")(n,e,r.options))throw new x(r.getOption("messages.getter")(n,e,r.options));return e}),a.map(function(e){return new l.NbAuthResult(!0,e,r.getOption(n+".redirect.success"),[],r.getOption("messages.getter")(n,e,r.options))}),a.catchError(function(e){return r.handleResponseError(e,n)}))}),a.concatAll())},t.prototype.logout=function(){var t=this,r="logout",n=this.getOption(r+".method"),s=this.getActionEndpoint(r);return g.of({}).pipe(a.switchMap(function(e){return s?t.http.request(n,s,{observe:"response"}):g.of(e)}),a.map(function(e){if(t.getOption(r+".alwaysFail"))throw t.createFailResponse();return e}),a.map(function(e){return new l.NbAuthResult(!0,e,t.getOption(r+".redirect.success"),[],t.getOption("messages.getter")(r,e,t.options))}),a.catchError(function(e){return t.handleResponseError(e,r)}))},t.prototype.refreshToken=function(e){return undefined},t.prototype.register=function(e){return undefined},t.prototype.requestPassword=function(e){return undefined},t.prototype.resetPassword=function(t){var r=this,n="resetPass",s=this.getOption(n+".method"),o=this.getActionEndpoint(n);return this.getEncryptPassword(t.loginPasswordNew+"-"+t.loginPasswordOld).pipe(a.map(function(e){return e.passwordData=e.loginPassword,r.http.request(s,o,{body:e,observe:"response"}).pipe(a.map(function(e){if(r.getOption(n+".alwaysFail"))throw r.createFailResponse(t);if(!r.getOption("success.getter")(n,e,r.options))throw new x(r.getOption("messages.getter")(n,e,r.options));return e}),a.map(function(e){return new l.NbAuthResult(!0,e,r.getOption(n+".redirect.success"),[],r.getOption("messages.getter")(n,e,r.options))}),a.catchError(function(e){return r.handleResponseError(e,n)}))}),a.concatAll())},t.prototype.createUser=function(t){var r=this,n="createUser",s=this.getOption(n+".method"),o=this.getActionEndpoint(n);return this.getEncryptPassword(t.loginPassword).pipe(a.map(function(e){return e.userName=t.userName,e.loginID=t.loginID,r.http.request(s,o,{body:e,observe:"response"}).pipe(a.map(function(e){if(r.getOption(n+".alwaysFail"))throw r.createFailResponse(t);if(!r.getOption("success.getter")(n,e,r.options))throw new x(r.getOption("messages.getter")(n,e,r.options));return e}),a.map(function(e){return new l.NbAuthResult(!0,e,r.getOption(n+".redirect.success"),[],r.getOption("messages.getter")(n,e,r.options))}),a.catchError(function(e){return r.handleResponseError(e,n)}))}),a.concatAll())},t.prototype.updatePasswordForAdmin=function(t){var r=this,n="updatePasswordForAdmin",s=this.getOption(n+".method"),o=this.getActionEndpoint(n);return this.getEncryptPassword(t.loginPassword).pipe(a.map(function(e){return e.userID=t.userID,r.http.request(s,o,{body:e,observe:"response"}).pipe(a.map(function(e){if(r.getOption(n+".alwaysFail"))throw r.createFailResponse(t);if(!r.getOption("success.getter")(n,e,r.options))throw new x(r.getOption("messages.getter")(n,e,r.options));return e}),a.map(function(e){return new l.NbAuthResult(!0,e,r.getOption(n+".redirect.success"),[],r.getOption("messages.getter")(n,e,r.options))}),a.catchError(function(e){return r.handleResponseError(e,n)}))}),a.concatAll())},t.prototype.getEncryptPassword=function(t){var r=this,n="getPublicKey",e=this.getOption(n+".method"),s=this.getActionEndpoint(n);return this.http.request(e,s,{observe:"response"}).pipe(a.map(function(e){return function o(e,t){var r=Date.now(),n=new i.JSEncrypt;n.setPublicKey(e.data.publicPEMKey);var s=n.encrypt(t+r);return{cryptoKeyID:e.data.cryptoKeyID,utcTimestamp:r,loginPassword:s}}(e.body,t)}),a.catchError(function(e){return r.handleResponseError(e,n)}))},t.prototype.handleResponseError=function(e,t){var r=[];return e instanceof s.HttpErrorResponse?r=this.getOption("errors.getter")(t,e,this.options):e instanceof l.NbAuthIllegalTokenError?r.push(e.message):e instanceof x?r=e.message:r.push("Something went wrong."),g.of(new l.NbAuthResult(!1,e,this.getOption(t+".redirect.failure"),r))},t.decorators=[{type:c.Injectable}],t.ctorParameters=function(){return[{type:s.HttpClient},{type:o.ActivatedRoute}]},t}(l.NbAuthStrategy),I=function(){function e(e,t,r,n,s){void 0===r&&(r={}),this.service=e,this.langService=t,this.options=r,this.cd=n,this.router=s,this.redirectDelay=0,this.showMessages={},this.strategy="",this.submitted=!1,this.errors=[],this.messages=[],this.user={},this.redirectDelay=this.getConfigValue("forms.resetPassword.redirectDelay"),this.showMessages=this.getConfigValue("forms.resetPassword.showMessages"),this.strategy=this.getConfigValue("forms.resetPassword.strategy")}return e.prototype.resetPass=function(){var r=this;this.errors=this.messages=[],this.submitted=!0,this.service.resetPassword(this.strategy,this.user).subscribe(function(e){r.submitted=!1,e.isSuccess()?r.messages=e.getMessages():r.errors=e.getErrors();var t=e.getRedirect();t&&setTimeout(function(){return r.router.navigateByUrl(t)},r.redirectDelay),r.cd.detectChanges()})},e.prototype.getConfigValue=function(e){return u.getDeepFromObject(this.options,e,null)},e.decorators=[{type:c.Component,args:[{selector:"auth-reset-password-page",template:'<h1 id="title" class="title" translate>修改密码</h1>\r\n<p class="sub-title" translate>请设置您的新密码</p>\r\n\r\n<nb-alert *ngIf="showMessages.error && errors?.length && !submitted" outline="danger" role="alert">\r\n <p class="alert-title"><b translate>错误!</b></p>\r\n <ul class="alert-message-list">\r\n <li *ngFor="let error of errors" class="alert-message">{{ error }}</li>\r\n </ul>\r\n</nb-alert>\r\n\r\n<nb-alert *ngIf="showMessages.success && messages?.length && !submitted" outline="success" role="alert">\r\n <p class="alert-title"><b translate>成功!</b></p>\r\n <ul class="alert-message-list">\r\n <li *ngFor="let message of messages" class="alert-message">{{ message }}</li>\r\n </ul>\r\n</nb-alert>\r\n\r\n<form (ngSubmit)="resetPass()" #resetPassForm="ngForm" aria-labelledby="title">\r\n\r\n <div class="form-control-group">\r\n <label class="label" for="input-old-password" translate>旧密码:</label>\r\n <input nbInput\r\n [(ngModel)]="user.loginPasswordOld"\r\n #oldPassword="ngModel"\r\n type="password"\r\n id="input-old-password"\r\n name="oldPassword"\r\n class="first"\r\n placeholder="{{\'新密码\'| translate}}"\r\n autofocus\r\n fullWidth\r\n [status]="oldPassword.dirty ? (oldPassword.invalid ? \'danger\' : \'success\') : \'\'"\r\n [required]="getConfigValue(\'forms.validation.password.required\')"\r\n [minlength]="getConfigValue(\'forms.validation.password.minLength\')"\r\n [maxlength]="getConfigValue(\'forms.validation.password.maxLength\')"\r\n [attr.aria-invalid]="oldPassword.invalid && oldPassword.touched ? true : null">\r\n <ng-container *ngIf="oldPassword.invalid && oldPassword.touched">\r\n <p class="error-message" *ngIf="oldPassword.errors?.required" translate="旧密码是必填的!">\r\n\r\n </p>\r\n <p class="error-message" *ngIf="oldPassword.errors?.minlength || oldPassword.errors?.maxlength"\r\n translate="密码规则提示" [translateParams]="{minLength: getConfigValue(\'forms.validation.password.minLength\'), maxLength:getConfigValue(\'forms.validation.password.maxLength\')}">\r\n 密码应该包含\r\n 最小长度 {{ getConfigValue(\'forms.validation.password.minLength\') }}\r\n 最大长度 {{ getConfigValue(\'forms.validation.password.maxLength\') }}\r\n 个字符\r\n </p>\r\n </ng-container>\r\n </div>\r\n\r\n <div class="form-control-group">\r\n <label class="label" for="input-new-password" translate>新密码:</label>\r\n <input nbInput\r\n [(ngModel)]="user.loginPasswordNew"\r\n #newPassword="ngModel"\r\n type="password"\r\n id="input-new-password"\r\n name="newPassword"\r\n class="first"\r\n placeholder="{{\'新密码\'| translate}}"\r\n autofocus\r\n fullWidth\r\n [status]="newPassword.dirty ? (newPassword.invalid ? \'danger\' : \'success\') : \'\'"\r\n [required]="getConfigValue(\'forms.validation.password.required\')"\r\n [minlength]="getConfigValue(\'forms.validation.password.minLength\')"\r\n [maxlength]="getConfigValue(\'forms.validation.password.maxLength\')"\r\n [attr.aria-invalid]="newPassword.invalid && newPassword.touched ? true : null">\r\n <ng-container *ngIf="newPassword.invalid && newPassword.touched">\r\n <p class="error-message" *ngIf="newPassword.errors?.required" translate="新密码是必填的!">\r\n\r\n </p>\r\n <p class="error-message" *ngIf="newPassword.errors?.minlength || newPassword.errors?.maxlength"\r\n translate="密码规则提示"\r\n [translateParams]="{minLength: getConfigValue(\'forms.validation.password.minLength\'), maxLength:getConfigValue(\'forms.validation.password.maxLength\')}">\r\n\r\n 密码应该包含\r\n 最小长度 {{ getConfigValue(\'forms.validation.password.minLength\') }}\r\n 最大长度 {{ getConfigValue(\'forms.validation.password.maxLength\') }}\r\n 个字符\r\n </p>\r\n </ng-container>\r\n </div>\r\n\r\n <div class="form-group">\r\n <label class="label" for="input-re-password" translate>确认密码:</label>\r\n <input nbInput\r\n [(ngModel)]="user.confirmPassword"\r\n #rePass="ngModel"\r\n id="input-re-password"\r\n name="rePass"\r\n type="password"\r\n class="last"\r\n placeholder="{{\'确认密码\'| translate}}"\r\n fullWidth\r\n [status]="rePass.touched\r\n ? (rePass.invalid || newPassword.value != rePass.value ? \'danger\' : \'success\')\r\n : \'\'"\r\n [required]="getConfigValue(\'forms.validation.password.required\')"\r\n [attr.aria-invalid]="rePass.invalid && rePass.touched ? true : null">\r\n <ng-container *ngIf="rePass.touched">\r\n <p class="error-message" *ngIf="rePass.invalid && rePass.errors?.required" translate="确认密码是必填的!">\r\n\r\n </p>\r\n <p class="error-message" *ngIf="newPassword.value != rePass.value && !rePass.errors?.required" translate="与第一次输入不符合"></p>\r\n </ng-container>\r\n </div>\r\n\r\n <button nbButton\r\n status="success"\r\n fullWidth\r\n [disabled]="submitted || !resetPassForm.valid"\r\n [class.btn-pulse]="submitted" translate="修改密码">\r\n </button>\r\n</form>\r\n\r\n\x3c!--<section class="sign-in-or-up" aria-label="Sign in or sign up">--\x3e\r\n \x3c!--<p><a class="text-link" routerLink="../login">Back to Log In</a></p>--\x3e\r\n \x3c!--<p><a class="text-link" routerLink="../register">Register</a></p>--\x3e\r\n\x3c!--</section>--\x3e\r\n',changeDetection:c.ChangeDetectionStrategy.OnPush,styles:[":host .form-group:last-of-type{margin-bottom:3rem}"]}]}],e.ctorParameters=function(){return[{type:l.NbAuthService},{type:m},{type:undefined,decorators:[{type:c.Inject,args:[l.NB_AUTH_OPTIONS]}]},{type:c.ChangeDetectorRef},{type:o.Router}]},e}(),O=function(){function e(e,t,r,n){void 0===r&&(r={}),this.service=e,this.langService=t,this.options=r,this.router=n,this.redirectDelay=0,this.strategy="",this.redirectDelay=this.getConfigValue("forms.logout.redirectDelay"),this.strategy=this.getConfigValue("forms.logout.strategy")}return e.prototype.ngOnInit=function(){this.logout(this.strategy)},e.prototype.logout=function(e){var r=this;this.service.logout(e).subscribe(function(e){var t=e.getRedirect();t&&setTimeout(function(){return r.router.navigateByUrl(t)},r.redirectDelay)})},e.prototype.getConfigValue=function(e){return u.getDeepFromObject(this.options,e,null)},e.decorators=[{type:c.Component,args:[{selector:"auth-logout",template:'<div translate="登出提示"></div>\r\n',styles:["div{text-align:center}"]}]}],e.ctorParameters=function(){return[{type:l.NbAuthService},{type:m},{type:undefined,decorators:[{type:c.Inject,args:[l.NB_AUTH_OPTIONS]}]},{type:o.Router}]},e}(),M=function(){function e(){this.subject=new g.Subject}return e.prototype.changeStatus=function(e){this.status!==e&&(this.status=e,this.subject.next(e))},e.decorators=[{type:c.Injectable}],e.ctorParameters=function(){return[]},e}(),C={Login:1,Logout:2};C[C.Login]="Login",C[C.Logout]="Logout";var k=function(){function e(){}return e.decorators=[{type:c.NgModule,args:[{declarations:[w,I,O],imports:[t.CommonModule,r.NbLayoutModule,r.NbCardModule,r.NbCheckboxModule,r.NbAlertModule,r.NbInputModule,r.NbButtonModule,o.RouterModule,n.FormsModule,d.TranslateModule.forRoot(),l.NbAuthModule.forRoot()],providers:[L,M,m],exports:[w,I,O]}]}],e}();e.GeAdminAuthModule=k,e.LoginStatusService=M,e.LoginStatus=C,e.LoginComponent=w,e.LogoutComponent=O,e.ResetPasswordComponent=I,e.ResultError=x,e.NamePasswordStrategyService=L,e.NamePasswordAuthStrategyOptions=v,e.namePasswordStrategyOptions=P,e.AUTH_DEFAULT_LANG=f,e.LoginLangService=m,Object.defineProperty(e,"__esModule",{value:!0})});
  2. //# sourceMappingURL=ge-admin-auth.umd.min.js.map