@netgrif/components-core
Version:
Netgrif Application engine frontend core Angular library
76 lines • 9.15 kB
JavaScript
import { Component, Input } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "@ngx-translate/core";
import * as i2 from "../translate/language.service";
import * as i3 from "../user/services/user.service";
import * as i4 from "@angular/router";
import * as i5 from "../routing/redirect-service/redirect.service";
export class AbstractToolbarComponent {
translate;
selectLangService;
userService;
router;
redirectService;
toolbarConfig = {
profileEnabled: false,
languageEnabled: false,
logoutEnabled: false,
simpleToolbar: true,
toolbarName: {
defaultValue: 'Netgrif',
translations: {}
},
toolbarLogo: 'assets/img/netgrif_full_white.svg',
profileUrl: 'profile',
loginUrl: ''
};
constructor(translate, selectLangService, userService, router, redirectService) {
this.translate = translate;
this.selectLangService = selectLangService;
this.userService = userService;
this.router = router;
this.redirectService = redirectService;
}
setLang(lang) {
this.selectLangService.setLanguage(lang);
}
activeLang(lang) {
return this.translate.currentLang === lang;
}
logout() {
this.userService.logout().subscribe(() => {
if (!!this.toolbarConfig.loginUrl && this.toolbarConfig.loginUrl !== "") {
this.router.navigate([this.toolbarConfig.loginUrl]);
}
else {
this.router.navigate([this.redirectService.resolveLoginPath()]);
}
});
}
profile() {
this.router.navigate([this.toolbarConfig.profileUrl]);
}
get loggedUser() {
return this.userService.user;
}
isImpersonating() {
return this.loggedUser.isImpersonating();
}
getToolbarTitle() {
return this.selectLangService.getLanguage() in this.toolbarConfig.toolbarName.translations
? this.toolbarConfig.toolbarName.translations[this.selectLangService.getLanguage()]
: this.toolbarConfig.toolbarName.defaultValue;
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractToolbarComponent, deps: [{ token: i1.TranslateService }, { token: i2.LanguageService }, { token: i3.UserService }, { token: i4.Router }, { token: i5.RedirectService }], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: AbstractToolbarComponent, selector: "ncc-abstract-toolbar", inputs: { toolbarConfig: "toolbarConfig" }, ngImport: i0, template: '', isInline: true });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AbstractToolbarComponent, decorators: [{
type: Component,
args: [{
selector: 'ncc-abstract-toolbar',
template: ''
}]
}], ctorParameters: () => [{ type: i1.TranslateService }, { type: i2.LanguageService }, { type: i3.UserService }, { type: i4.Router }, { type: i5.RedirectService }], propDecorators: { toolbarConfig: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL3Rvb2xiYXIvYWJzdHJhY3QtdG9vbGJhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7QUFhL0MsTUFBTSxPQUFnQix3QkFBd0I7SUFpQnBCO0lBQXVDO0lBQ3ZDO0lBQW9DO0lBQTBCO0lBZjdFLGFBQWEsR0FBa0I7UUFDbEMsY0FBYyxFQUFFLEtBQUs7UUFDckIsZUFBZSxFQUFFLEtBQUs7UUFDdEIsYUFBYSxFQUFFLEtBQUs7UUFDcEIsYUFBYSxFQUFFLElBQUk7UUFDbkIsV0FBVyxFQUFFO1lBQ1QsWUFBWSxFQUFFLFNBQVM7WUFDdkIsWUFBWSxFQUFFLEVBQUU7U0FDbkI7UUFDRCxXQUFXLEVBQUUsbUNBQW1DO1FBQ2hELFVBQVUsRUFBRSxTQUFTO1FBQ3JCLFFBQVEsRUFBRSxFQUFFO0tBQ2YsQ0FBQztJQUVGLFlBQXNCLFNBQTJCLEVBQVksaUJBQWtDLEVBQ3pFLFdBQXdCLEVBQVksTUFBYyxFQUFZLGVBQWdDO1FBRDlGLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQVksc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFpQjtRQUN6RSxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUFZLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBWSxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7SUFDcEgsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFZO1FBQ2hCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFZO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDO0lBQy9DLENBQUM7SUFFTSxNQUFNO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxLQUFLLEVBQUUsRUFBRTtnQkFDckUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7YUFDdkQ7aUJBQU07Z0JBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQ25FO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sT0FBTztRQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDO0lBRU0sZUFBZTtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDN0MsQ0FBQztJQUVNLGVBQWU7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsWUFBWTtZQUN0RixDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuRixDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDO0lBQ3RELENBQUM7d0dBdkRpQix3QkFBd0I7NEZBQXhCLHdCQUF3Qix3R0FGaEMsRUFBRTs7NEZBRU0sd0JBQXdCO2tCQUo3QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFFBQVEsRUFBRSxFQUFFO2lCQUNmO2dNQUlVLGFBQWE7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSW5wdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7TGFuZ3VhZ2VTZXJ2aWNlfSBmcm9tICcuLi90cmFuc2xhdGUvbGFuZ3VhZ2Uuc2VydmljZSc7XG5pbXBvcnQge1Rvb2xiYXJDb25maWd9IGZyb20gJy4vdG9vbGJhci1jb25maWcnO1xuaW1wb3J0IHtVc2VyU2VydmljZX0gZnJvbSAnLi4vdXNlci9zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xuaW1wb3J0IHtSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1VzZXJ9IGZyb20gJy4uL3VzZXIvbW9kZWxzL3VzZXInO1xuaW1wb3J0IHtSZWRpcmVjdFNlcnZpY2V9IGZyb20gJy4uL3JvdXRpbmcvcmVkaXJlY3Qtc2VydmljZS9yZWRpcmVjdC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtdG9vbGJhcicsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VG9vbGJhckNvbXBvbmVudCB7XG5cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB0b29sYmFyQ29uZmlnOiBUb29sYmFyQ29uZmlnID0ge1xuICAgICAgICBwcm9maWxlRW5hYmxlZDogZmFsc2UsXG4gICAgICAgIGxhbmd1YWdlRW5hYmxlZDogZmFsc2UsXG4gICAgICAgIGxvZ291dEVuYWJsZWQ6IGZhbHNlLFxuICAgICAgICBzaW1wbGVUb29sYmFyOiB0cnVlLFxuICAgICAgICB0b29sYmFyTmFtZToge1xuICAgICAgICAgICAgZGVmYXVsdFZhbHVlOiAnTmV0Z3JpZicsXG4gICAgICAgICAgICB0cmFuc2xhdGlvbnM6IHt9XG4gICAgICAgIH0sXG4gICAgICAgIHRvb2xiYXJMb2dvOiAnYXNzZXRzL2ltZy9uZXRncmlmX2Z1bGxfd2hpdGUuc3ZnJyxcbiAgICAgICAgcHJvZmlsZVVybDogJ3Byb2ZpbGUnLFxuICAgICAgICBsb2dpblVybDogJydcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSwgcHJvdGVjdGVkIHNlbGVjdExhbmdTZXJ2aWNlOiBMYW5ndWFnZVNlcnZpY2UsXG4gICAgICAgICAgICAgICAgcHJvdGVjdGVkIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSwgcHJvdGVjdGVkIHJvdXRlcjogUm91dGVyLCBwcm90ZWN0ZWQgcmVkaXJlY3RTZXJ2aWNlOiBSZWRpcmVjdFNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBzZXRMYW5nKGxhbmc6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdExhbmdTZXJ2aWNlLnNldExhbmd1YWdlKGxhbmcpO1xuICAgIH1cblxuICAgIGFjdGl2ZUxhbmcobGFuZzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyYW5zbGF0ZS5jdXJyZW50TGFuZyA9PT0gbGFuZztcbiAgICB9XG5cbiAgICBwdWJsaWMgbG9nb3V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnVzZXJTZXJ2aWNlLmxvZ291dCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoISF0aGlzLnRvb2xiYXJDb25maWcubG9naW5VcmwgJiYgdGhpcy50b29sYmFyQ29uZmlnLmxvZ2luVXJsICE9PSBcIlwiKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMudG9vbGJhckNvbmZpZy5sb2dpblVybF0pO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy5yZWRpcmVjdFNlcnZpY2UucmVzb2x2ZUxvZ2luUGF0aCgpXSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBwcm9maWxlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGhpcy50b29sYmFyQ29uZmlnLnByb2ZpbGVVcmxdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxvZ2dlZFVzZXIoKTogVXNlciB7XG4gICAgICAgIHJldHVybiB0aGlzLnVzZXJTZXJ2aWNlLnVzZXI7XG4gICAgfVxuXG4gICAgcHVibGljIGlzSW1wZXJzb25hdGluZygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubG9nZ2VkVXNlci5pc0ltcGVyc29uYXRpbmcoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VG9vbGJhclRpdGxlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnNlbGVjdExhbmdTZXJ2aWNlLmdldExhbmd1YWdlKCkgaW4gdGhpcy50b29sYmFyQ29uZmlnLnRvb2xiYXJOYW1lLnRyYW5zbGF0aW9uc1xuICAgICAgICAgICAgPyB0aGlzLnRvb2xiYXJDb25maWcudG9vbGJhck5hbWUudHJhbnNsYXRpb25zW3RoaXMuc2VsZWN0TGFuZ1NlcnZpY2UuZ2V0TGFuZ3VhZ2UoKV1cbiAgICAgICAgICAgIDogdGhpcy50b29sYmFyQ29uZmlnLnRvb2xiYXJOYW1lLmRlZmF1bHRWYWx1ZTtcbiAgICB9XG59XG4iXX0=