@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).
86 lines (85 loc) • 2.87 kB
TypeScript
import { DsfrPosition } from './position.model';
import { DsfrSize } from './size.model';
/**
* Décrit le modèle d'un bouton.
*/
export interface DsfrButton {
/** Libellé du bouton. */
label: string;
/** Type du button, 'button' par défaut. */
type?: DsfrButtonType;
/** Message du tooltip (attribut title) du bouton. */
tooltipMessage?: string;
/** Style du bouton, 'primary' par défaut. */
variant?: DsfrButtonVariant;
/** Taille du bouton, 'MD' par défaut */
size?: DsfrSize;
/** Nom de l'icône. */
icon?: string;
/** Position de l'icône définie, 'left' par défaut. */
iconPosition?: DsfrPosition;
/** Permet de désactiver le bouton d'action, 'false' par défaut. */
disabled?: boolean;
/** Permet de passer le libellé du bouton en majuscules, 'false' par défaut. */
uppercase?: boolean;
/** Permet d'activer un visuel dénotant un "chargement" (busy), 'false' par défaut. */
loader?: boolean;
/** Permet d'inverser le contraste du marqueur de focus, 'false' par défaut. */
invertedOutlineContrast?: boolean;
/**Permet d'identifier le button. */
id?: string;
/** [accessibilité] Spécifie le libellé qui sera retranscrit par les narrateurs d'écran. */
ariaLabel?: string;
/** [accessibilité] attribut aria-controls utilisé pour la manipulation d'une modale par exemple. */
ariaControls?: string;
/** [accessibilité] attribut aria-pressed indiquant l'état du bouton (cas d'un toggle) */
ariaPressed?: string;
}
/**
* Définit les types de bouton supportés par le composant `dsfr-button`.
*/
export declare enum DsfrButtonTypeConst {
/**
* A utiliser pour un bouton de soumission de formulaire.
*/
SUBMIT = "submit",
/**
* A utiliser pour un bouton de réinitialisation de formulaire.
*/
RESET = "reset",
/**
* A utiliser pour un bouton d'action sur la page courante.
*/
BUTTON = "button"
}
/**
* Type union correspondant aux valeurs de l'enum {@link DsfrButtonTypeConst}.
*
* @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button
*/
export type DsfrButtonType = `${DsfrButtonTypeConst}`;
/**
* Définit les variantes supportées par le composant `dsfr-button`.
*/
export declare enum DsfrButtonVariantConst {
/**
* A utiliser pour un bouton primaire.
*/
PRIMARY = "primary",
/**
* A utiliser pour un bouton secondaire.
*/
SECONDARY = "secondary",
/**
* A utiliser pour un bouton tertiaire.
*/
TERTIARY = "tertiary",
/**
* A utiliser pour un bouton tertiaire sans bordure.
*/
TERTIARY_NO_OUTLINE = "tertiary-no-outline"
}
/**
* Type union correspondant aux valeurs de l'enum {@link DsfrButtonVariantConst}.
*/
export type DsfrButtonVariant = `${DsfrButtonVariantConst}`;