/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, Inject } from '@angular/core'; import { NB_AUTH_OPTIONS, NbAuthService } from '@nebular/auth'; import { Router } from '@angular/router'; import { getDeepFromObject } from '@nebular/auth/helpers'; import { LoginLangService } from '../login-lang.service'; export class LogoutComponent { /** * @param {?} service * @param {?} langService * @param {?=} options * @param {?=} router */ constructor(service, langService, options = {}, router) { this.service = service; this.langService = langService; this.options = options; this.router = router; this.redirectDelay = 0; this.strategy = ''; this.redirectDelay = this.getConfigValue('forms.logout.redirectDelay'); this.strategy = this.getConfigValue('forms.logout.strategy'); } /** * @return {?} */ ngOnInit() { this.logout(this.strategy); } /** * @param {?} strategy * @return {?} */ logout(strategy) { this.service.logout(strategy).subscribe((result) => { /** @type {?} */ const redirect = result.getRedirect(); if (redirect) { setTimeout(() => { return this.router.navigateByUrl(redirect); }, this.redirectDelay); } }); } /** * @param {?} key * @return {?} */ getConfigValue(key) { return getDeepFromObject(this.options, key, null); } } LogoutComponent.decorators = [ { type: Component, args: [{ selector: 'auth-logout', template: "
\r\n", styles: ["div{text-align:center}"] }] } ]; /** @nocollapse */ LogoutComponent.ctorParameters = () => [ { type: NbAuthService }, { type: LoginLangService }, { type: undefined, decorators: [{ type: Inject, args: [NB_AUTH_OPTIONS,] }] }, { type: Router } ]; if (false) { /** @type {?} */ LogoutComponent.prototype.redirectDelay; /** @type {?} */ LogoutComponent.prototype.strategy; /** * @type {?} * @protected */ LogoutComponent.prototype.service; /** * @type {?} * @protected */ LogoutComponent.prototype.langService; /** * @type {?} * @protected */ LogoutComponent.prototype.options; /** * @type {?} * @protected */ LogoutComponent.prototype.router; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nb3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2dlLWFkbWluLWF1dGgvIiwic291cmNlcyI6WyJsaWIvbG9nb3V0L2xvZ291dC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQWdCLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFPekQsTUFBTSxPQUFPLGVBQWU7Ozs7Ozs7SUFNMUIsWUFBc0IsT0FBc0IsRUFBWSxXQUE2QixFQUNoRCxVQUFVLEVBQUUsRUFDckMsTUFBYztRQUZKLFlBQU8sR0FBUCxPQUFPLENBQWU7UUFBWSxnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7UUFDaEQsWUFBTyxHQUFQLE9BQU8sQ0FBSztRQUNyQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBTDFCLGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFLWixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUMvRCxDQUFDOzs7O0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdCLENBQUM7Ozs7O0lBRUQsTUFBTSxDQUFDLFFBQWdCO1FBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQW9CLEVBQUUsRUFBRTs7a0JBRXpELFFBQVEsR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFO1lBQ3JDLElBQUksUUFBUSxFQUFFO2dCQUNaLFVBQVUsQ0FBQyxHQUFHLEVBQUU7b0JBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDN0MsQ0FBQyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUN4QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7Ozs7SUFFRCxjQUFjLENBQUMsR0FBVztRQUN4QixPQUFPLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7OztZQXBDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGFBQWE7Z0JBQ3ZCLGtFQUFzQzs7YUFFdkM7Ozs7WUFUdUMsYUFBYTtZQUc1QyxnQkFBZ0I7NENBY3BCLE1BQU0sU0FBQyxlQUFlO1lBaEJsQixNQUFNOzs7O0lBWWIsd0NBQWtCOztJQUNsQixtQ0FBYzs7Ozs7SUFFRixrQ0FBZ0M7Ozs7O0lBQUUsc0NBQXVDOzs7OztJQUNuRixrQ0FBK0M7Ozs7O0lBQy9DLGlDQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTkJfQVVUSF9PUFRJT05TLCBOYkF1dGhSZXN1bHQsIE5iQXV0aFNlcnZpY2UgfSBmcm9tICdAbmVidWxhci9hdXRoJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgZ2V0RGVlcEZyb21PYmplY3QgfSBmcm9tICdAbmVidWxhci9hdXRoL2hlbHBlcnMnO1xyXG5pbXBvcnQgeyBMb2dpbkxhbmdTZXJ2aWNlIH0gZnJvbSAnLi4vbG9naW4tbGFuZy5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXV0aC1sb2dvdXQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9sb2dvdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2xvZ291dC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBMb2dvdXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG5cclxuXHJcbiAgcmVkaXJlY3REZWxheSA9IDA7XHJcbiAgc3RyYXRlZ3kgPSAnJztcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHNlcnZpY2U6IE5iQXV0aFNlcnZpY2UsIHByb3RlY3RlZCBsYW5nU2VydmljZTogTG9naW5MYW5nU2VydmljZSxcclxuICAgIEBJbmplY3QoTkJfQVVUSF9PUFRJT05TKSBwcm90ZWN0ZWQgb3B0aW9ucyA9IHt9LFxyXG4gICAgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyKSB7XHJcbiAgICB0aGlzLnJlZGlyZWN0RGVsYXkgPSB0aGlzLmdldENvbmZpZ1ZhbHVlKCdmb3Jtcy5sb2dvdXQucmVkaXJlY3REZWxheScpO1xyXG4gICAgdGhpcy5zdHJhdGVneSA9IHRoaXMuZ2V0Q29uZmlnVmFsdWUoJ2Zvcm1zLmxvZ291dC5zdHJhdGVneScpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmxvZ291dCh0aGlzLnN0cmF0ZWd5KTtcclxuICB9XHJcblxyXG4gIGxvZ291dChzdHJhdGVneTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLnNlcnZpY2UubG9nb3V0KHN0cmF0ZWd5KS5zdWJzY3JpYmUoKHJlc3VsdDogTmJBdXRoUmVzdWx0KSA9PiB7XHJcblxyXG4gICAgICBjb25zdCByZWRpcmVjdCA9IHJlc3VsdC5nZXRSZWRpcmVjdCgpO1xyXG4gICAgICBpZiAocmVkaXJlY3QpIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKHJlZGlyZWN0KTtcclxuICAgICAgICB9LCB0aGlzLnJlZGlyZWN0RGVsYXkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGdldENvbmZpZ1ZhbHVlKGtleTogc3RyaW5nKTogYW55IHtcclxuICAgIHJldHVybiBnZXREZWVwRnJvbU9iamVjdCh0aGlzLm9wdGlvbnMsIGtleSwgbnVsbCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==