DocsComposantsAlert
Alert
A callout for important messages.
3 fichiers
<pb-ui.alert class="max-w-md">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"/><path d="m9 12 2 2 4-4"/></svg>
<pb-ui.alert-title>Modifications enregistrées</pb-ui.alert-title>
<pb-ui.alert-description>Votre profil a bien été mis à jour.</pb-ui.alert-description>
</pb-ui.alert>Installation
pyblade-ui add alert- Copiez ces fichiers dans votre projetcomponents/ui/alert.html
@props({'variant': 'default'}) <div role="alert" data-slot="alert" {{ attributes.cn( "relative grid w-full grid-cols-[0_1fr] content-start items-start gap-y-0.5 rounded-lg border px-4 py-3 text-sm has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] has-[>svg]:gap-x-3 [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current", { 'default': 'bg-card text-card-foreground', 'destructive': 'bg-card text-destructive [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90', 'success': 'bg-card text-success *:data-[slot=alert-description]:text-success/90', 'warning': 'bg-card text-warning *:data-[slot=alert-description]:text-warning/90', }[variant], ) }}>{{ slot }}</div>components/ui/alert_title.html<div data-slot="alert-title" {{ attributes.cn("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight") }}>{{ slot }}</div>components/ui/alert_description.html<div data-slot="alert-description" {{ attributes.cn("col-start-2 grid justify-items-start gap-1 text-sm text-muted-foreground [&_p]:leading-relaxed") }}>{{ slot }}</div> - Adaptez le chemin à votre projet
Le dossier
componentsest celui déclaré danspyblade.toml.
Utilisation
Les balises <pb-ui.alert> <pb-ui.alert-title> <pb-ui.alert-description> sont disponibles dans tous vos templates.
<pb-ui.alert variant="destructive">
<pb-ui.alert-title>Error</pb-ui.alert-title>
<pb-ui.alert-description>Your session has expired.</pb-ui.alert-description>
</pb-ui.alert>Exemples
Variantes
<div class="grid w-full max-w-md gap-3">
<pb-ui.alert variant="destructive">
<pb-ui.alert-title>Erreur</pb-ui.alert-title>
<pb-ui.alert-description>Votre session a expiré. Reconnectez-vous.</pb-ui.alert-description>
</pb-ui.alert>
<pb-ui.alert variant="warning">
<pb-ui.alert-title>Attention</pb-ui.alert-title>
<pb-ui.alert-description>Votre quota est presque atteint.</pb-ui.alert-description>
</pb-ui.alert>
<pb-ui.alert variant="success">
<pb-ui.alert-title>Succès</pb-ui.alert-title>
<pb-ui.alert-description>Le paiement a été accepté.</pb-ui.alert-description>
</pb-ui.alert>
</div>Props
| Prop | Défaut |
|---|---|
| variant | 'default' |
Tout autre attribut (class, id, x-on:click, hx-post…) est transmis à l'élément racine ; vos classes Tailwind l'emportent sur celles du composant.