feat(ui): toast bildirim sistemini ekle
Toast bileşeni ve store oluşturuldu. Ayarlar sayfasındaki işlem bildirimleri yeni sistemle gösterilmeye başlandı.
This commit is contained in:
24
client/src/stores/toastStore.js
Normal file
24
client/src/stores/toastStore.js
Normal file
@@ -0,0 +1,24 @@
|
||||
import { writable } from 'svelte/store';
|
||||
|
||||
export const toast = writable({
|
||||
message: null,
|
||||
type: 'success', // success, error, info
|
||||
visible: false
|
||||
});
|
||||
|
||||
let toastTimeout = null;
|
||||
|
||||
export function showToast(message, type = 'success', duration = 3000) {
|
||||
// Önceki toast'ı temizle
|
||||
if (toastTimeout) {
|
||||
clearTimeout(toastTimeout);
|
||||
}
|
||||
|
||||
// Yeni toast'ı göster
|
||||
toast.update({ message, type, visible: true });
|
||||
|
||||
// Belirli süre sonra gizle
|
||||
toastTimeout = setTimeout(() => {
|
||||
toast.update({ message: null, type: 'success', visible: false });
|
||||
}, duration);
|
||||
}
|
||||
Reference in New Issue
Block a user