@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).
47 lines (46 loc) • 2.7 kB
TypeScript
import { EventEmitter } from '@angular/core';
import { DsfrPosition } from '../../shared';
import { DsfrMenu, DsfrMenuItem } from './menu.model';
import * as i0 from "@angular/core";
export declare class DsfrSidemenuComponent {
/** Attribut aria-label du menu latéral. */
ariaLabel: string;
/** Id du menu, généré par défaut si non affecté. */
controlId: string;
/** Affiche le menu latéral en version fixe */
sticky: boolean;
/** Affiche le menu latéral en version fixe sur 100% de la hauteur de la page. */
stickyFullHeight: boolean;
/** Le menu latéral est affiché à gauche par défaut mais il est possible de l'afficher à droite. */
position: DsfrPosition;
/** Activer la selection automatique des items et parents (si absence de routerLink) */
autoActive: boolean;
/** Evénement émis suite à la sélection d'un item avec lien */
itemSelect: EventEmitter<DsfrMenuItem>;
/** Duplication des items de menu pour ne pas modifier le modèle menu en entrée */
protected cloneMenuItems: DsfrMenuItem[];
/** Pointeur sur le dernier item sélectionné (permet de le désélectionner lors d'une nouvelle sélection). */
private _prevItemSelected;
private _initialActiveItem;
private _menu;
get menu(): DsfrMenu;
/** Modèle de donnée du menu. */
set menu(value: DsfrMenu);
protected onSelectItem(item: DsfrMenuItem): void;
/** Dupliquer les items de menu pour ne pas modifier le modèle en entrée */
private cloneMenuItem;
/** A la selection d'un item si autoActive :
* - on passe le précédent item sélectionné _prevItemSelected en désactivé ainsi que ses parents (trois niveaux potentiels)
* - nouvel item et ses parents en actif
* - mise a jour de _prevItemSelected
*/
private selectItem;
/** Désactiver ou activer un item et ses noeuds parents */
private activateItem;
/**
* Parcours récursif du menu pour retrouver le parent direct d'un item
*/
private findParent;
static ɵfac: i0.ɵɵFactoryDeclaration<DsfrSidemenuComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<DsfrSidemenuComponent, "dsfr-sidemenu", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "controlId": { "alias": "controlId"; "required": false; }; "sticky": { "alias": "sticky"; "required": false; }; "stickyFullHeight": { "alias": "stickyFullHeight"; "required": false; }; "position": { "alias": "position"; "required": false; }; "autoActive": { "alias": "autoActive"; "required": false; }; "menu": { "alias": "menu"; "required": false; }; }, { "itemSelect": "itemSelect"; }, never, never, true, never>;
}