{"version":3,"sources":["../../../src/components/Toast/utils/ToastStore.ts"],"sourcesContent":["import { create } from 'zustand';\n\ntype ToastPosition =\n  | 'top-left'\n  | 'top-center'\n  | 'top-right'\n  | 'bottom-left'\n  | 'bottom-center'\n  | 'bottom-right'\n  | 'default';\n\ntype ToastData = {\n  id: string;\n  title: string;\n  description?: string;\n  variant?: 'solid' | 'outlined';\n  action?: 'warning' | 'success' | 'info';\n  position?: ToastPosition;\n};\n\ntype ToastStore = {\n  toasts: ToastData[];\n  addToast: (toast: Omit<ToastData, 'id'>) => void;\n  removeToast: (id: string) => void;\n};\n\nconst useToastStore = create<ToastStore>((set) => ({\n  toasts: [],\n  addToast: (toast) => {\n    const id = crypto.randomUUID();\n\n    set((state) => ({\n      toasts: [...state.toasts, { id, ...toast }],\n    }));\n  },\n  removeToast: (id) => {\n    set((state) => ({\n      toasts: state.toasts.filter((t) => t.id !== id),\n    }));\n  },\n}));\n\nexport default useToastStore;\n"],"mappings":";AAAA,SAAS,cAAc;AA0BvB,IAAM,gBAAgB,OAAmB,CAAC,SAAS;AAAA,EACjD,QAAQ,CAAC;AAAA,EACT,UAAU,CAAC,UAAU;AACnB,UAAM,KAAK,OAAO,WAAW;AAE7B,QAAI,CAAC,WAAW;AAAA,MACd,QAAQ,CAAC,GAAG,MAAM,QAAQ,EAAE,IAAI,GAAG,MAAM,CAAC;AAAA,IAC5C,EAAE;AAAA,EACJ;AAAA,EACA,aAAa,CAAC,OAAO;AACnB,QAAI,CAAC,WAAW;AAAA,MACd,QAAQ,MAAM,OAAO,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE;AAAA,IAChD,EAAE;AAAA,EACJ;AACF,EAAE;AAEF,IAAO,qBAAQ;","names":[]}