Files
test_task_crm/frontend/src/components/ui/toaster.tsx
T
Artem Kashaev ede064cc11 feat: add initial implementation of Kitchen CRM with authentication and dashboard features
- Create global styles and theme management
- Implement app shell layout with sidebar navigation
- Add authentication layout and pages for login and registration
- Develop dashboard page with placeholder content
- Introduce routing guards for guest-only and authenticated routes
- Set up Zustand for state management of authentication and theme
- Create API types and structures for CRM entities
- Configure Vite with PWA support and Tailwind CSS
2025-12-01 12:29:02 +05:00

25 lines
850 B
TypeScript

import { Fragment } from 'react'
import { Toast, ToastClose, ToastDescription, ToastProvider, ToastTitle, ToastViewport } from '@/components/ui/toast'
import { useToast } from '@/components/ui/use-toast'
export const Toaster = () => {
const { toasts, dismiss } = useToast()
return (
<ToastProvider swipeDirection="right">
<ToastViewport />
{toasts.map(({ id, title, description, action, ...toast }) => (
<Toast key={id} onOpenChange={(open) => !open && dismiss(id)} {...toast}>
<div className="grid gap-1">
{title ? <ToastTitle>{title}</ToastTitle> : null}
{description ? <ToastDescription>{description}</ToastDescription> : null}
</div>
{action ? <Fragment>{action}</Fragment> : null}
<ToastClose />
</Toast>
))}
</ToastProvider>
)
}