@brickslab/ui-web
Barre d'onglets contrôlée — reçoit value et onChange du parent. 3 variantes visuelles (underline, pills, boxed), 3 tailles, support icônes, fullWidth et onglet disabled. TabPanel est un wrapper qui affiche son contenu uniquement quand value === activeValue.
Aperçu
variant underline (défaut) avec TabPanel
Variantes
underline · pills · boxed
Tailles
sm · md (défaut) · lg
Full Width
fullWidth — onglets répartis sur toute la largeur
Avec icônes
prop icon dans TabItem — accepte React.ReactNode
Tab désactivé
disabled: true sur un TabItem — bloque le clic
Props — Tabs
| Prop | Type | Défaut | Requis | Description |
|---|---|---|---|---|
tabs | TabItem[] | — | ✓ | Liste des onglets — chaque item a value, label, icon? et disabled?. |
value | string | — | ✓ | Valeur de l'onglet actif — contrôlé par le parent. |
onChange | (value: string) => void | — | ✓ | Callback appelé avec la valeur de l'onglet cliqué. |
variant | "underline" | "pills" | "boxed" | "underline" | — | Style visuel de la barre d'onglets. |
size | "sm" | "md" | "lg" | "md" | — | Taille des onglets (typographie + padding). |
fullWidth | boolean | false | — | Les onglets occupent toute la largeur disponible à parts égales. |
Props — TabPanel
| Prop | Type | Défaut | Requis | Description |
|---|---|---|---|---|
value | string | — | ✓ | Valeur de ce panneau. |
activeValue | string | — | ✓ | Valeur de l'onglet actif — panneau rendu seulement si value === activeValue. |
children | React.ReactNode | — | ✓ | Contenu du panneau. |