@netgrif/components
Version:
Netgrif Application Engine frontend Angular components
25 lines • 8.45 kB
JavaScript
import { Component } from '@angular/core';
import { AbstractLanguageSelectorComponent } from '@netgrif/components-core';
import * as i0 from "@angular/core";
import * as i1 from "@netgrif/components-core";
import * as i2 from "@angular/common";
import * as i3 from "@ngbracket/ngx-layout";
import * as i4 from "@angular/material/button";
import * as i5 from "@angular/material/menu";
import * as i6 from "@ngx-translate/core";
export class LanguageSelectorComponent extends AbstractLanguageSelectorComponent {
_langService;
_languageIconsService;
constructor(_langService, _languageIconsService) {
super(_langService, _languageIconsService);
this._langService = _langService;
this._languageIconsService = _languageIconsService;
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LanguageSelectorComponent, deps: [{ token: i1.LanguageService }, { token: i1.LanguageIconsService }], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: LanguageSelectorComponent, selector: "nc-language-selector", usesInheritance: true, ngImport: i0, template: "<mat-menu #languageMenu=\"matMenu\">\n <button *ngFor=\"let lang of getLangKeys()\" mat-menu-item (click)=\"setLang(lang)\" fxLayout=\"row\" class=\"quick-panel-menu\"\n fxLayoutAlign=\"start center\" [style.backgroundColor]=\"lang === getCurrentLang() ? 'rgba(253,151,31,0.1)':''\">\n <div [innerHTML]=\"getLangIcon(lang)\" class=\"icon-small-dimensions\"></div>\n <span class=\"margin-left-default\">{{'toolbar.menu.' + lang | translate}}</span>\n </button>\n</mat-menu>\n\n<button mat-icon-button [matMenuTriggerFor]=\"languageMenu\">\n <div [innerHTML]=\"getLangIcon(getCurrentLang())\"\n alt=\"Country icon\" class=\"icon-medium-dimensions\">\n </div>\n</button>\n", styles: [".icon-small-dimensions{height:20px;line-height:normal}.margin-left-default{margin-left:8px}.icon-medium-dimensions{height:20px;line-height:normal}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "component", type: i4.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "component", type: i5.MatMenu, selector: "mat-menu", inputs: ["backdropClass", "aria-label", "aria-labelledby", "aria-describedby", "xPosition", "yPosition", "overlapTrigger", "hasBackdrop", "class", "classList"], outputs: ["closed", "close"], exportAs: ["matMenu"] }, { kind: "component", type: i5.MatMenuItem, selector: "[mat-menu-item]", inputs: ["role", "disabled", "disableRipple"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i5.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData", "matMenuTriggerRestoreFocus"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: LanguageSelectorComponent, decorators: [{
type: Component,
args: [{ selector: 'nc-language-selector', template: "<mat-menu #languageMenu=\"matMenu\">\n <button *ngFor=\"let lang of getLangKeys()\" mat-menu-item (click)=\"setLang(lang)\" fxLayout=\"row\" class=\"quick-panel-menu\"\n fxLayoutAlign=\"start center\" [style.backgroundColor]=\"lang === getCurrentLang() ? 'rgba(253,151,31,0.1)':''\">\n <div [innerHTML]=\"getLangIcon(lang)\" class=\"icon-small-dimensions\"></div>\n <span class=\"margin-left-default\">{{'toolbar.menu.' + lang | translate}}</span>\n </button>\n</mat-menu>\n\n<button mat-icon-button [matMenuTriggerFor]=\"languageMenu\">\n <div [innerHTML]=\"getLangIcon(getCurrentLang())\"\n alt=\"Country icon\" class=\"icon-medium-dimensions\">\n </div>\n</button>\n", styles: [".icon-small-dimensions{height:20px;line-height:normal}.margin-left-default{margin-left:8px}.icon-medium-dimensions{height:20px;line-height:normal}\n"] }]
}], ctorParameters: () => [{ type: i1.LanguageService }, { type: i1.LanguageIconsService }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFuZ3VhZ2Utc2VsZWN0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzL3NyYy9saWIvbmF2aWdhdGlvbi9xdWljay1wYW5lbC9jb21wb25lbnRzL2xhbmd1YWdlLXNlbGVjdG9yL2xhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy9zcmMvbGliL25hdmlnYXRpb24vcXVpY2stcGFuZWwvY29tcG9uZW50cy9sYW5ndWFnZS1zZWxlY3Rvci9sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBQyxpQ0FBaUMsRUFBd0MsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7QUFPbEgsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGlDQUFpQztJQUN0RDtJQUF5QztJQUEvRCxZQUFzQixZQUE2QixFQUFZLHFCQUEyQztRQUN0RyxLQUFLLENBQUMsWUFBWSxFQUFFLHFCQUFxQixDQUFDLENBQUM7UUFEekIsaUJBQVksR0FBWixZQUFZLENBQWlCO1FBQVksMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFzQjtJQUUxRyxDQUFDO3dHQUhRLHlCQUF5Qjs0RkFBekIseUJBQXlCLG1GQ1J0Qyw0c0JBYUE7OzRGRExhLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDSSxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0Fic3RyYWN0TGFuZ3VhZ2VTZWxlY3RvckNvbXBvbmVudCwgTGFuZ3VhZ2VTZXJ2aWNlLCBMYW5ndWFnZUljb25zU2VydmljZX0gZnJvbSAnQG5ldGdyaWYvY29tcG9uZW50cy1jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduYy1sYW5ndWFnZS1zZWxlY3RvcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2xhbmd1YWdlLXNlbGVjdG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9sYW5ndWFnZS1zZWxlY3Rvci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIExhbmd1YWdlU2VsZWN0b3JDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdExhbmd1YWdlU2VsZWN0b3JDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfbGFuZ1NlcnZpY2U6IExhbmd1YWdlU2VydmljZSwgcHJvdGVjdGVkIF9sYW5ndWFnZUljb25zU2VydmljZTogTGFuZ3VhZ2VJY29uc1NlcnZpY2UpIHtcbiAgICAgICAgc3VwZXIoX2xhbmdTZXJ2aWNlLCBfbGFuZ3VhZ2VJY29uc1NlcnZpY2UpO1xuICAgIH1cblxufVxuIiwiPG1hdC1tZW51ICNsYW5ndWFnZU1lbnU9XCJtYXRNZW51XCI+XG4gICAgPGJ1dHRvbiAqbmdGb3I9XCJsZXQgbGFuZyBvZiBnZXRMYW5nS2V5cygpXCIgbWF0LW1lbnUtaXRlbSAoY2xpY2spPVwic2V0TGFuZyhsYW5nKVwiIGZ4TGF5b3V0PVwicm93XCIgY2xhc3M9XCJxdWljay1wYW5lbC1tZW51XCJcbiAgICAgICAgICAgIGZ4TGF5b3V0QWxpZ249XCJzdGFydCBjZW50ZXJcIiBbc3R5bGUuYmFja2dyb3VuZENvbG9yXT1cImxhbmcgPT09IGdldEN1cnJlbnRMYW5nKCkgPyAncmdiYSgyNTMsMTUxLDMxLDAuMSknOicnXCI+XG4gICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJnZXRMYW5nSWNvbihsYW5nKVwiIGNsYXNzPVwiaWNvbi1zbWFsbC1kaW1lbnNpb25zXCI+PC9kaXY+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwibWFyZ2luLWxlZnQtZGVmYXVsdFwiPnt7J3Rvb2xiYXIubWVudS4nICsgbGFuZyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuPC9tYXQtbWVudT5cblxuPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cImxhbmd1YWdlTWVudVwiPlxuICAgIDxkaXYgW2lubmVySFRNTF09XCJnZXRMYW5nSWNvbihnZXRDdXJyZW50TGFuZygpKVwiXG4gICAgICAgICBhbHQ9XCJDb3VudHJ5IGljb25cIiBjbGFzcz1cImljb24tbWVkaXVtLWRpbWVuc2lvbnNcIj5cbiAgICA8L2Rpdj5cbjwvYnV0dG9uPlxuIl19