@brickslab./ui-web
Section hero avec titre, sous-titre et boutons d'action. Trois variants de fond disponibles : simple (défaut), image plein-cadre, ou vidéo en boucle. Un overlay configurable garantit la lisibilité du texte sur les variants media.
Aperçu
bg="simple" (défaut) — align="center" avec CTA et action secondaire
bg="simple" — align="left"
bg="simple" — sans actions secondaires
bg="image" — image plein-cadre avec overlay (overlayOpacity=0.5)
bg="video" — vidéo en boucle avec overlay (overlayColor="#0b1220", overlayOpacity=0.6)
Props
| Prop | Type | Défaut | Requis | Description |
|---|---|---|---|---|
bg | "simple" | "video" | "image" | "simple" | — | Variant de fond. "simple" = pas de media. "image" = image plein-cadre avec overlay. "video" = vidéo en boucle avec overlay. |
src | string | — | — | URL de la ressource media. Requis si bg="image" ou bg="video". |
alt | string | — | — | Texte alternatif de l'image de fond (accessibilité). Utilisé si bg="image". |
videoPoster | string | — | — | Image affichée avant le chargement de la vidéo (attribut poster du tag video). |
overlayOpacity | number | 0.45 | — | Opacité de l'overlay sombre appliqué sur le media (0 à 1). Permet de garantir la lisibilité du texte. |
overlayColor | string | "#000000" | — | Couleur de l'overlay appliqué sur le media. |
title | string | — | ✓ | Titre principal de la section hero. |
subtitle | string | — | — | Sous-titre ou description courte affichée sous le titre. |
ctaLabel | string | — | — | Libellé du bouton d'action principal (CTA). |
onCtaClick | () => void | — | — | Callback déclenché lors du clic sur le bouton CTA principal. |
secondaryLabel | string | — | — | Libellé de l'action secondaire optionnelle. |
onSecondaryClick | () => void | — | — | Callback déclenché lors du clic sur l'action secondaire. |
align | "left" | "center" | "center" | — | Alignement horizontal du contenu de la section hero. |
hoverEffect | boolean | false | — | Active un effet visuel au survol des boutons (brillance sur le CTA, opacity sur le secondaire). |
Override rapide
Tous les paramètres listés dans cette table sont overrideables via les props. Utilisez ce squelette comme point de départ.
<MyComponent
bg="simple"
src="..."
alt="..."
videoPoster="..."
overlayOpacity={0.45}
overlayColor="#000000"
title="..."
subtitle="..."
// +6 autres props disponibles
/>bgsrcaltvideoPosteroverlayOpacityoverlayColortitlesubtitlectaLabelonCtaClicksecondaryLabelonSecondaryClickalignhoverEffectOverride titre/sous-titre: taille + couleur
Exemple cible pour personnaliser la taille et la couleur via les variables CSS (tokens) autour du composant.
<div
style={{
"--fontsize-3xl": "2.25rem",
"--fontsize-xl": "1.125rem",
"--color-fg": "#111827",
"--color-muted": "#4B5563",
"--color-brand": "#CC4A48",
} as React.CSSProperties}
>
<MyComponent
title="Votre titre"
subtitle="Votre sous-titre"
align="left"
/>
</div>