1
0
Fork 0
mirror of https://github.com/seanmorley15/AdventureLog.git synced 2025-07-26 00:09:38 +02:00
AdventureLog/frontend/src/lib/toasts.ts
2024-07-08 11:44:39 -04:00

19 lines
527 B
TypeScript

import { writable } from 'svelte/store';
export const toasts = writable<{ type: any; message: any; id: number }[]>([]);
export const addToast = (type: any, message: any, duration = 5000) => {
const id = Date.now();
toasts.update((currentToasts) => {
return [...currentToasts, { type, message, id, duration }];
});
setTimeout(() => {
removeToast(id);
}, duration);
};
export const removeToast = (id: number) => {
toasts.update((currentToasts) => {
return currentToasts.filter((toast) => toast.id !== id);
});
};