import { AppSidebar } from '@/components/app-sidebar'; import { AppHeader } from '@/components/app-header'; import { type BreadcrumbItem, NavItem, SharedData } from '@/types'; import { type PropsWithChildren, useEffect } from 'react'; import { SidebarInset, SidebarProvider } from '@/components/ui/sidebar'; import { usePage } from '@inertiajs/react'; import { Toaster } from '@/components/ui/sonner'; import { toast } from 'sonner'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { CheckCircle2Icon, CircleXIcon, InfoIcon, TriangleAlertIcon } from 'lucide-react'; export default function Layout({ children, secondNavItems, secondNavTitle, }: PropsWithChildren<{ breadcrumbs?: BreadcrumbItem[]; secondNavItems?: NavItem[]; secondNavTitle?: string; }>) { const page = usePage(); useEffect(() => { if (page.props.flash && page.props.flash.success) { toast(
{page.props.flash.success}
, ); } if (page.props.flash && page.props.flash.error) { toast(
{page.props.flash.error}
, ); } if (page.props.flash && page.props.flash.warning) { toast(
{page.props.flash.warning}
, ); } if (page.props.flash && page.props.flash.info) { toast(
{page.props.flash.info}
, ); } }, [page.props.flash]); const queryClient = new QueryClient(); return ( 0)}>
{children}
); }