InputCard
On a parfois besoin d'utiliser un composant plus visuel qu'un simple groupe de checkbox ou de radios pour proposer un choix à l'utilisateur. L'InputCard répond à ce besoin en proposant un bloc large (particulièrement adapté au tap sur mobile) contenant texte et icône au lieu d'un simple label.
L'InputCard peut être utilisé par exemple pour un choix entre plusieurs réglages, options ou fonctionnalités.
#
Checkbox ou Radio ?Props | Valeurs autorisées | Valeur par défaut |
---|---|---|
type | radio , checkbox | radio |
L'input
créé dans l'InputCard peut être de type radio
ou checkbox
en fonction de la nécessité d'avoir plusieurs options sélectionnables ou non.
important
Si c'est un radio
, n'oubliez pas de faire passer un name
identique à tous les InputCard du même groupe !
#
Taille et styleProps | Valeurs autorisées | Valeur par défaut |
---|---|---|
blockSize | md , lg | lg |
- Le
blockSize
lg
définit des InputCard carrés de 150px * 150px (ou 120px * 120px sur des écrans inférieurs àtheme.screen.min.sm
). - Le
blockSize
md
définit des InputCard de la taille de leur contenu, ce qui les rend moins hauts et parfois moins larges que leslg
.
#
Autres propsProps | Type ou valeurs autorisées | Valeur par défaut |
---|---|---|
id | string | ⚠️ Requis |
text | string OR object | Aucune |
- L'
id
est obligatoire et doit être unique dans toute la page, car il permet au<label>
de communiquer avec l'<input>
. - Le
text
définit le texte à afficher dans l'InputCard sous l'icône, lequel doit être passé commechildren
. L'icône comme letext
sont facultatifs, mais il est fortement conseillé de toujours définir untext
pour des raisons d'accessibilité. - Toutes les autres props de l'InputCard sont passées directement à son
input
afin de permettre de lui ajouter tous les attributs nécessaires (name
ouchecked
, par exemple).
#
Exempleslg
#
InputCard radio Il s'agit de la version par défaut de ce composant.