@funidata/ngx-fudis
Version:
Funidata Design System.
51 lines (50 loc) • 2.27 kB
TypeScript
import { EventEmitter, OnChanges, OnInit } from '@angular/core';
import { FudisComponentChanges, FudisLanguageAbbr } from '../../../types/miscellaneous';
import { FudisTranslationService } from '../../../services/translation/translation.service';
import { FudisTranslationLanguageBadgeAriaLabel } from '../../../services/translation/translationKeys';
import { FudisIdService } from '../../../services/id/id.service';
import { BehaviorSubject } from 'rxjs';
import * as i0 from "@angular/core";
export declare class LanguageBadgeComponent implements OnChanges, OnInit {
private _translationService;
private _idService;
constructor(_translationService: FudisTranslationService, _idService: FudisIdService);
language: FudisLanguageAbbr;
parentId: string;
selected: boolean;
variant: 'standard' | 'missing';
ariaLabel: string;
/**
* Click handler outputting clicked language abbreviation
*/
handleClick: EventEmitter<FudisLanguageAbbr>;
/**
* Label string of the badge
*/
protected _badgeLabel: BehaviorSubject<string>;
/**
* Internal variable for selected translation aria-label
*/
protected _selectedTranslation: string;
/**
* Internal variable for missing translation aria-label
*/
protected _missingTranslation: string;
protected _labelTranslations: FudisTranslationLanguageBadgeAriaLabel;
/**
* Generated HTML id
*/
protected _id: string;
ngOnInit(): void;
ngOnChanges(changes: FudisComponentChanges<LanguageBadgeComponent>): void;
/**
* Emit badge's language on click
*/
protected _handleLanguageSelect(): void;
/**
* Define correct label for Badge
*/
private _setLabel;
static ɵfac: i0.ɵɵFactoryDeclaration<LanguageBadgeComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<LanguageBadgeComponent, "fudis-language-badge", never, { "language": { "alias": "language"; "required": true; }; "parentId": { "alias": "parentId"; "required": true; }; "selected": { "alias": "selected"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "handleClick": "handleClick"; }, never, never, false, never>;
}