UNPKG

@netgrif/components-core

Version:

Netgrif Application engine frontend core Angular library

77 lines 9.6 kB
import { Component } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "../session/services/session.service"; import * as i2 from "../../utility/service/spinner-overlay.service"; import * as i3 from "@angular/router"; import * as i4 from "../../routing/redirect-service/redirect.service"; import * as i5 from "../../user/services/user.service"; export class AbstractAuthenticationOverlayComponent { _session; _spinnerOverlay; router; redirectService; userService; subSession; user; subInitializing; constructor(_session, _spinnerOverlay, router, redirectService, userService) { this._session = _session; this._spinnerOverlay = _spinnerOverlay; this.router = router; this.redirectService = redirectService; this.userService = userService; } ngOnInit() { if (this._session.verified) { this.redirectService.redirect(); } else if (!this._session.verified && this._session.isVerifying) { this._spinnerOverlay.spin$.next(true); this.subSession = this._session.verifying.subscribe(active => { this.userService.user$.subscribe(user => { if (!!user && !!user.id && user.id.length > 0) { this.redirect(!active); } else if (!active) { this._spinnerOverlay.spin$.next(false); } }); }); } else if (!this._session.verified && !this._session.isInitialized) { this._spinnerOverlay.spin$.next(true); this.subInitializing = this._session.initializing.subscribe(initialized => { this.redirect(initialized); }); } } redirect(bool) { if (bool) { this._spinnerOverlay.spin$.next(false); if (this._session.verified) { this.redirectService.redirect(); } } } ngOnDestroy() { if (this.subSession) { this.subSession.unsubscribe(); } if (this.subInitializing) { this.subInitializing.unsubscribe(); } if (this.user) { this.user.unsubscribe(); } } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractAuthenticationOverlayComponent, deps: [{ token: i1.SessionService }, { token: i2.SpinnerOverlayService }, { token: i3.Router }, { token: i4.RedirectService }, { token: i5.UserService }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AbstractAuthenticationOverlayComponent, selector: "ncc-abstract-auth-overlay", ngImport: i0, template: '', isInline: true }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractAuthenticationOverlayComponent, decorators: [{ type: Component, args: [{ selector: 'ncc-abstract-auth-overlay', template: '' }] }], ctorParameters: () => [{ type: i1.SessionService }, { type: i2.SpinnerOverlayService }, { type: i3.Router }, { type: i4.RedirectService }, { type: i5.UserService }] }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtYXV0aGVudGljYXRpb24tb3ZlcmxheS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvYXV0aGVudGljYXRpb24vY29tcG9uZW50cy9hYnN0cmFjdC1hdXRoZW50aWNhdGlvbi1vdmVybGF5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQW9CLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBWTNELE1BQU0sT0FBZ0Isc0NBQXNDO0lBSWxDO0lBQW9DO0lBQ3BDO0lBQTBCO0lBQTRDO0lBSmxGLFVBQVUsQ0FBZTtJQUN6QixJQUFJLENBQWU7SUFDbkIsZUFBZSxDQUFlO0lBQ3hDLFlBQXNCLFFBQXdCLEVBQVksZUFBc0MsRUFDMUUsTUFBYyxFQUFZLGVBQWdDLEVBQVksV0FBd0I7UUFEOUYsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFBWSxvQkFBZSxHQUFmLGVBQWUsQ0FBdUI7UUFDMUUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUFZLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUFZLGdCQUFXLEdBQVgsV0FBVyxDQUFhO0lBQ3BILENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ25DO2FBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxFQUFFO1lBQzdELElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDekQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNwQyxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO3dCQUMzQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7cUJBQzFCO3lCQUFNLElBQUksQ0FBQyxNQUFNLEVBQUU7d0JBQ2hCLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztxQkFDMUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDUCxDQUFDLENBQUMsQ0FBQztTQUNOO2FBQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUU7WUFDaEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ3RDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxFQUFFO2dCQUN0RSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQy9CLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRVMsUUFBUSxDQUFDLElBQUk7UUFDbkIsSUFBSSxJQUFJLEVBQUU7WUFDTixJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUNuQztTQUNKO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNqQztRQUNELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN0QixJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3RDO1FBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1gsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7d0dBakRpQixzQ0FBc0M7NEZBQXRDLHNDQUFzQyxpRUFGOUMsRUFBRTs7NEZBRU0sc0NBQXNDO2tCQUozRCxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFFBQVEsRUFBRSxFQUFFO2lCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIE9uRGVzdHJveSwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7U2Vzc2lvblNlcnZpY2V9IGZyb20gJy4uL3Nlc3Npb24vc2VydmljZXMvc2Vzc2lvbi5zZXJ2aWNlJztcbmltcG9ydCB7U3Bpbm5lck92ZXJsYXlTZXJ2aWNlfSBmcm9tICcuLi8uLi91dGlsaXR5L3NlcnZpY2Uvc3Bpbm5lci1vdmVybGF5LnNlcnZpY2UnO1xuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1JlZGlyZWN0U2VydmljZX0gZnJvbSAnLi4vLi4vcm91dGluZy9yZWRpcmVjdC1zZXJ2aWNlL3JlZGlyZWN0LnNlcnZpY2UnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtVc2VyU2VydmljZX0gZnJvbSAnLi4vLi4vdXNlci9zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC1hdXRoLW92ZXJsYXknLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEF1dGhlbnRpY2F0aW9uT3ZlcmxheUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBwcm90ZWN0ZWQgc3ViU2Vzc2lvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCB1c2VyOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIHN1YkluaXRpYWxpemluZzogU3Vic2NyaXB0aW9uO1xuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsIHByb3RlY3RlZCBfc3Bpbm5lck92ZXJsYXk6IFNwaW5uZXJPdmVybGF5U2VydmljZSxcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgcm91dGVyOiBSb3V0ZXIsIHByb3RlY3RlZCByZWRpcmVjdFNlcnZpY2U6IFJlZGlyZWN0U2VydmljZSwgcHJvdGVjdGVkIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSkge1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fc2Vzc2lvbi52ZXJpZmllZCkge1xuICAgICAgICAgICAgdGhpcy5yZWRpcmVjdFNlcnZpY2UucmVkaXJlY3QoKTtcbiAgICAgICAgfSBlbHNlIGlmICghdGhpcy5fc2Vzc2lvbi52ZXJpZmllZCAmJiB0aGlzLl9zZXNzaW9uLmlzVmVyaWZ5aW5nKSB7XG4gICAgICAgICAgICB0aGlzLl9zcGlubmVyT3ZlcmxheS5zcGluJC5uZXh0KHRydWUpO1xuICAgICAgICAgICAgdGhpcy5zdWJTZXNzaW9uID0gdGhpcy5fc2Vzc2lvbi52ZXJpZnlpbmcuc3Vic2NyaWJlKGFjdGl2ZSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51c2VyU2VydmljZS51c2VyJC5zdWJzY3JpYmUodXNlciA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghIXVzZXIgJiYgISF1c2VyLmlkICYmIHVzZXIuaWQubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWRpcmVjdCghYWN0aXZlKTtcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmICghYWN0aXZlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9zcGlubmVyT3ZlcmxheS5zcGluJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuX3Nlc3Npb24udmVyaWZpZWQgJiYgIXRoaXMuX3Nlc3Npb24uaXNJbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhpcy5fc3Bpbm5lck92ZXJsYXkuc3BpbiQubmV4dCh0cnVlKTtcbiAgICAgICAgICAgIHRoaXMuc3ViSW5pdGlhbGl6aW5nID0gdGhpcy5fc2Vzc2lvbi5pbml0aWFsaXppbmcuc3Vic2NyaWJlKGluaXRpYWxpemVkID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZGlyZWN0KGluaXRpYWxpemVkKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlZGlyZWN0KGJvb2wpOiB2b2lkIHtcbiAgICAgICAgaWYgKGJvb2wpIHtcbiAgICAgICAgICAgIHRoaXMuX3NwaW5uZXJPdmVybGF5LnNwaW4kLm5leHQoZmFsc2UpO1xuICAgICAgICAgICAgaWYgKHRoaXMuX3Nlc3Npb24udmVyaWZpZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlZGlyZWN0U2VydmljZS5yZWRpcmVjdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnN1YlNlc3Npb24pIHtcbiAgICAgICAgICAgIHRoaXMuc3ViU2Vzc2lvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnN1YkluaXRpYWxpemluZykge1xuICAgICAgICAgICAgdGhpcy5zdWJJbml0aWFsaXppbmcudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy51c2VyKSB7XG4gICAgICAgICAgICB0aGlzLnVzZXIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==