Contenu et chargement de Input
Input reprend le même contrat que Badge pour les contenus latéraux et le chargement.
tsx
<Input left="@" right=".com" placeholder="entreprise" />
<Input
loading
loadingLabel="Validation en cours"
spinnerProps={{ variant: "dots" }}
right={<SearchIcon />}
/>Props
| Prop | Type | Rôle |
|---|---|---|
left | ReactNode | Contenu avant la zone de saisie |
right | ReactNode | Contenu après la zone de saisie |
loading | boolean | Remplace left par un spinner et active aria-busy |
loadingLabel | string | Libellé accessible du chargement |
spinnerProps | Omit<SpinnerProps, "label"> | Personnalise le spinner |
Sans contenu latéral et sans chargement, aucun wrapper n'est rendu. Le ref et className ciblent toujours l'élément <input>. L'état loading n'empêche pas la saisie : il signale une opération asynchrone sans imposer une désactivation.