import { defineStore } from 'pinia'; import { INotification, IAlert } from '../models/notification'; export const useToastStore = defineStore('toast', { state: () => { return { alert: {} as IAlert, notification: {} as INotification, }; }, getters: { getCurrentToast: state => state, }, actions: { // ALERTS alertSuccess(message: string): void { this.alert.message = message; this.alert.icon = 'success'; this.alert.ticks = new Date().getTime(); }, alertError(message: string): void { this.alert.message = message; this.alert.icon = 'error'; this.alert.ticks = new Date().getTime(); }, alertWaring(message: string): void { this.alert.message = message; this.alert.icon = 'warning'; this.alert.ticks = new Date().getTime(); }, alertInfo(message: string): void { this.alert.message = message; this.alert.icon = 'info'; this.alert.ticks = new Date().getTime(); }, alertQuestion(message: string): void { this.alert.message = message; this.alert.icon = 'question'; this.alert.ticks = new Date().getTime(); }, //NOTOFICATIONS notiySuccess(payload: any): void { this.notification.data = payload; this.notification.icon = 'success'; this.notification.ticks = new Date().getTime(); }, notifyError(payload: any): void { this.notification.data = payload; this.notification.icon = 'error'; this.notification.ticks = new Date().getTime(); }, notifyWaring(payload: any): void { this.notification.data = payload; this.notification.icon = 'warning'; this.notification.ticks = new Date().getTime(); }, notifyInfo(payload: any): void { this.notification.data = payload; this.notification.icon = 'info'; this.notification.ticks = new Date().getTime(); }, }, });