fix(toasts) : auto-dismiss des notifications d'erreur apres 8 secondes

Les toasts d'erreur etaient persistants (duration force a 0) et restaient
affiches jusqu'a fermeture manuelle, ce qui pouvait empiler des messages
obsoletes a l'ecran. Aligne le comportement sur les autres types : duree
par defaut 8s (plus que warning a 6s pour laisser le temps de lire). Une
erreur critique peut toujours etre rendue persistante en passant
explicitement showError(msg, 0).
This commit is contained in:
Matthieu
2026-05-06 16:51:08 +02:00
parent 53d4d5768b
commit 27d51ffdb1

View File

@@ -33,7 +33,7 @@ export function useToast() {
message, message,
type, type,
visible: true, visible: true,
duration: type === 'error' ? 0 : duration, duration,
} }
if (toasts.value.length >= MAX_TOASTS) { if (toasts.value.length >= MAX_TOASTS) {
@@ -42,8 +42,7 @@ export function useToast() {
toasts.value.push(toast) toasts.value.push(toast)
// Only auto-dismiss non-error toasts if (duration > 0) {
if (type !== 'error' && duration > 0) {
setTimeout(() => { setTimeout(() => {
removeToast(id) removeToast(id)
}, duration) }, duration)
@@ -56,8 +55,8 @@ export function useToast() {
return showToast(message, 'success', duration) return showToast(message, 'success', duration)
} }
const showError = (message: string): number => { const showError = (message: string, duration = 8000): number => {
return showToast(message, 'error', 0) return showToast(message, 'error', duration)
} }
const showWarning = (message: string, duration = 6000): number => { const showWarning = (message: string, duration = 6000): number => {