UNPKG

@edugouvfr/ngx-dsfr

Version:

NgxDsfr est un portage Angular des éléments d'interface du Système de Design de l'État Français (DSFR).

151 lines (150 loc) 6.67 kB
import { AfterViewInit, ElementRef, EventEmitter, OnInit, Renderer2, TemplateRef } from '@angular/core'; import { DsfrLink, I18nService } from '../../shared'; import { DsfrConfig } from '../../shared/config/config.model'; import { DsfrHeaderMenuItem, DsfrHeaderTranslate } from './header.model'; import * as i0 from "@angular/core"; export declare class DsfrHeaderComponent implements OnInit, AfterViewInit { private config; i18n: I18nService; private renderer; /**@internal */ toolLinksMobile: ElementRef; /**@internal */ toolLinks: ElementRef; /**@internal */ headerTools: TemplateRef<any>; /**@internal */ headerToolsMobile: TemplateRef<any>; /**@internal */ translateComponent: ElementRef; /** * Boolean pour afficher le tag Beta (pour un site en beta). */ beta: boolean; /** * Identifiant de la navigation principale, généré par défaut */ navigationId: string; /** * Chemin vers le répertoire exposant les pictogrammes illustratifs DSFR. */ artworkDirPath: string; /** * Label associé au bloc marque (Marianne). Respectez la structure avec les <br>. * (Ministère, gouvernement, république française) */ logoLabel: string; /** * Url du lien 'retour accueil' du logo de la Marianne. */ logoLink: string; /** * Url du lien 'retour accueil' du logo de la Marianne. */ logoTooltipMessage: string; /** Path pour src d'image d'illustration. */ operatorImagePath: string; /** * Text alternatif à utiliser uniquement si l'image à une information à passer. */ operatorImageAlt: string; /** Boolean pour passer le logo opérateur en mode vertical. */ operatorImageVertical: boolean; /** Nom du service. */ serviceTitle: string; /** Tagline du service. */ serviceTagline: string; /** Tableau d'items du menu. */ menu: DsfrHeaderMenuItem[]; /** * Permet d'afficher la barre de recherche. */ searchBar: boolean; /** * Permet d'afficher le selecteur de langue pour l'internationalisation. * * @see DsfrHeaderTranslate */ translate: DsfrHeaderTranslate; /** Renvoi la valeur de l'input de la barre de recherche au changement. */ readonly searchChange: EventEmitter<string>; /** Renvoi la valeur de l'input de la barre de recherche au clic sur rechercher. */ readonly searchSelect: EventEmitter<string>; /**Emet l'évènement Event du DOM à la sélection d'un lien */ readonly linkSelect: EventEmitter<DsfrLink>; /** Evenement émis au changement de langue (si showTranslate). Il contient le code de la langue. */ readonly langChange: EventEmitter<string>; /** @internal */ searchInputId: string; /** * Nombre maximum de liens d'accès rapides (3) * * @internal */ maxToolsLinks: number; /** * @internal */ _useDeprecatedPictoPath: boolean; /** * @internal */ showDisplay: boolean; private _headerToolsLinks; /** @internal */ constructor(config: DsfrConfig, i18n: I18nService, renderer: Renderer2); get display(): boolean; get headerToolsLinks(): DsfrLink[]; get displayModalId(): string; get pictoPath(): string; /** Affichage du lien 'Paramètre d'affichage' pour gérer les modes clair/sombre. */ set display(value: boolean); /** * Tableau de lien d'accès rapide. * Les icônes acceptés sont ceux du DSFR y compris ceux du tableau `DsfrBtnIcon`. */ set headerToolsLinks(links: DsfrLink[]); /** * Chemin des pictogrammes (du composant display) renseigné par le développeur. * * Note: ce chemin doit permettre de récupérer directement les fichiers SVG suivants : moon.svg, sun.svg, system.svg * * @deprecated Use `artworkDirPath` instead. */ set pictoPath(path: string); /** internal */ ngOnInit(): void; /** internal */ ngAfterViewInit(): void; /** * Fix: evenements non dupliqués par le script DSFR pour les liens (toolslinks) version mobile * On prend la main sur le clic de la div parente en cas de lien 'route' pour envoyer l'event linkSelect * @param event element cliqué * @internal */ onSelectLinkMobile(event: Event): void; /** @internal */ hasToolsLinks(): boolean; /** @internal */ onLink(item: DsfrLink): void; /** @internal */ onSearchSubmit(text: string): void; /** @internal */ onSearchChange(text: string): void; /** @internal */ onLanguageChange(codeLang: string): void; /** @internal */ onMegaMenuClose(item: DsfrHeaderMenuItem): void; /** @internal */ onMenuItemClick(item: DsfrHeaderMenuItem): void; /** @internal */ getCustomClassHeaderToolsLink(item: DsfrLink): string; /** * Dupliquer les liens toolsLinks pour le menu mobile * /!\ interaction script DSFR : le script copie les liens la premiere fois, mais n'écoute pas les changements * Les liens à l'interieur de fr-header__tools-links sont dupliqués dans fr-header__menu-links */ private duplicateToolsLinksMobile; static ɵfac: i0.ɵɵFactoryDeclaration<DsfrHeaderComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<DsfrHeaderComponent, "dsfr-header", never, { "beta": { "alias": "beta"; "required": false; }; "navigationId": { "alias": "navigationId"; "required": false; }; "artworkDirPath": { "alias": "artworkDirPath"; "required": false; }; "logoLabel": { "alias": "logoLabel"; "required": false; }; "logoLink": { "alias": "logoLink"; "required": false; }; "logoTooltipMessage": { "alias": "logoTooltipMessage"; "required": false; }; "operatorImagePath": { "alias": "operatorImagePath"; "required": false; }; "operatorImageAlt": { "alias": "operatorImageAlt"; "required": false; }; "operatorImageVertical": { "alias": "operatorImageVertical"; "required": false; }; "serviceTitle": { "alias": "serviceTitle"; "required": false; }; "serviceTagline": { "alias": "serviceTagline"; "required": false; }; "menu": { "alias": "menu"; "required": false; }; "searchBar": { "alias": "searchBar"; "required": false; }; "translate": { "alias": "translate"; "required": false; }; "display": { "alias": "display"; "required": false; }; "headerToolsLinks": { "alias": "headerToolsLinks"; "required": false; }; "pictoPath": { "alias": "pictoPath"; "required": false; }; }, { "searchChange": "searchChange"; "searchSelect": "searchSelect"; "linkSelect": "linkSelect"; "langChange": "langChange"; }, ["headerTools", "headerToolsMobile"], never, false, never>; }