@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).
49 lines (48 loc) • 1.71 kB
TypeScript
import { IsActiveMatchOptions, NavigationExtras } from '@angular/router';
import { DsfrLinkTarget } from './link-target.model';
/**
* Décrit le modèle d'un lien permettant une navigation.
*/
export interface DsfrNavigation {
/**
* Lien href externe, exclusif avec route et routerLink.
*/
link?: string;
/**
* Modalité d'ouverture du lien.
*/
linkTarget?: DsfrLinkTarget;
/**
* Définit le path interne. Permet de basculer en mode "action".
*
* Exclusif avec les propriétés `link` et `routerLink`.
*/
route?: string;
/**
* Permet d'activer la directive Angular RouterLink en utilisant le path fournit en valeur.
*
* Exclusif avec les propriétés `link` et `route`.
*/
routerLink?: string | string[];
/**
* A utiliser <u>obligatoirement</u> en combinaison avec la propriété {@link DsfrLink#routerLink | routerLink}.
*
* Permet d'indiquer la ou les classes CSS qui seront positionnées par la directive `RouterLink` sur l'élément actif
* courant.
*/
routerLinkActive?: string | string[];
/**
* A utiliser <u>obligatoirement</u> en combinaison avec la propriété {@link DsfrLink#routerLink | routerLink}.
*
* Permet de configurer comment se détermine la route active.
*/
routerLinkActiveOptions?: {
exact: boolean;
} | IsActiveMatchOptions;
/**
* A utiliser <u>obligatoirement</u> en combinaison avec la propriété {@link DsfrLink#routerLink | routerLink}.
*
* Permet de configurer les valeurs additionnelles de navigation pour le routerLink (queryParams, state etc.)
*/
routerLinkExtras?: NavigationExtras;
}