Groupe d'avatars
Des avatars empilés en rangée, chacun séparé du suivant par un anneau de la couleur de la page. Au-delà d'une limite de votre choix, les autres sont résumés en un seul disque.
Utilisation
Exemples
Débordement
max définit le nombre d'avatars dessinés avant que le reste soit résumé en +N sur un dernier disque.
La taille sur le groupe
size posée sur le groupe s'applique à chaque avatar, disque de débordement compris. Un avatar qui fixe sa propre taille la garde.
Compact
compact posée sur le groupe retire 4px à chaque avatar de la rangée.
Débordement personnalisé
Le slot #overflow remplace le disque +N et reçoit count, le nombre d'avatars masqués.
Avec des infobulles
Chaque avatar peut être enveloppé dans une VTooltip. Le déclencheur doit être focalisable, d'où clickable ici.
API
Props
| Prop | Type | Défaut |
|---|---|---|
max | number | aucune |
| Combien d'avatars montrer avant que les restants ne soient résumés en un seul disque « +X ». Omise, ou mise à 0, tous les avatars sont montrés. | ||
size | AvatarSize'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'md' |
| La taille donnée aux avatars du groupe. Un avatar qui fixe une taille à lui la garde. | ||
compact | boolean | false |
| Applique la densité réduite à chaque avatar du groupe. Contrairement à la taille, elle se cumule : un avatar ne peut pas s'en retirer dans un groupe compact. | ||
ringColor | string | aucune |
| La couleur de l'anneau dessiné autour de chaque disque. Elle vaut par défaut le fond de la page, et c'est ce qui fait lire l'anneau comme un écart entre deux avatars. | ||
label | string | aucune |
Le nom accessible du groupe, par exemple « Membres du projet » : une rangée de visages ne dit pas d'elle-même qui sont ces personnes. Votre propre aria-label ou aria-labelledby l'emporte sur lui. | ||
Slots
| Slot | Type |
|---|---|
default | {} |
| Les VAvatar à empiler. | |
overflow | AvatarGroupOverflowSlotProps |
Remplace le disque « +X » qui représente les avatars au-delà de max. Il reçoit count, le nombre d'avatars masqués. | |
Types
Les types que les tables ci-dessus nomment, écrits comme la librairie les déclare. Ceux qui portent export s'importent depuis vectis-ui pour typer votre propre code ; les autres décrivent la forme de ce qu'un slot fournit.
export interface AvatarGroupOverflowSlotProps {
count: number
}