UNPKG

@funidata/ngx-fudis

Version:

Funidata Design System.

60 lines (59 loc) 2.44 kB
import { EventEmitter, OnChanges } from '@angular/core'; import { FudisComponentChanges, FudisLanguageAbbr } from '../../types/miscellaneous'; import { FudisTranslationService } from '../../services/translation/translation.service'; import { PopoverApiDirective } from '../../directives/popover/popover-api.directive'; import { FudisIdService } from '../../services/id/id.service'; import { BehaviorSubject } from 'rxjs'; import * as i0 from "@angular/core"; type LanguageLabel = { key: FudisLanguageAbbr; variant: 'standard' | 'missing'; }; type LanguageLabelArray = LanguageLabel[]; export declare class LanguageBadgeGroupComponent extends PopoverApiDirective implements OnChanges { protected _translationService: FudisTranslationService; private _idService; constructor(_translationService: FudisTranslationService, _idService: FudisIdService); /** * Required list of translated languages for Language Badge Group */ translatedLanguages: FudisLanguageAbbr[]; /** * Output Language abbreviation of clicked Badge */ handleClick: EventEmitter<FudisLanguageAbbr | null>; /** * App language from service */ private _currentAppLang; /** * App configured selectable languages from service */ private _selectableAppLanguages; /** * Generated HTML id for the group */ protected _id: string; /** * Translation for aria-label */ protected _groupAriaLabel: BehaviorSubject<string>; /** * Internal variable for matching languages and label texts */ protected _languageLabels: BehaviorSubject<LanguageLabelArray>; protected _selectedLanguage: FudisLanguageAbbr | null; /** * Set selected language and emits clicked language */ protected _updateLanguage(value: FudisLanguageAbbr | null): void; /** * Creates an array to loop in template of wanted Language Badges */ private _setLanguageOptions; private _determineSelectedBadge; ngOnChanges(changes: FudisComponentChanges<LanguageBadgeGroupComponent>): void; static ɵfac: i0.ɵɵFactoryDeclaration<LanguageBadgeGroupComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<LanguageBadgeGroupComponent, "fudis-language-badge-group", never, { "translatedLanguages": { "alias": "translatedLanguages"; "required": true; }; }, { "handleClick": "handleClick"; }, never, never, false, never>; } export {};